KYC Webhook
kyc webhook
Brief Description
- KYC callback
- Upon receiving the webhook message, returning HTTP status code 200 indicates that the message was successfully received.
Request URL
Request Method
- POST
Response Parameter Description
Model Object Description
| Parameter Name | Type | Description |
|---|---|---|
| string | Email address | |
| kycStatus | string | KYC status |
| date | string | KYC completion time |
| sign | string | Signature: Base64(HmacSHA256(data, secret)) |
Signature Verification Description
The sign is generated by applying HmacSHA256 and then Base64 encoding to the data excluding the sign field itself.
Construction rules for the string to be signed (data): Take all fields except sign, sort them by field name in ascending ASCII order, and serialize them into compact JSON (no spaces). Sorting is used instead of a fixed order so that signature verification logic does not need to change when new fields are added later.
Using the current fields as an example, the sorted order is date, email, kycStatus:
data = {"date":"...","email":"...","kycStatus":"..."}
sign = Base64(HmacSHA256(data, merchant_secret))
Calculate the signature using the merchant secret according to the rules above; verification passes if the result matches the provided sign.
KYC Status Description
| Parameter Name | Description |
|---|---|
| COMPLETED | KYC successfully completed |
| REJECTED | KYC submitted but rejected by the compliance department. We are unable to provide services to the client due to regulatory reasons or company policy. |
Response Example
{
"email": "[email protected]",
"kycStatus": "COMPLETED",
"date": "2025-06-09 17:41:53",
"sign": "Kg5fHI07ek6fXXXXXXvXI0LOqY="
}Updated about 2 hours ago
Did this page help you?