Execute a payout
Send money out of a virtual account.
mode decides where the money comes from: FIAT spends the account’s balance and needs a recipient_id, CRYPTO funds the payout from a deposit you make to a temporary address. Redeem a quote_id from a preview to settle at exactly that price.
Headers
Version applied to this request. It wins over your account's pinned version — see Versioning.
"2026-04-14"
A UUID you generate for this call. Retrying with the same key returns the first payout instead of sending a second one; reusing it with a different body is rejected with a 409.
"3fa85f64-5717-4562-b3fc-2c963f66afa6"
Path Parameters
The account the money leaves from.
Body
How much to send in USD, as a positive decimal string with up to 8 decimals. With inverse_calculation this is what the recipient should end up with instead.
Where the money comes from. FIAT spends the account's balance and requires recipient_id; CRYPTO funds the payout from a deposit you make. When you omit it, sending payment_instructions means CRYPTO.
FIAT, CRYPTO Who gets paid. Required on a FIAT payout. Where the rail accepts only Latin characters, creating the payout rejects a recipient name or address field written entirely in another script with a 400 naming the field (for example address.street_name); accented characters pass (José becomes Jose).
A quote_id from a preview. Sending it settles at exactly the amounts, fees and rate you were quoted.
Work backwards: treat amount as what the recipient receives and work out what leaves the account. false when you omit it.
Your own fees for this one payout, replacing whatever is configured on your account. fixed_fee and percentage_fee are both required once you send the object.
The token and chain you will deposit to fund the payout. Sending this makes it crypto-funded, and the address to deposit to comes back on the response.
What the payout is for. It decides whether a supporting document is required — see Payout values.
vendor, pobo, first_party, spot_3p, spot_1p, related_entities, other Proof of what the payout is for. One or two files, at most one of each type. A crypto payout needs one unless nature_of_payment is first_party.
1 - 2 elementsYour own reference for the payout. It comes back unchanged on a read. A few prefixes are reserved and rejected.
Your own notes on the payout. They come back on a read.
Your own key/value pairs, returned unchanged. Up to 50 keys. A key is 1 to 40 characters and cannot contain [ or ]; a value is up to 500 characters.
Set at creation only — a payout cannot be changed afterwards.
Response
Success.
Every amount is a decimal string.
Payout UUID. Use it to read the payout later.
The account the money leaves from.
Who gets paid.
Where the payout has got to — see Payout values.
What leaves the account.
Currency of amount. Always USD.
What comes off the amount before the recipient is paid.
What the recipient ends up with.
Currency of recipient_amount.
The funding token and chain, echoed back. Only on a crypto-funded payout.
Where to deposit to fund the payout, on a crypto-funded one. Nothing moves until that deposit arrives.
The quote you redeemed, when you sent one.
When that quote stops holding, as an ISO 8601 timestamp.
When the payout was created, as an ISO 8601 timestamp.
The key/value pairs you sent, returned unchanged. {} when you sent none.