Verification Webhook

Prev Next
This content is currently unavailable in Indonesian. You are viewing the default (English) version.

Set the URL for the “Account Verification” webhook under the Developer Settings in your Dashboard. When there are updates on your sub-accounts’ verification status, we will send the data to the URL you have set.

POST https://yourcompany.com/account_verification_webhook_url

Response Schema

Headers

Field Name

Data Type

Description

x-callback-token

string

Your Xendit unique webhook token to verify the origin of the webhook

webhook-id

string

A unique identifier of every webhook to help you to handle double webhooks by implementing idempotency. When you receive the same webhook-id twice, treat the subsequent request as duplicate and reject the webhook accordingly to prevent double webhooks

Body

Field Name

Data Type

Description

status

string

Status of the KYC verification. Available values: PASSED, RESUBMISSION_REQUIRED, FAILED

kyc_passed_at

string

The timestamp of when the KYC status changed to PASSED in ISO format

verified_at

string

Timestamp of the verification in ISO format

requested_at

string

Timestamp of the KYC verification requested date in ISO format

failure_reasons

array

An array of objects containing one or more failure reasons:

  • field (string)

  • message (string)

Sample Webhook Response

Verification Passed

{
   "event": "account.verification",
   "created": "2021-01-01T10:00:00Z",
   "business_id": "5fe2b0137b7d62542fe6d7de",
   "data": {
       "id": "57fb4e076fa3fa296b7f5a97",
       "created": "2021-01-01T10:00:00Z",
       "updated": "2021-01-01T10:00:00Z",
       "kyc": {
           "status": "PASSED",
           "verified_at": "2021-01-01T10:00:00Z",
           "requested_at": "2021-01-01T10:00:00Z",
           "kyc_passed_at": "2021-01-01T10:00:00Z",
       }
   }
}

Resubmission Requested

{
   "event": "account.verification",
   "created": "2021-01-01T10:00:00Z",
   "business_id": "5fe2b0137b7d62542fe6d7de",
   "data": {
       "id": "57fb4e076fa3fa296b7f5a97",
       "created": "2021-01-01T10:00:00Z",
       "updated": "2021-01-01T10:00:00Z",
       "kyc": {
           "status": "RESUBMISSION_REQUIRED",
           "requested_at": "2021-01-01T10:00:00Z",
           "failure_reasons": [
               {
                   "field": "proof_of_business_websites",
                   "message": "The website is inaccessible"
               },
               {
                   "field": "business_registration_documents[0]",
                   "message": "Invalid registration document"
               },
               {
                   "field": "stakeholders[0].identification[1]",
                   "message": "The passport has expired"
               }
           ]
       }
   }
}

Verification Failed

{
   "event": "account.verification",
   "created": "2021-01-01T10:00:00Z",
   "business_id": "5fe2b0137b7d62542fe6d7de",
   "data": {
       "id": "57fb4e076fa3fa296b7f5a97",
       "created": "2021-01-01T10:00:00Z",
       "updated": "2021-01-01T10:00:00Z",
       "kyc": {
           "status": "FAILED",
           "verified_at": "2021-01-01T10:00:00Z",
           "requested_at": "2021-01-01T10:00:00Z"
       }
   }
}