Payouts
Under non-custodial on-chain direct settlement, your funds settle on-chain straight to your own wallet — there is no withdrawable platform balance and no payout step for those currencies. If you are an external merchant on direct settlement, your platform balance stays at ~0 and there is nothing to pay out here. Payouts apply only to custodial balances (operator-internal hosted crypto gateways and local fiat).
A payout withdraws an available custodial wallet balance to a destination you control. Requesting one debits the wallet immediately (a ledger debit), then an operator or automated worker transfers the funds and marks the payout paid — or failed, which returns the funds.
The payout model
- Name
id- Type
- string
- Description
The payout id.
- Name
currency- Type
- string
- Description
The payout currency / asset.
- Name
amount- Type
- string
- Description
The amount withdrawn, as a decimal string.
- Name
status- Type
- string
- Description
requested,approved,executing,processing,paid,rejected, orfailed.rejected/failedreturn the funds to your wallet.
- Name
destination_type- Type
- string
- Description
cryptoorbank.
- Name
destination- Type
- string
- Description
Where funds are sent — a
chain:addressfor crypto, or bank-account JSON/text for bank.
- Name
reference- Type
- string
- Description
Settlement proof for a paid payout (tx hash / bank reference).
- Name
reason- Type
- string
- Description
Failure or rejection reason (for
failed/rejected).
- Name
created_at- Type
- timestamp
- Description
When the payout was requested.
List payouts
Signed locally — your secret stays in this browser and is never sent or stored.
No keys yet? Create an API key pair in the merchant portal — the secret is shown only once. Open the merchant portal →
Return your payout history as a plain data array (most recent first).
Request
curl "$BASE/api/v1/payouts" \
-H "X-Api-Key: $KEY_ID" \
-H "X-Timestamp: $TS" \
-H "X-Signature: $SIG"
Response
{
"data": [
{
"id": "po_3a",
"currency": "USD",
"amount": "500.00",
"status": "paid",
"destination_type": "bank",
"reference": "wire-20260610",
"created_at": "2026-06-10T10:00:00Z"
}
]
}
Request a payout
Signed locally — your secret stays in this browser and is never sent or stored.
No keys yet? Create an API key pair in the merchant portal — the secret is shown only once. Open the merchant portal →
Withdraw available balance. The amount is debited from your wallet on
request; the payout then moves through review/transfer to paid (or
failed, which refunds your wallet).
Required attributes
- Name
currency- Type
- string
- Description
The currency / asset to withdraw.
- Name
amount- Type
- string
- Description
The amount to withdraw, as a decimal string.
- Name
destination_type- Type
- string
- Description
cryptoorbank.
- Name
destination- Type
- string
- Description
For
crypto, achain:addressstring; forbank, the account JSON/text.
Directly-settled on-chain assets cannot be paid out — they settle on-chain straight to your own wallet and never reach a platform-held balance, so there is nothing to withdraw here. The crypto destination example below is the custodial path (operator-internal hosted gateways); a minimum payout amount may apply.
Request
curl "$BASE/api/v1/payouts" \
-H "X-Api-Key: $KEY_ID" \
-H "X-Timestamp: $TS" \
-H "X-Signature: $SIG" \
-H "Content-Type: application/json" \
-d '{
"currency": "USDT",
"amount": "500.00",
"destination_type": "crypto",
"destination": "usdt_erc20:0xYourAddress"
}'
Response
{
"payout": {
"id": "po_4b",
"currency": "USDT",
"amount": "500.00",
"status": "requested",
"destination_type": "crypto",
"destination": "usdt_erc20:0xYourAddress",
"created_at": "2026-06-11T09:00:00Z"
}
}