Asynchronous Notification for Payment Completion
When an order is successfully paid, the system will send a POST
request to the notify_url
you provided when creating the order to notify you of the order completion asynchronously.
Notification Request
Headers
The request headers need to include authentication information and content type.
Field | Type | Description |
---|---|---|
X-API-Key | string | Your API Key, used to identify the caller. |
X-Timestamp | string | The timestamp of the current request (Unix epoch time, seconds). |
X-Nonce | string | A random string (Nonce). Each request must use a unique Nonce. |
X-Signature | string | The signature of the request content. |
Request Body Example (JSON)
json
{
"id": "524206080",
"order_no": "Pay1756019978",
"currency": "EUR",
"amount": "0.1",
"chain_type": "bsc",
"order_amount": "0.12",
"product_name": "Test product name",
"cancel_time": 1756021778,
"meta": "",
"state": 2,
"pay_amount": "0.12",
"fee": "0.01",
"txid": "0xa3c6beb38c2fa1b4681d3b126a...",
"pay_time": 1756020040
}
Field Descriptions
Field | Type | Description |
---|---|---|
id | string | The internal order ID in the payment system. |
order_no | string | Merchant's order number. |
currency | string | Order currency code. |
amount | string | Original order amount. |
chain_type | string | Payment chain type. |
order_amount | string | Actual amount collected in USDT. |
product_name | string | Product or service name. |
cancel_time | integer | The order's cancellation/expiration time (Unix Timestamp, seconds). |
meta | string | Additional metadata. |
state | integer | The current status of the order. At this point, it is fixed at 2 (Paid). For more statuses, please refer to Order Status. |
pay_amount | string | Actual payment amount. |
fee | string | Transaction fee. |
txid | string | Blockchain transaction hash. |
pay_time | integer | Payment completion time (Unix Timestamp, seconds). |
Response Requirements
To confirm that the notification has been successfully received, your server needs to return an HTTP 200
status code, and the response body should be the string "success".
Notification Retry Mechanism
If your server fails to return the specified successful response (e.g., network timeout, non-200 status code, or incorrect response body format), the system will consider the notification to have failed and will retry according to the following policy:
- Retry Intervals: The notification intervals are: 4m, 10m, 10m, 1h, 2h, 6h, 15h.
- Stopping Condition: The system will stop sending notifications after receiving a successful response or after all retries are completed.