Skip to content

Withdraw fiat to a bank account​

POST
/v1/wallet/fiat/{currency}/withdraw

Requires WITHDRAWALS_CREATE, granted by WITHDRAWALS_WRITE (bundles)

Withdraws fiat from the account (the primary, or the sub-account selected with X-VALR-SUB-ACCOUNT-ID) to a bank account linked to that same account, with no email or two-factor confirmation; the fee is charged on top of amount. Set fast for a real-time (RTC) or RTGS payment at participating banks, and allowBorrow to borrow any shortfall against your other assets on a margin-enabled account. The response holds the withdrawal's id; track it with Get a fiat withdrawal.

Parameters​

Path Parameters

currency*

Fiat currency to withdraw, e.g. ZAR.

Type
string
Required
Example"ZAR"

Request Body​

application/json
JSON
{
"linkedBankAccountId": "3c9e1f42-7d5b-4a8e-9f21-6b0d8c4e7a15",
"amount": "1500",
"fast": false,
"reference": "INV 2026-0142"
}

Responses​

Accepted

application/json

Samples​

Errors

HTTPErrorWhen
400-113INVALID_JSONThe body isn't valid JSON.
400-11INVALID_REQUESTThe body is empty or a field fails validation, or reference was rejected, or the currency isn't recognised; validationErrors lists each failing field.
400-13415WITHDRAWALS_TEMPORARILY_SUSPENDEDWithdrawals are paused for a while after a security change on your account, such as a password reset or a new device; the message says when they're re-enabled.
400-32765WITHDRAWAL_RESTRICTION_APPLIEDThe withdrawal would take your portfolio below the minimum value it must keep.
400-15875FIAT_WITHDRAWALS_TO_BANK_BRANCH_RESTRICTEDWithdrawals to the bank account's branch code aren't supported. Use another bank account or contact support.
400-15307FIAT_WITHDRAWAL_AMOUNT_BELOW_MINIMUMamount is below the minimum withdrawal for this currency.
400-15318FIAT_WITHDRAWAL_CURRENCY_MISMATCHThe bank account was linked for a different currency.
400-6INSUFFICIENT_BALANCEThe account's available balance doesn't cover amount plus the fee.
400-15322CAN_NOT_WITHDRAW_TO_A_DELETED_BANK_ACCOUNTThe bank account has been deleted. Link it again to withdraw to it.
400-15321CAN_NOT_WITHDRAW_TO_AN_UNCONFIRMED_BANK_ACCOUNTThe bank account was never confirmed.
400-15309CAN_NOT_WITHDRAW_TO_AN_UNVERIFIED_BANK_ACCOUNTThis currency only pays out to verified bank accounts, and this one hasn't been verified yet or failed verification.
400-19243BORROW_FOR_WITHDRAWAL_NOT_AVAILABLEallowBorrow was set, but borrowing for withdrawals is unavailable at the moment.
400-19244BORROW_FOR_WITHDRAWAL_NOT_AVAILABLE_FOR_SELECTED_CURRENCYallowBorrow was set, but this currency can't be borrowed for a withdrawal.
400-19213MARGIN_NOT_ENABLED_FOR_ACCOUNTallowBorrow was set, but margin isn't enabled on the account.
400-11533CURRENCY_BORROW_EXCEEDED_FOR_COLLATERALIZED_LENDINGBorrowing the shortfall would exceed the account's borrow limit for this currency.
400-11534ACCOUNT_BORROW_EXCEEDED_FOR_COLLATERALIZED_LENDINGBorrowing the shortfall would exceed the account's total borrow limit.
404-14203COULD_NOT_GET_LINKED_ACCOUNTNo bank account with linkedBankAccountId exists.
451-15320FIAT_WITHDRAWALS_NOT_ALLOWED_FOR_CURRENCYYour business's region doesn't allow withdrawals in this currency.
500-19202INSUFFICIENT_LIQUIDITY_FOR_BORROWallowBorrow was set, but the amount to borrow isn't available right now. Try again later.
503-12015WITHDRAWALS_NOT_AVAILABLEWithdrawals are unavailable at the moment. Try again later.

Plus the errors common to all signed endpoints.