Docs 0Xprocessing
Search
⌃K
Comment on page

Withdrawals

Webhook Respond

The withdrawals report is implemented by means of webhooks.
For more information on setting up Webhooks, see the Setting up Webhooks.
Set the Webhook URL in the menu Merchant\Classic processing\WebhookURL to receive a callback about withdrawals status. Required https (TLS/SSL)
Webhook password - password required to verify the withdrawal signature
Webhook URL - the address in the system from which the withdrawal is made, this address will be used to send updates on the status of withdrawals:
Request method: POST
Response Type: JSON
Parameters:
Name
Description
Type
ID
Withdrawal ID in the 0Xprocessing system
Integer
MerchantID
Merchant Id in 0Xprocessing system
String
Date
Date of withdrawal request
DateTime
Amount
Withdrawal amount in cryptocurrency
Double
AmountUSD
Withdrawal amount in USD equivalent
Double
Fee
Withdrawal fee in token equivalent
Double
Currency
Withdrawal currency
String
Address
Withdrawal address
String
Status
Withdrawal status
Possible values are:
Success - withdrawal has been executed successfully
Canceled - withdrawal has been not executed
String
Reason
Reason of withdrawal reject
String
ExternalID
Unique withdrawal identifier in the system from which the withdrawal is made
String
Signature
Checksum to verify the authenticity of the request (to ensure that the request came from 0Xprocessing)
String
ClientID
Unique client ID in your system
String
Hash
Successful transaction hash
String
Signature check:
1. A string of the following form must be generated: "ID":"MerchantID":"Address":"Currency":"Password" (WebhookURL link password)
Without quotation marks through a colon. Example: 12345:Qtfxhgy43:0xa36740e327726fA05F720b10Ec2D71E0CD4Ae2A5:ETH:qwerty
2. Encrypt the resulting string using MD5 algorithm
3. Compare the resulting string with the one that came through Webhook
"Signature":"a5510c8c3e657ffd8229813749cd20ec"
4. If the strings are the same, return HTTP Status 200 (Required)
If the callback is not delivered successfully, the system repeats at 31 times with an interval of 15 seconds. If the webhook still fails to be delivered, the system sends a notification to the merchant's account email indicating a problem with the WebhookURL.
Example Webhook JSON:
1
{
2
"ID":33683,
3
"MerchantID":"0xMR000000",
4
"Date":"2023-03-06T16:37:38.547046Z",
5
"Amount":500.0,
6
"Fee":2.6,
7
"Currency":"ETH",
8
"Address":"0x......",
9
"Status":"Success",
10
"Reason":null,
11
"Signature":"3a16086f49eb11c2e8c426a7b3649caa",
12
"ExternalID":"abcd1234",
13
"ClientID":"abcd1234",
14
"AmountUSD":0.0,
15
"Hash":"a45172f319ec4561871bf195f17f85e69a4bc842b5c1085dbe000098217fffb7"
16
}
When processing callbacks, you MUST use the ID parameter from the callback 0xProcessing as an additional validation factor.