Webhooks
On this page
Webhooks push Receiving (acquiring) order events to an HTTPS endpoint you control, so your backend learns about payments without polling. They are configured per account in Developers → Webhooks (/home/developer/webhooks): save the endpoint URL, copy the signing secret, send a test event and inspect every delivery attempt there. The page opens once your own personal identity verification (KYC) is approved; saving settings, sending test events and replaying deliveries all require it.
Requirements for your endpoint
- Public HTTPS URL on a standard port; private or loopback hosts are rejected when you save.
- Respond with any
2xxwithin 10 seconds. Redirects (3xx) are not followed and count as failures. - Treat deliveries as at least once: use the envelope
idto deduplicate.
Envelope
{
"id": "3f0d7a2e-…",
"type": "acquiring.order.paid",
"createdAt": "2026-10-09T08:12:33.000Z",
"dataVersion": 1,
"data": {
"orderId": "…",
"orderNo": "…",
"status": "paid",
"amount": "120.00",
"receivedAmount": "120.00",
"currency": "USDT",
"paymentMethod": "usdt-trc20",
"custodyMode": "platform",
"verification": null,
"metadata": {}
}
}| Field | Meaning |
|---|---|
id | event id (UUID); the same event keeps the same id across retries and replays |
type |