Skip to main content

Withdrawals

Base path: /v1/withdrawals. Requires authentication.

MethodPathDescription
POST/v1/withdrawalsRequest a payout.
GET/v1/withdrawalsList your withdrawals (paginated).
GET/v1/withdrawals/:idGet one withdrawal.

Amount vs network fee​

amount is what the destination receives. Do not subtract the network fee from it.

What you sendWhat gets reserved from your balance
amountNet payout to destinationAddressExactly amount of the withdrawal asset
Network feeNot part of your request bodyNot debited from your balance

Network fees (gas) are paid by the platform from its operational wallet. You do not add or subtract them from amount.

Example — USDC on Ethereum​

You want your customer to receive 1.5 USDC:

{
"chainId": "sepolia",
"symbol": "USDC",
"amount": "1500000",
"destinationAddress": "0x7099…"
}
  • Your balance drops by 1.5 USDC (1500000 base units at 6 decimals).
  • The destination receives 1.5 USDC.
  • Gas is paid separately in ETH by the platform; your USDC balance is unchanged by the gas cost.

Example — native ETH​

You want the destination to receive 0.1 ETH:

{
"chainId": "sepolia",
"symbol": "ETH",
"amount": "100000000000000000",
"destinationAddress": "0x7099…"
}
  • Your balance drops by 0.1 ETH.
  • The destination receives 0.1 ETH on-chain.
  • Gas is still separate — do not reduce amount to "leave room" for gas.

You only need enough available balance of the asset you are withdrawing to cover amount.

Create a withdrawal​

POST body:

FieldRequiredDescription
chainIdyesChain from Chains.
symbolyesAsset symbol, e.g. USDC.
amountyesNet payout in base units (smallest denomination).
destinationAddressyesOn-chain address to receive funds.
metadatanoOpaque JSON attached to the withdrawal.

Idempotency is required: send an Idempotency-Key header (or idempotencyKey in the body), at least 8 characters. Retrying with the same key is safe and returns the same withdrawal.

Creating a withdrawal immediately reserves amount from your available balance and queues on-chain execution. See Withdrawals guide for statuses and webhooks.

After broadcast, a confirmed withdrawal includes networkFee on the response — the actual on-chain cost in the chain native asset, for your records only.