Skip to main content
POST /api/v2/withdrawal/crypto HTTP/1.1
Host: app.cryptoprocessing.com
X-Processing-Key: text
X-Processing-Signature: text
Content-Type: application/json
Accept: */*
Content-Length: 161

{
  "currency": "BTC",
  "address": "string",
  "tag": null,
  "amount": 0,
  "foreign_id": "string",
  "end_user_reference": "string",
  "sender_type": "legal",
  "sender_data": {
    "legal_name": "Example GmbH",
    "country_of_registration": "DEU"
  },
  "receiver_type": "natural",
  "receiver_data": {
    "first_name": "Friedrich",
    "last_name": "Müller",
    "date_of_birth": "1995-08-17"
  }
}
{
  "data": {
    "id": 123,
    "foreign_id": "<string>",
    "end_user_reference": "<string>",
    "type": "<string>",
    "status": "<string>",
    "amount": "<string>",
    "sender_amount": "<string>",
    "sender_currency": "<string>",
    "receiver_currency": "<string>",
    "receiver_amount": 123
  }
}
Withdraw in crypto to any address. You can send cryptocurrency from your Fiat currency balance by using the convert_to parameter. The end_user_reference parameter is used to group, track and analyse transactions associated with a specific customer. To prevent transactions from getting delayed or cancelled, always make sure to include the correct ID. The ID must not contain any personal or identifying customer data.
Note: Cryptoprocessing is required to collect sender data in compliance with the MiCA regulations. For more details, see About user data collection. The sender_data and the end_user_reference you provide must be associated with the same customer.

Authorizations

X-processing-key
string
header
required

Your API key.

X-processing-signature
string
header
required

The request body, signed with HMAC-SHA512 with your secret key. You can find the secret key in your account.

Body

application/json
currency
string
required

The ISO code of the currency you want to withdraw. For a list of all available currencies, see Supported currencies.

address
string
required

Cryptocurrency address where you want to send funds.

amount
number
required

Amount to withdraw.

Required range: x >= 0
foreign_id
any
required

Unique ID of the withdrawal request.

end_user_reference
string
required

Permanent ID of the customer in your system. Must not contain personal data, such as the user's name or email address. Include this customer's data in the sender_data object.

Maximum string length: 255
sender_type
enum<string>
required

Whether the sender is a natural person (natural) or a legal entity (legal).

Available options:
natural,
legal
receiver_type
enum<string>
required

Whether the recipient is a natural person (natural) or a legal entity (legal). For internal transfers, set this to self.

Available options:
natural,
legal,
self
sender_data
object
required

If the sender is a natural person, include their first_name, last_name, date_of_birth and email. If the sender is a legal entity, include their legal_name, country_of_registration and email.

receiver_data
object
required

If the recipient is a natural person, include their first_name, last_name and date_of_birth. If the sender is a legal entity, include the legal_name and country_of_registration. If receiver_type is set to self, do not include this object.

convert_to
string

If you want to automatically convert all deposits to a certain currency, specify it here. For a list of all available currencies, see Supported currencies.

tag
string

If you are withdrawing XRP, a tag/memo is required. If you withdraw XRP without including a tag/memo, the funds may be lost.

amount_to
number

If you want to send a specific amount in the target currency (convert_to), use this parameter. You can only specify either amount_to or amount.

Response

OK

data
object