This API allows you to submit a request to withdraw funds from your account. You can choose from different withdrawal types based on how the funds should be sent. The available withdrawal types are:

  • ATM
  • BANK_TRANSFER (IBAN)
  • CRYPTO
  • PAY_SPOT
  • COUNTERPARTY

Each withdrawal type requires different parameters. Below, you'll find a description of the parameters for each withdrawal type.


Query Parameters

ParameterTypeDescription
dryRunbooleanIf set to true, simulates the request without performing the actual withdrawal.
autoConversionbooleanIf set to true, enables automatic currency conversion.

Body Parameters

ATM Withdrawal

The ATM withdrawal type allows you to withdraw funds via an ATM. You need to provide the ATM ID and creditor account details.

FieldTypeRequiredDescription
currencystringYesThe currency to withdraw.
amountstringYesThe amount to withdraw in the specified currency.
conversionarrayNoAn array of conversion objects for currency exchange.
fromAccountstringYesThe account from which funds will be withdrawn.
externalTransactionIdstringNoAn external transaction ID for reference.
atmIdstringYesThe ATM ID where the funds are being withdrawn.
creditorAccountIdstringYesThe creditor’s account ID.
rateobjectNoThe exchange rate for currency conversion.

BANK_TRANSFER (IBAN)

The BANK_TRANSFER withdrawal type allows you to send funds to an external bank account via IBAN. The recipient’s IBAN and SWIFT/BIC code are required.

FieldTypeRequiredDescription
currencystringYesThe currency to withdraw.
amountstringYesThe amount to withdraw in the specified currency.
conversionarrayNoAn array of conversion objects for currency exchange.
fromAccountstringYesThe account from which funds will be withdrawn.
ibanstringYesThe recipient's IBAN number.
bicOrSwiftCodestringYesThe BIC or SWIFT code of the recipient's bank.
rateobjectNoThe exchange rate for currency conversion.

CRYPTO Withdrawal

The CRYPTO withdrawal type allows you to withdraw funds to a cryptocurrency wallet. Specify the recipient's wallet address and the blockchain.

FieldTypeRequiredDescription
currencystringYesThe currency to withdraw (cryptocurrency).
amountstringYesThe amount to withdraw in cryptocurrency.
conversionarrayNoAn array of conversion objects for currency exchange.
fromAccountstringYesThe account from which funds will be withdrawn.
tostringYesThe recipient’s wallet address.
blockchainstringYesThe blockchain to use for the withdrawal.
rateobjectNoThe exchange rate for currency conversion.

PAY_SPOT Withdrawal

The PAY_SPOT withdrawal type is used to send funds to a specific beneficiary account (e.g., for a bank transfer).

FieldTypeRequiredDescription
currencystringYesThe currency to withdraw.
amountstringYesThe amount to withdraw.
conversionarrayNoAn array of conversion objects for currency exchange.
fromAccountstringYesThe account from which funds will be withdrawn.
beneficiaryAccountNumberstringYesThe beneficiary’s account number.
beneficiaryNamestringYesThe beneficiary’s name.
paymentCodeint32YesThe payment code.
paymentPurposestringYesThe purpose of the payment.
modulstringYesThe payment module.
rateobjectNoThe exchange rate for currency conversion.

COUNTERPARTY Withdrawal

The COUNTERPARTY withdrawal type allows you to transfer funds to another user or counterparty. You must provide the counterparty's ID.

FieldTypeRequiredDescription
currencystringYesThe currency to withdraw.
amountstringYesThe amount to withdraw.
conversionarrayNoAn array of conversion objects for currency exchange.
fromAccountstringYesThe account from which funds will be withdrawn.
counterPartyIdstringYesThe counterparty ID.
rateobjectNoThe exchange rate for currency conversion.

Best Practices

  • Validate Inputs:
    Ensure that all mandatory fields (such as amount, currency, and withdrawal type) are properly validated before submitting the request.

  • Currency Validation:
    Double-check that the specified currency is supported for each type of withdrawal.

  • Use dryRun:
    Use the dryRun parameter to simulate the withdrawal request without actually performing the operation. This can be useful for testing and verifying the process.


Conclusion

The Create a Withdraw Request API allows you to initiate various types of withdrawals from your account. By specifying the correct withdrawal type and parameters, you can transfer funds to ATMs, bank accounts, cryptocurrency wallets, and more. Always ensure that inputs are properly validated and that you handle errors appropriately.

If you have any questions or issues, please refer to the API documentation or contact support for further assistance.