v1

latestOpenAPI 3.0.02026-07-24103118224.7 KB
Payouts

Create a payout

Creates and triggers a payout from the merchant custodial balance to a previously-registered destination account (bank or wallet). When X-On-Behalf-Of is set to a sub-merchant id, the payout is debited from the sub-merchant's custodial wallet and uses the sub-merchant's destination accounts. The destination account must belong to the merchant (or sub-merchant) identified by the request.

This endpoint is intended for custodial (Inflow-managed) wallets. Non-custodial (Privy-based) merchants must use the dashboard flow that includes an explicit signature step.

post/api/payout

Request body

accountIdstring required

Identifier of the payout destination (bank or wallet account). Must belong to the merchant (or the sub-merchant when X-On-Behalf-Of is used).

amountInCentsnumber required

Payout amount in cents of the source currency.

currency'USDC' | 'EURC' required

Source currency used to debit the merchant balance.

network'avalanche' | 'base' | 'polygon' | 'ethereum' | 'solana' | 'arbitrum'

Destination network. Required when the destination account is a crypto wallet.

sepaReferencestring

Custom SEPA reference that will appear on the beneficiary bank statement. Only used for EUR/SEPA payouts. Max 140 characters, alphanumeric.

Example request

{
  "accountId": "bank_1234567890abcdef",
  "amountInCents": 10000,
  "currency": "USDC",
  "sepaReference": "INV-2026-001"
}

Response

Payout created successfully

idstring required

Unique identifier of the created payout.

statusstring

Current status of the payout.

requiredApprovalsnumber

Number of approvals required when the merchant has a multi-sig payout policy.

approvalsCollectednumber

Number of approvals already collected for this payout.

Example response

{
  "id": "wdr_1234567890abcdef",
  "status": "INITIATED"
}