KYC callback

During the KYC process, the customer's status can change multiple times. To keep you informed, we will send you a callback whenever there is a status update, along with information about any missing documents or errors that occurred during the KYC.

Sends the KYC details to you

POST https://your-callback-url-here.com/endpoint-to-handle-kyc-status

Request Body

Name
Type
Description

callbackType

"kyc"

The type of callback

customerId

String

The unique customer ID in the merchant system

docsMissing

Array({docType: string}) | null

The array of missing docs.

hash

String

The base64-encoded hash is generated using the sha512 algorithm and includes the customer ID, and secret key.

The string that will be hashed: {customer ID}.{secretKey}.

kycRejectLabel

String | null

The message indicates the reason for rejecting KYC.

kycEndUserErrorMessage

String | null

The message provides a detailed description of the error that occurred during KYC.

status

String

Status of KYC:

  • KYC_NEEDED: KYC process required

  • PENDING_KYC_DATA: Awaiting KYC data

  • KYC_PENDING: KYC is in progress

  • SOFT_KYC_FAILED: Non-critical KYC failure

  • HARD_KYC_FAILED: Critical KYC failure

  • FULL_USER: KYC completed successfully

The callback URL is the URL you provide during the sign-up process.

The callback you get after a confirmed or failed transaction might look like this:

{
  "callbackType": "kyc",
  "customerId": "demo_customer_id",
  "docsMissing": ["SELFIE", "PASSPORT"],
  "kycRejectLabel": "BAD_SELFIE, BAD_PASSPORT",
  "kycEndUserErrorMessage": null,
  "status": "SOFT_KYC_FAILED"
}

The callback data here is presented only for the demo purpose.

You may then handle this information as necessary. You don't need to send us anything back other than a success status so that we know the callback has been received and handled on your side.

Last updated