Pick the destination
Corridors are enabled per market and per app, and the destination types differ by market. Kenya, for example, has local payment methods but no bank rail. View supported regions and currencies →
Create the payout
UsePOST /v2/payments with intent: "send" and a stable Idempotency-Key. /v2/payments/preview supports crypto destinations only; it rejects external_bank, bank_account and external_qr. One-time bank and QR routes use a provider quote; the US linked-bank route fixes the crypto input and confirms delivered USD at settlement.
quoteExpiresAt. An expired payout quote cannot be refreshed on the same Payment. Read the original Payment and reconcile any funds sent before starting a new attempt with a new key after it is terminal. See Fund a fiat send before its quote expires.
US linked-bank payout
Use a bank already linked under the sending UPA. US one-timeexternal_bank payments and receive settlement into a linked bank are not released.
- Read
GET /v2/partners/configfor the app’s bank access and payment permissions. - Activate
linked_bankfor the intended US/USD rail and wait for account-level approval fromGET /v2/accounts/{accountId}/capabilities. - Read bank-account requirements, link the beneficiary, and wait until the returned bank is
activewith provider provisioning complete. - Configure the sender’s supported Payment Source.
- Create the Payment using the returned
bankAccountIdand an exact crypto input.
confirmationMode. Escrow funding is not submitted through the outgoing /confirm endpoint. Reconcile GET /v2/payments/{paymentId} and signed payment.* events until a terminal outcome, checking operationalState separately.
The coverage page distinguishes implementation support, app enablement and live certification. Sandbox requests use the sandbox base URL, accounts and supported testnet source.
Link a bank before paying it
Linking needs linked-bank access enabled for your app. Anindividual account needs an approved identity check. A business account can link a US dollar bank after hosted KYB, and no other country.
Read GET /v2/accounts/{accountId}/bank-account-requirements for the fields and availability, then POST /v2/accounts/{accountId}/bank-accounts. A linked bank is not a payout destination until its provider has verified it.
Business bank access
Abusiness account starts hosted verification with a capability activation and a stable Idempotency-Key.
business.legalName only on the first application, or when replaying that exact request after an interruption. Then act on nextAction.type:
The hosted form collects company, ownership, document and consent details, and banking is enabled only after the provider approves. Read
GET /v2/accounts/{accountId}/capabilities after verification and wait for ready: true.
To fund in US dollars as well, activate bank_onramp on the same approved relationship; business can be left out once the application exists. Your program, product and rail grants must cover each service.
In the partner dashboard, the same flow is under Accounts → an account → Banking: start or resume KYB, set up US dollar funding, reveal bank instructions, and send to verified US linked banks. Link the bank itself under Settlement once approved.
Next: Transactions
The ledger rows every payment leg writes.