PayFanout API reference
    Preparing search index...

    Interface AdapterCapabilities

    interface AdapterCapabilities {
        paymentMethods: PaymentMethodCapability[];
        pspName: string;
        requiresServerCompletion: boolean;
        supportedCurrencies?: string[];
        supportsEventPolling: boolean;
        supportsListing: boolean;
        supportsManualCapture: boolean;
        supportsMultiCapture: boolean;
        supportsPartialRefunds: boolean;
        supportsPaymentMethodVerification: boolean;
        supportsRefunds: boolean;
        supportsSavedPaymentMethods: boolean;
        supportsSessionUpdate: boolean;
    }
    Index
    paymentMethods: PaymentMethodCapability[]
    pspName: string
    requiresServerCompletion: boolean

    True if the PSP flow is client-tokenize-first and the server must finalize the payment via completePayment (Paysafe: true, Stripe: false).

    supportedCurrencies?: string[]

    Hard PSP currency constraints (ISO 4217, uppercase). ABSENT means unrestricted. When present, the router pre-screens candidates by it — without it, a PSP-local currency rejection (invalid_request) aborts the failover cascade before an eligible PSP is tried.

    supportsEventPolling: boolean

    fetchEvents() is available for missed-webhook reconciliation.

    supportsListing: boolean

    listPayments()/listRefunds() reconciliation passthroughs are available.

    supportsManualCapture: boolean

    Authorize now, capture later.

    supportsMultiCapture: boolean

    More than one partial capture against a single authorization (each with its own idempotency key). Single-capture PSPs settle once and release the rest.

    supportsPartialRefunds: boolean
    supportsPaymentMethodVerification: boolean

    Zero/low-amount validation, no charge, no storage.

    supportsRefunds: boolean
    supportsSavedPaymentMethods: boolean

    PSP-side vaulting: cards are stored by the PSP ONLY (SAQ-A unchanged), PayFanout and the host handle nothing but opaque tokens. When true, the adapter implements the customer/saved-method surface and off-session charging (the foundation of recurring payments / subscriptions).

    supportsSessionUpdate: boolean

    updatePaymentSession is available (amount/metadata amendments after creation). NOTE: some PSPs re-issue the session — always use the returned PaymentSession's pspSessionId/clientSecret after an update.