API Reference

Webhook Documentation: Verification Event

Overview

The webhook allows your system to receive real-time notifications whenever a verification request is completed whether it's an onboarding or transaction screening process. Whenever a verification request you initiated is completed (Successful or otherwise), our system sends a POST request to the webhook URL you registered. This ensures your application is automatically updated without needing to pull our API.

Webhook Endpoint Requirements

Your webhook endpoint must:

  • Accept POST request over HTTPS
  • Parse JSON payloads
  • Respond with HTTP 200 OK to acknowledge successful receipt
  • Optionally verify our webhook signature

Event Type: Verification Completed

This event is triggered when a verification process is completed for both ONBOARDING and TRANSACTIN products.

Sample Webhook Payload

Successful Verification

{
"status": true,
"detail": "Verification Successful",
"product": "ONBOARDING",
"data": {
"profile_id": "ONB-34f5c102-7bde-4b87-9e23-1124f3b871dd",
"first_name": "John",
"last_name": "Doe",
"email": "[email protected]",
"phone": "+2348012345678",
"verification_status": "VERIFIED",
"created_at": "2025-10-28T12:34:56Z",
"metadata": {
"country": "NG",
"document_type": "NIN"
}
},
"reference": "ONB-34f5c102-7bde-4b87-9e23-1124f3b871dd"
}

Failed Verification

{
"status": false,
"detail": "Verification Failed: Invalid identification number",
"product": "TRANSACTION",
"data": {
"transaction_id": "TXN-91f02a4e-6e3c-11ef-8d3b-0242ac120002",
"amount": 50000,
"currency": "NGN",
"customer": {
"name": "Jane Doe",
"email": "[email protected]"
},
"verification_status": "FAILED",
"failure_reason": "Sanction match found"
},
"reference": "TXN-91f02a4e-6e3c-11ef-8d3b-0242ac120002"
}

Payload Field Description


FieldTypeDescription
statusbooleanIndicates whether the verification was successful (true) or not (false)
detailstringA short human-readable message describing the verification outcome
productstringThe type of verification performed - either ONBOARDING or TRANSACTION
dataobjectContains the complete response object for the verification. This is identical to the
referencestringA unique identifier for the verification record (profile_id for onboarding or transaction

Response Requirements

Your webhook must return:

HTTP/1.1 200 OK
Content.Type: application/json

And optionally include:

( ''received'': true)

If your endpoint does not return 200 OK, our system will retry the webhook up to 3 times using exponential backoff.