Skip to content

Withdrawals

Withdrawals send funds from a wallet to an external bank account.

POST /api/v1/withdraw
{
"wallet_id": "wal_abc123",
"from_amount": 50000,
"from_currency_id": "USD",
"to_currency_id": "USD",
"bank_account_id": "ba_def456",
"reference": "WD-001",
"description": "Monthly payout"
}
GET /api/v1/withdraw/{withdraw_id}
{
"id": "wd_xyz789",
"wallet_id": "wal_abc123",
"from_amount": 50000,
"from_currency_id": "USD",
"to_amount": 50000,
"to_currency_id": "USD",
"status": "completed",
"withdraw_fee": 250,
"reference": "WD-001",
"bank_account_id": "ba_def456",
"created_at": "2026-06-01T10:30:00Z"
}
StatusMeaning
pendingWithdrawal initiated, being processed.
completedFunds sent to the bank account.
failedWithdrawal failed — check the error field.

Before making a withdrawal, register the destination bank account:

POST /api/v1/bank-account
{
"bank_name": "Example Bank",
"account_name": "My Company",
"account_number": "1234567890",
"routing_number": "021000021",
"currency_id": "USD"
}

You can retrieve supported formats and bank names via GET /api/v1/bank-account/formats and GET /api/v1/bank-account/bank-names.

GET /api/v1/withdrawals