Finrax API Documentation
DashboardResourcesMain
  • Introduction
  • Authorization
    • API Keys Management
    • Signature
    • Code snippets
  • Environments
  • Errors
  • Changelog
  • References
    • Crypto payments
      • 馃敀Request crypto payment
      • 馃敀Add payment details
      • 馃敀Get payment data
      • Fetch deposit amounts metadata
    • Crypto withdrawals
      • Request withdrawal metadata
      • 馃敁Get crypto withdrawal approval status
      • 馃敀Request crypto withdrawal
        • National Identifier Types
        • Name Identifier Type
    • Wallet Addresses
      • Validate address
    • Businesses
      • 馃敀Get business payments
      • 馃敀Get business withdrawals
      • 馃敀Get business balances
    • Callbacks
      • Deposit received notification
      • Withdrawal broadcast notification
      • Withdrawal approved/rejected notification
    • Currencies & Fees
      • Get all currencies
      • Get exchange rates [crypto to fiat]
      • Get exchange rates [fiat to fiat]
      • Get exchange rates [any currency to any currency]
Powered by GitBook
On this page

Was this helpful?

  1. References
  2. Crypto withdrawals

Request crypto withdrawal

PreviousGet crypto withdrawal approval statusNextNational Identifier Types

Last updated 2 months ago

Was this helpful?

Crypto withdrawal where an additional approval is required

In some cases, a crypto withdrawal might require additional approvals before being send out. This will also alter the response status code to 202 and body when a crypto withdrawal is initiated and it will look as seen below:

{
 "clientLabel" : "withdrawal-id-test-1",
 "withdrawalId" : "6f2ff05e-1c06-392a-8346-bd07d8540828"
 }

List of currencies and their supported withdrawal networks

Currency
Supported networks

BTC

BTC

BCH

BCH

ETH

ETH, BSC

LINK

ETH

LTC

LTC

USDC

ETH, BSC, SOL

XLM

XLM

XRP

XRP

SOL

SOL

More details about the fields required as part of the travelRuleBeneficiary data can be found under and

馃敀
National Identifier Types info page
Name Identifier Types info page
  • POSTRequest crypto withdrawal
  • Crypto withdrawal where an additional approval is required
  • List of currencies and their supported withdrawal networks

Request crypto withdrawal

post

An endpoint for initiating cryptocurrency withdrawals. The amount can be selected either in fiat or crypto which is defined by the targetAmountPolicy. When FIAT is selected as policy the resulting amount of the withdrawal in crypto will be calculated according to the fiat amount passed in targetAmount field. When CRYPTO is selected as policy the resulting amount of the withdrawal will be exactly the same as the amount passed in targetAmount field (subject to a negligible difference due to market conditions i.e. market step size)

Authorizations
Body
businessIdstring 路 uuidRequired

ID of the business from which the withdrawal should be executed.

clientWithdrawalIdstringRequired

Withdrawal identifier provided by the merchant.

recipientAddressstringRequired

Wallet address of the recipient.

destinationTagstringOptional

XLM/XRP destination tag.

networkstring 路 enumOptional

Specifies the network that should be used in this withdrawal.

For ERC20 Tokens you can choose between ETH, TRX and BSC as values for the network field. ETH stands for Ethereum network. This will be set as the default value when none is provided. TRX stands for TRON network. Before executing any withdrawals through this network, please make sure your address supports it. BSC stands for Binance Smart Chain. Before executing any withdrawals through this network, please make sure your address supports it.

These are the following networks supported for each currency.

Possible values:
withdrawCurrencystring 路 enumRequired

Cryptocurrency that will be withdrawn.

Possible values:
displayCurrencystring 路 enumRequired

Fiat currency.

Possible values:
targetAmountPolicystring 路 enumRequired

Specifies if the targetAmount will be requested in fiat or crypto.

Possible values:
targetAmountstringRequired

The requested amount to be withdrawn in fiat or crypto, depending on the provided targetAmountPolicy.

withdrawalAccountstring 路 enumOptionalDeprecated

Deprecated. Use settlementCurrency instead. Specifies which balance account should be charged for the withdrawal.

Default: the organisation's default settingPossible values:
settlementCurrencystring 路 enumOptional

Specifies which currency balance should be charged for the withdrawal.

Default: the organisation's default settingPossible values:
blockchainFeePaidBystring 路 enumOptional

Specifies who pays the blockchain fee for the withdrawal.

Default: the business' default settingPossible values:
travelRuleBeneficiaryone ofOptional
all ofOptional
or
all ofOptional
Responses
201
Withdrawal request created successfully.
application/json
202
Withdrawal requested and pending approval.
application/json
post
POST /api/v1/withdrawals HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 488

{
  "businessId": "407710f4-de33-454b-a47f-dda792e272c8",
  "clientWithdrawalId": "test-withdrawal-23-12-19-2",
  "recipientAddress": "0x5CF631Db2eB6be3eecB5E9fD0f31a19AC0F4C504",
  "network": "BSC",
  "withdrawCurrency": "USDC",
  "displayCurrency": "EUR",
  "targetAmount": "21",
  "targetAmountPolicy": "FIAT",
  "settlementCurrency": "EUR",
  "travelRuleBeneficiary": {
    "entityType": "NATURAL_PERSON",
    "personalIdentityName": "Person Name",
    "nameIdentifierType": "LEGL",
    "nationalIdentifier": "123",
    "nationalIdentifierType": "LEIX"
  }
}
{
  "withdrawId": "5724d752-6084-3822-9590-a6ccdf91f603",
  "clientWithdrawId": "test-withdrawal-23-12-19-2",
  "recipientAddress": "0x5CF631Db2eB6be3eecB5E9fD0f31a19AC0F4C504",
  "network": "BSC",
  "initiatedBy": "john.doe@gmail.com",
  "status": "PENDING",
  "displayCurrency": "EUR",
  "estimatedDisplayAmount": "21",
  "displayServiceFee": "0.25",
  "withdrawCurrency": "USDC",
  "estimatedWithdrawAmount": "23.01742298",
  "settlementCurrency": "EUR",
  "settlementDeductedAmount": "21.25",
  "settlementServiceFee": "0.25",
  "uniformCurrency": "EUR",
  "uniformAmount": "21",
  "uniformServiceFee": "0.25",
  "createdAt": 1702999367
}