KYC Webhook
For each KYC status change, a webhook will be sent for the following statuses:Status Table
Configuring the callback URL
Register the URL that receives the KYC webhooks for thekyc event, using the Webhook Setup API. You can query, update and remove it the same way.
- The URL is registered per account: send
account_idto register it for one of your subaccounts. The same URL can also receive other events — sendkycin theeventslist together with them. - Register a
secretto receive the HMAC-SHA256 signature in every KYC webhook. - A subaccount without its own
kycwebhook receives its KYC webhooks on its main account’skycwebhook. See Subaccounts without a webhook. - When neither the account nor its main account has a
kycwebhook registered, KYC webhooks keep being delivered to the callback URL previously configured by our Customer Experience team, if any, without thex-webhook-wp-*headers.
Example Payload
The webhook payload contains information about the KYC status change:Example Headers
The webhook request includes the following headers:kyc event, the request also includes the x-webhook-wp-type and x-webhook-wp-timestamp headers, plus x-webhook-wp-signature when a secret is set:
Field Types
integer
Unique identifier for the KYC record.
integer
Merchant identifier associated with the KYC.
object
Object containing the current status of the KYC.
object
Additional metadata about the KYC process.
string
Timestamp of when the KYC status was updated.Format:
<date-time>Webhook Status Flow
Related Resources
List KYC
List all KYC verifications
Get KYC By ID
Get KYC by ID
Get KYC By Document
Get KYC by document
Webhooks Guide
Learn about webhooks

