Skip to main content
POST
/
crypto
/
withdrawal_instant
Withdraw BTC
curl --request POST \
  --url https://app.cryptoprocessing.com/api/v2/crypto/withdrawal_instant \
  --header 'Content-Type: application/json' \
  --header 'X-Processing-Key: <api-key>' \
  --header 'X-Processing-Signature: <x-processing-signature>' \
  --data '
{
  "sender_currency": "BTC",
  "sender_amount": "0.00020000",
  "address": "tb1qfdxh6gkfr0qgyatnlkd8khcnxph9tw06n6qwjc",
  "foreign_id": "withdrawal_123",
  "end_user_reference": "user_12345",
  "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": 134702815, "foreign_id": "withdrawal_123", "end_user_reference": "user_12345", "type": "withdrawal_instant", "status": "processing", "sender_currency": "BTC", "sender_amount": "0.00020000" } }

Documentation Index

Fetch the complete documentation index at: https://docs.cryptoprocessing.com/llms.txt

Use this file to discover all available pages before exploring further.

CryptoProcessing is required to collect sender data in compliance with the MiCA regulations. For more details, see 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.

Headers

X-Processing-Signature
string
required

Hex-encoded HMAC-SHA512 signature of the request body, generated using your secret key.

Body

application/json
sender_currency
string
required

Currency to withdraw. For a list of all available currencies, see API currency codes.

sender_amount
number
required

Amount to withdraw in sender_currency.

address
string
required

Cryptocurrency address where you want to send funds.

foreign_id
any
required

Unique ID of the withdrawal request.

end_user_reference
string
required

Persistent internal ID of the merchant's end customer who initiates the withdrawal. Use the same value for the same customer across all requests. This value must refer to the same customer described in sender_data.

Do not include personal data, such as the customer's name or email address. Put personal details in sender_data.

sender_type
enum<string>
required

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

Available options:
natural,
legal
sender_data
object
required

Details of the merchant's end customer who initiates the withdrawal.

  • If sender_type is natural, include first_name, last_name, and date_of_birth. Do not include legal_name or country_of_registration.

  • If sender_type is legal, include legal_name and country_of_registration. Do not include first_name, last_name, or date_of_birth.

You can optionally include email for either sender type.

receiver_type
enum<string>
required

Type of the withdrawal recipient.

Use natural if the recipient is an individual person, legal if the recipient is a legal entity, or self if the recipient is the same person or legal entity as the sender.

The selected type determines whether receiver_data is required and which fields it must contain.

Available options:
natural,
legal,
self
receiver_data
object
required

Details of the withdrawal recipient.

  • If receiver_type is natural, include first_name, last_name, and date_of_birth. Do not include legal_name or country_of_registration.

  • If receiver_type is legal, include legal_name and country_of_registration. Do not include first_name, last_name, or date_of_birth.

  • If receiver_type is self, do not include receiver_data.

Response

Created

data
object
Last modified on May 20, 2026