Webhooks Used Across the SDK Product Line
Webhooks provide real-time notifications to your system when key events occur across the platform. This reference documents all available webhook event triggers, their payloads, and guidance on how to handle them.
Event Triggers
KYB Organization Invite
Event: KYB_INVITATION_SENT
Triggered when a KYB invitation is sent to an organization. This webhook notifies your system that a new organization verification invite has been created and provides invite details, contact information, and current invitation status.
{
"event": "KYB_INVITATION_SENT",
"message": "KYB invitation sent successfully",
"data": {
"id": "org_inv_123",
"name": "ABC Organization",
"description": "KYB verification invitation",
"email": "contact@abc.com",
"phone": "+91XXXXXXXXXX",
"status": "INVITED",
"orgId": "org_001",
"invitorOrgId": "org_999",
"isExistingOrgInvite": false,
"rejectionReason": null,
"relatedTaskId": "task_123",
"createdAt": "2026-02-27T10:00:00Z"
},
"timestamp": "2026-02-27T14:01:54.205Z"
}
Payload Fields
| Field | Type | Description |
|---|---|---|
id | string | Unique identifier of the KYB invitation |
name | string | Name of the invited organization |
description | string | Description or additional details of the invitation |
email | string | Contact email of the invited organization |
phone | string | Contact phone number of the invited organization |
primaryContactName | string | Name of the primary contact person |
primaryContact | string | Primary contact identifier/email |
status | EOrgInviteStatus | Current invite status (INVITED, ACTIVE, REJECTED) |
orgId | string | ID of the invited organization |
invitorOrgId | string | ID of the organization sending the invitation |
isExistingOrgInvite | boolean | Indicates whether invited organization already exists |
rejectionReason | string | null | Reason provided when invitation is rejected |
relatedTaskId | string | Associated verification task identifier |
createdAt | string | ISO 8601 timestamp when invitation was created |
KYB Business Verification
Event: KYB_BUSINESS_VERIFICATION
Triggered when an organization's KYB verification status changes. This webhook notifies your system about verification progress updates such as initiated, verified, or failed verification.
{
"event": "KYB_BUSINESS_VERIFICATION",
"message": "Business status updated",
"data": {
"status": "VERIFIED",
"organization": {
"name": "ABC Pvt Ltd",
"id": "3f9c1b8e-6c2a-4d7f-9a21-5e8b7c4d2f10",
"businessEntityType": "LLC"
},
"tasks": [
{
"id": "task_123",
"name": "Document Verification",
"status": "FAILED",
"reason": "Invalid business document"
}
]
},
"timestamp": "2026-02-27T14:01:54.205Z"
}
Note:
tasksfield will only be available when verification status isFAILED.
Payload Fields
| Field | Type | Description |
|---|---|---|
status | string | Current KYB verification status ( INITIATED,VERIFIED, FAILED ) |
name | string | Legal name of the organization |
id | string | Unique identifier of the organization |
businessEntityType | string | Registered business entity type |
tasks | array | Failed verification tasks (only returned on failure) |
KYB Organization Created
Event: KYB_ORGANIZATION_CREATED
Triggered when an organization is successfully created after the authority document is signed and the individual VDT is linked with the organization VDT. This webhook confirms organization creation and provides organization identity details.
{
"event": "KYB_ORGANIZATION_CREATED",
"message": "Organization authority document signed and individual VDT linked to organization VDT",
"data": {
"id": "5f3a2b1c-8d4e-4a9f-b2c1-7e6d5a3c9b10",
"name": "ABC Global Ltd",
"taxIdNumber": "TAX123456789",
"customerNumber": 10245,
"userId": "user_123"
},
"timestamp": "2026-02-27T14:01:54.205Z"
}
Payload Fields
| Field | Type | Description |
|---|---|---|
id | string | Unique identifier of the created organization |
name | string | Legal name of the organization |
taxIdNumber | string | Organization tax identification number |
customerNumber | number | Customer number assigned to the organization |
userId | string | Identifier of the user linked with organization |
KYB UBO Completed
Event: KYB_UBO_COMPLETED
Triggered when an organization successfully completes KYB verification including SOS verification and UBO (Ultimate Beneficial Owner) compliance. This webhook confirms that the organization verification lifecycle is fully completed.
{
"event": "KYB_UBO_COMPLETED",
"message": "Organization fully verified — SOS and UBO compliance complete",
"data": {
"orgId": "3f9c1b8e-6c2a-4d7f-9a21-5e8b7c4d2f10",
"name": "ABC Global Ltd",
"taxIdNumber": "TAX123456789",
"customerNumber": 10245,
"status": "SUCCESS"
},
"timestamp": "2026-02-27T14:01:54.205Z"
}
Payload Fields
| Field | Type | Description |
|---|---|---|
orgId | string | Unique identifier of the verified organization |
name | string | Legal name of the organization |
taxIdNumber | string | Organization tax identification number |
customerNumber | number | Customer number assigned to the organization |
status | string | Final UBO compliance completion status (SUCCESS) |
KYB Invite Completed
Event: KYB_INVITE_COMPLETED
Triggered when a KYB organization invitation lifecycle is completed. This webhook is sent when the invited organization either accepts or rejects the invitation. It provides the final invitation status along with organization details and rejection information when applicable.
{
"event": "KYB_INVITE_COMPLETED",
"message": "Invitation to join the organization has been accepted",
"data": {
"id": "org_inv_123",
"name": "ABC Organization",
"description": "Organization collaboration invite",
"email": "contact@abc.com",
"phone": "+91XXXXXXXXXX",
"primaryContactName": "John Doe",
"primaryContact": "john@abc.com",
"status": "ACTIVE",
"orgId": "org_001",
"invitorOrgId": "org_999",
"isExistingOrgInvite": false,
"rejectionReason": null,
"relatedTaskId": "task_123",
"createdAt": "2026-02-27T10:00:00Z",
"updatedAt": "2026-02-27T10:05:00Z"
},
"timestamp": "2026-02-27T14:01:54.205Z"
}
Rejected Invitation Example
{
"event": "KYB_INVITE_COMPLETED",
"message": "Invitation to join the organization has been rejected",
"data": {
"id": "org_inv_123",
"name": "ABC Organization",
"status": "REJECTED",
"orgId": "org_001",
"invitorOrgId": "org_999",
"rejectionReason": "Organization details are invalid",
"createdAt": "2026-02-27T10:00:00Z",
"updatedAt": "2026-02-27T10:05:00Z"
},
"timestamp": "2026-02-27T14:01:54.205Z"
}
Payload Fields
| Field | Type | Description |
|---|---|---|
id | string | Unique identifier of the organization invitation |
name | string | Name of the invited organization |
description | string | Description/details provided during invitation |
email | string | Contact email of invited organization |
phone | string | Contact phone number |
primaryContactName | string | Name of primary contact person |
primaryContact | string | Primary contact email/identifier |
status | EOrgInviteStatus | Final invitation status |
orgId | string | ID of invited organization |
invitorOrgId | string | ID of organization that sent the invite |
isExistingOrgInvite | boolean | Indicates if invited organization already existed |
rejectionReason | string | null | Reason provided when invitation is rejected |
relatedTaskId | string | Related verification task identifier |
createdAt | string | ISO 8601 timestamp when invite was created |
updatedAt | string | ISO 8601 timestamp when invite was last updated |
KYB Add-Ons Update
Event: KYB_ADDONS_UPDATE
Triggered when a KYB add-on verification result is updated. This webhook notifies your system about the latest status, result, and details of additional KYB verification checks performed on an organization or related entity.
{
"event": "KYB_ADDONS_UPDATE",
"message": "Updates on KYB Add-On result.",
"data": {
"id": "addon_result_123",
"addonType": "BUSINESS_SCREENING",
"status": "COMPLETED",
"result": "PASSED",
"resultDetails": {
"message": "Business screening completed successfully",
"score": 95
},
"referenceId": "entity_123",
"completedAt": "2026-02-27T14:00:00Z"
},
"timestamp": "2026-02-27T14:01:54.205Z"
}
Payload Fields
| Field | Type | Description |
|---|---|---|
id | string | Unique identifier of the KYB add-on result |
addonType | string | Type of KYB add-on verification performed |
status | string | Current processing status of the add-on verification |
result | string | Final outcome/result of the verification check |
resultDetails | object | Additional details returned from the verification |
referenceId | string | Reference entity ID associated with the add-on result |
completedAt | string | ISO 8601 timestamp when add-on result was updated |
Product VDT Minting Status
Event: PRODUCT_MINTING_STATUS
Triggered when a product VDT (Verifiable Digital Token) is successfully minted on the blockchain. This webhook notifies your system that the digital representation of the product has been created, allowing you to record the blockchain reference, update product status, or enable marketplace and ownership features.
{
"event": "PRODUCT_MINTING_STATUS",
"message": "Product Minting Initiated",
"data": {
"id": "c1a9d5f2-7b3e-4f8a-9c6d-2e1b0a4f7d88",
"name": "Premium Steel Batch",
"description": "High-grade steel batch for manufacturing",
"eventIdRef": "562393eb-1051-4f5e-adaa-f1211e8541b9",
"isMinted": false,
"mintedAt": "2026-02-27T09:45:00Z"
},
"timestamp": "2026-02-27T14:01:54.205Z"
}
Payload Fields
| Field | Type | Description |
|---|---|---|
id | string | Unique identifier of the product |
name | string | Name of the product being minted |
description | string | Description of the product |
eventIdRef | string | Reference ID of the associated minting event |
isMinted | boolean | Whether minting has completed (false indicates in progress) |
mintedAt | string | ISO 8601 timestamp of when minting was initiated or completed |
Pactvera VDT Minting Status
Event: PACTVERA_MINTING_STATUS
Triggered when a Pactvera VDT (Validated Data Token) is successfully minted on the blockchain after a Pactvera is sent on the platform. This webhook confirms that the digital token representing the Pactvera has been generated and recorded on the blockchain.
{
"event": "PACTVERA_MINTING_STATUS",
"message": "Pactvera Minting Initiated",
"data": {
"pactveraId": "562393eb-1051-4f5e-adaa-f1211e8541b9",
"folderId": "f94660cd-1206-458a-a27d-f55190eee5ff",
"title": "Employee KYC Verification sasas",
"description": "KYC verification for newly onboarded employees",
"status": "IN_PROGRESS",
"createdAt": "2026-02-20T06:07:01.295Z"
},
"timestamp": "2026-02-27T14:01:54.205Z"
}
Payload Fields
| Field | Type | Description |
|---|---|---|
pactveraId | string | Unique identifier of the Pactvera |
folderId | string | ID of the folder the Pactvera belongs to |
title | string | Title of the Pactvera |
description | string | Description of the Pactvera's purpose |
status | string | Current minting status (e.g., IN_PROGRESS) |
createdAt | string | ISO 8601 timestamp of Pactvera creation |
KYC Verified
Event: KYC_VERIFIED
Triggered when a user is invited by an organization, accepts the invitation, and successfully completes the required onboarding tasks on the platform. This webhook notifies your system about the completion of the user onboarding process and provides the verification status indicating whether the user has been successfully verified or not.
It enables your application to update user access, assign roles and permissions, activate organization-level features, or initiate any downstream workflows that depend on a fully onboarded and verified user.
{
"event": "KYC_VERIFIED",
"message": "Updates on kyc verification.",
"data": {
"id": "a12f6c9e-3d7b-4c9a-b2f1-8d6e7a1c5b90",
"createdBy": "org_123",
"creatorName": "ABC Organization",
"title": "Complete KYB Verification",
"status": "Completed",
"priority": "High",
"refInviteId": "inv_456",
"createdAt": "2026-02-27T06:30:00Z",
"completionDate": "2026-02-27T07:10:00Z"
},
"timestamp": "2026-02-27T14:01:54.205Z"
}
Payload Fields
| Field | Type | Description |
|---|---|---|
id | string | Unique identifier of the KYC verification task |
createdBy | string | ID of the organization that created the task |
creatorName | string | Name of the organization that created the task |
title | string | Title of the verification task |
status | string | Current status of the task (e.g., Completed) |
priority | string | Priority level of the task (e.g., High) |
refInviteId | string | Reference ID of the associated invite |
createdAt | string | ISO 8601 timestamp of task creation |
completionDate | string | ISO 8601 timestamp of task completion |
Common Fields
All webhook payloads share the following top-level fields:
| Field | Type | Description |
|---|---|---|
event | string | The event type identifier |
message | string | A human-readable summary of the event |
data | object | Event-specific payload data |
timestamp | string | ISO 8601 timestamp of when the webhook was dispatched |