# Request crypto withdrawal

## Request crypto withdrawal

> An endpoint for initiating cryptocurrency withdrawals. The amount can be selected either in fiat or crypto which is defined by the \`targetAmountPolicy\`.\
> &#x20;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)

```json
{"openapi":"3.0.1","info":{"title":"OpenAPI definition","version":"v0"},"servers":[{"url":"https://api.naewe.com","description":"Generated server url"}],"security":[{"ApiKeyAuth":["CREATE_WITHDRAWAL"]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","description":"^FRX-API api-key=[^,]+,signature=[^,]+,timestamp=[\\d]+$","name":"Authorization","in":"header"}},"schemas":{"RequestCryptoWithdrawalRequest":{"required":["businessId","clientWithdrawalId","displayCurrency","recipientAddress","targetAmount","targetAmountPolicy","withdrawCurrency"],"type":"object","properties":{"businessId":{"type":"string","description":"ID of the business from which the withdrawal should be executed.","format":"uuid"},"clientWithdrawalId":{"type":"string","description":"Withdrawal identifier provided by the merchant."},"recipientAddress":{"type":"string","description":"Wallet address of the recipient."},"destinationTag":{"type":"string","description":"XLM/XRP destination tag."},"network":{"type":"string","description":"Specifies the network that should be used in this withdrawal.\n\nFor ERC20 Tokens you can choose between ETH, TRX and BSC as values for the network field.\nETH stands for Ethereum network. This will be set as the default value when none is provided.\nTRX stands for [TRON](https://www.binance.com/en/research/projects/tron) network. Before executing any withdrawals through this network, please make sure your address supports it.\nBSC stands for [Binance Smart Chain](https://www.bnbchain.org/en/bnb-smart-chain). Before executing any withdrawals through this network, please make sure your address supports it.\n\nThese are the following networks supported for each currency.\n\n| Currency | Network            |\n|----------|--------------------|\n| BTC      | BTC                |\n| BCH      | BCH                |\n| ETH      | ETH, BSC           |\n| LINK     | ETH                |\n| LTC      | LTC                |\n| SOL      | SOL                |\n| USDC     | ETH, BSC, SOL      |\n| USDT     | ETH, BSC, SOL, TRX |\n| XLM      | XLM                |\n| XRP      | XRP                |","enum":["BCH","BTC","LTC","XLM","XRP","ETH","BSC","SOL","TRX"]},"withdrawCurrency":{"type":"string","description":"Cryptocurrency that will be withdrawn.","enum":["BCH","BNB","BTC","ETH","LINK","LTC","SOL","TRX","USDC","USDT","XLM","XRP"]},"displayCurrency":{"type":"string","description":"Fiat currency.","enum":["AED","ARS","AUD","BDT","BGN","BRL","CAD","CHF","CLP","CNY","CZK","DKK","EUR","GBP","HKD","HRK","HUF","IDR","ILS","INR","ISK","JPY","KES","KRW","MXN","MYR","NOK","NZD","PEN","PHP","PLN","QAR","RON","SEK","SGD","THB","TRY","USD","VND","ZAR"]},"targetAmountPolicy":{"type":"string","description":"Specifies if the `targetAmount` will be requested in fiat or crypto.","enum":["CRYPTO","FIAT"]},"targetAmount":{"type":"string","description":"The requested amount to be withdrawn in fiat or crypto, depending on the provided `targetAmountPolicy`."},"withdrawalAccount":{"type":"string","description":"Deprecated. Use `settlementCurrency` instead. Specifies which balance account should be charged for the withdrawal.","deprecated":true,"default":"the organisation's default setting","enum":["CRYPTO","FIAT"]},"settlementCurrency":{"type":"string","description":"Specifies which currency balance should be charged for the withdrawal.","default":"the organisation's default setting","enum":["BTC","USDC","USDT","EUR","GBP","USD"]},"blockchainFeePaidBy":{"type":"string","description":"Specifies who pays the blockchain fee for the withdrawal.","default":"the business' default setting","enum":["USER","MERCHANT"]},"travelRuleBeneficiary":{"oneOf":[{"$ref":"#/components/schemas/LegalPersonBeneficiary"},{"$ref":"#/components/schemas/NaturalPersonBeneficiary"}]}}},"LegalPersonBeneficiary":{"required":["entityType","nameIdentifierType","nationalIdentifier","nationalIdentifierType","personalIdentityName"],"type":"object","allOf":[{"$ref":"#/components/schemas/TravelRuleBeneficiary"},{"type":"object","properties":{"nameIdentifierType":{"type":"string","description":"The type of the personal name.","enum":["LEGL","SHRT","TRAD"]}}}]},"TravelRuleBeneficiary":{"required":["entityType","nationalIdentifier","nationalIdentifierType","personalIdentityName"],"type":"object","properties":{"entityType":{"type":"string","description":"The type of the beneficiary.","enum":["LEGAL_PERSON","NATURAL_PERSON"]},"personalIdentityName":{"type":"string","description":"The personal name of the beneficiary."},"nationalIdentifier":{"type":"string","description":"The national identifier of the beneficiary."},"nationalIdentifierType":{"type":"string","description":"The type of the national identifier","enum":["ARNU","CCPT","DRLC","FIIN","IDCD","LEIX","MISC","RAID","SOCS","TXID"]}},"description":"Travel rule data about the beneficiary.","discriminator":{"propertyName":"entityType"},"oneOf":[{"$ref":"#/components/schemas/LegalPersonBeneficiary"},{"$ref":"#/components/schemas/NaturalPersonBeneficiary"}]},"NaturalPersonBeneficiary":{"required":["entityType","nameIdentifierType","nationalIdentifier","nationalIdentifierType","personalIdentityName"],"type":"object","allOf":[{"$ref":"#/components/schemas/TravelRuleBeneficiary"},{"type":"object","properties":{"nameIdentifierType":{"type":"string","description":"The type of the personal name.","enum":["ALIA","BIRT","MAID","LEGL","MISC"]}}}]},"WithdrawalInitiatedResponse":{"required":["clientWithdrawId","createdAt","displayCurrency","estimatedDisplayAmount","estimatedWithdrawAmount","initiatedBy","network","recipientAddress","settlementCurrency","settlementDeductedAmount","settlementServiceFee","status","uniformAmount","uniformCurrency","withdrawCurrency","withdrawId"],"type":"object","properties":{"withdrawId":{"type":"string","format":"uuid"},"clientWithdrawId":{"type":"string","description":"Withdrawal identifier provided by the merchant."},"recipientAddress":{"type":"string","description":"Wallet address of the recipient."},"recipientTag":{"type":"string","description":"XLM/XRP destination tag."},"network":{"type":"string","description":"Network on which this withdrawal was initiated.","enum":["BCH","BTC","LTC","XLM","XRP","ETH","BSC","SOL","TRX"]},"initiatedBy":{"type":"string","description":"Initiator of the withdrawal request. When initiated from the Dashboard, the dashboard user's email is stored. When initiated from API, the backend URL is stored."},"status":{"type":"string","enum":["PENDING","COMPLETED","FAILED","BLOCKED"]},"displayCurrency":{"type":"string","description":"Fiat currency.","enum":["AED","ARS","AUD","BDT","BGN","BRL","CAD","CHF","CLP","CNY","CZK","DKK","EUR","GBP","HKD","HRK","HUF","IDR","ILS","INR","ISK","JPY","KES","KRW","MXN","MYR","NOK","NZD","PEN","PHP","PLN","QAR","RON","SEK","SGD","THB","TRY","USD","VND","ZAR"]},"estimatedDisplayAmount":{"type":"string","description":"Amount in `displayCurrency` requested for this withdrawal."},"displayServiceFee":{"type":"string","description":"Amount debited for fees from the merchant's balance in `displayCurrency`."},"displayRateDepegLossAmount":{"type":"string","description":"Loss incurred from the pegging of withdrawal and display currencies market rate in `displayCurrency`."},"withdrawCurrency":{"type":"string","description":"Cryptocurrency to be withdrawn.","enum":["BCH","BNB","BTC","ETH","LINK","LTC","SOL","TRX","USDC","USDT","XLM","XRP"]},"estimatedWithdrawAmount":{"type":"string","description":"Estimated amount for this withdrawal. Can be different than `actualWithdrawAmount`."},"settlementCurrency":{"type":"string","description":"Currency in which the merchant's account was debited. Can be either fiat or cryptocurrency.","enum":["BTC","USDC","USDT","EUR","GBP","USD"]},"settlementDeductedAmount":{"type":"string","description":"Amount debited from the merchant's balance in `settlementCurrency`."},"settlementServiceFee":{"type":"string","description":"Amount debited for fees from the merchant's balance in `settlementCurrency`."},"settlementRateDepegLossAmount":{"type":"string","description":"Loss incurred from the pegging of withdrawal and display currencies market rate in `settlementCurrency`."},"uniformCurrency":{"type":"string","description":"Always EUR."},"uniformAmount":{"type":"string","description":"Amount in `uniformCurrency` requested for this withdrawal."},"uniformServiceFee":{"type":"string","description":"Amount debited for fees from the merchant's balance in `uniformCurrency`."},"uniformRateDepegLossAmount":{"type":"string","description":"Loss incurred from the pegging of withdrawal and display currencies market rate in `uniformCurrency`."},"createdAt":{"type":"integer","description":"UNIX seconds at which the withdrawal was requested.","format":"int64"}}},"IntegratorCryptoWithdrawalPendingApprovalResponse":{"required":["clientLabel","withdrawalId"],"type":"object","properties":{"withdrawalId":{"type":"string","description":"The ID of the withdrawal approval. Once approved, a withdrawal with the same ID is created.","format":"uuid"},"clientLabel":{"type":"string","description":"Withdrawal identifier provided by the merchant."}}}}},"paths":{"/v1/withdrawals":{"post":{"summary":"Request crypto withdrawal","description":"An endpoint for initiating cryptocurrency withdrawals. The amount can be selected either in fiat or crypto which is defined by the `targetAmountPolicy`.\n 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)","operationId":"request-crypto-withdrawal","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RequestCryptoWithdrawalRequest"}}},"required":true},"responses":{"201":{"description":"Withdrawal request created successfully.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WithdrawalInitiatedResponse"}}}},"202":{"description":"Withdrawal requested and pending approval.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IntegratorCryptoWithdrawalPendingApprovalResponse"}}}}}}}}}
```
