The quote ID from the Quote endpoint. If provided, the payout uses the locked exchange rate and fees from the quote. When using quote_id, you do not need to provide lookup_token, amount, sender_currency, or receiver_currency.
Always include an idempotency_key. Without it, the request will be rejected (it is required). The reference must also be unique per merchant account — a duplicate reference will be rejected even with a new idempotency key.
The quote_id has expired (older than 5 minutes) or does not belong to your account
400
Invalid or expired lookup token.
The lookup_token has expired (older than 10 minutes)
400
Insufficient balance.
Merchant wallet balance is less than total_deducted
400
Currency EUR is not authorized for payouts.
Currency not enabled for payouts on your account
400
Amount exceeds per-transaction limit
Amount exceeds the per-transaction limit for this currency
400
Daily payout limit exceeded
Daily payout volume limit reached for this currency
400
Monthly payout limit exceeded
Monthly payout volume limit reached for this currency
400
Duplicate reference.
A different payout already uses this reference
400
Recipient not found or inactive.
The user account is deactivated
400
Recipient wallet not found for currency: XAF
Recipient has no wallet in the specified receiver currency
422
Validation error
Missing required fields
401
Invalid API credentials.
Bad or missing Bearer token
What happens if a payout fails mid-execution?
Payouts are atomic. If any step fails (debit, credit, or ledger entry), the entire transaction is rolled back. Your merchant wallet is not debited and the recipient receives nothing. You can safely retry with the same idempotency_key.