A single eKYC record with provider routing, stored session metadata, and an audit trail.
This is the minimum data shape needed for the MVP.
Provider payload or mock payload stored as JSON.
{
"status": "success",
"verification": {
"id": "154eaf1d-89e7-4794-9622-1cfc5087a4d5",
"code": 9104,
"person": {
"gender": null,
"idNumber": null,
"lastName": "Hossain",
"addresses": [],
"firstName": "Md Jafrin",
"citizenship": null,
"dateOfBirth": null,
"nationality": null,
"yearOfBirth": null,
"placeOfBirth": null,
"pepSanctionMatch": null
},
"reason": null,
"status": "abandoned",
"comments": [],
"document": {
"type": "PASSPORT",
"state": null,
"number": null,
"country": "BD",
"validFrom": null,
"validUntil": null
},
"attemptId": "4305f78d-16d7-4116-8e33-3c2cb4f0d72e",
"endUserId": "4d837edf-129f-40a4-a83c-76c2dfbf3f44",
"reasonCode": null,
"vendorData": null,
"decisionTime": null,
"acceptanceTime": "2026-07-16T17:41:21.391268Z",
"submissionTime": null,
"additionalVerifiedData": {}
},
"technicalData": {
"ip": "49.196.121.191"
}
}
Every important status change should leave an audit trail.
{
"status": "success",
"verification": {
"id": "154eaf1d-89e7-4794-9622-1cfc5087a4d5",
"code": 9104,
"person": {
"gender": null,
"idNumber": null,
"lastName": "Hossain",
"addresses": [],
"firstName": "Md Jafrin",
"citizenship": null,
"dateOfBirth": null,
"nationality": null,
"yearOfBirth": null,
"placeOfBirth": null,
"pepSanctionMatch": null
},
"reason": null,
"status": "abandoned",
"comments": [],
"document": {
"type": "PASSPORT",
"state": null,
"number": null,
"country": "BD",
"validFrom": null,
"validUntil": null
},
"attemptId": "4305f78d-16d7-4116-8e33-3c2cb4f0d72e",
"endUserId": "4d837edf-129f-40a4-a83c-76c2dfbf3f44",
"reasonCode": null,
"vendorData": null,
"decisionTime": null,
"acceptanceTime": "2026-07-16T17:41:21.391268Z",
"submissionTime": null,
"additionalVerifiedData": {}
},
"technicalData": {
"ip": "49.196.121.191"
}
}
{
"id": "154eaf1d-89e7-4794-9622-1cfc5087a4d5",
"code": 7001,
"action": "started",
"feature": "selfid",
"attemptId": "4305f78d-16d7-4116-8e33-3c2cb4f0d72e",
"endUserId": "4d837edf-129f-40a4-a83c-76c2dfbf3f44",
"vendorData": ""
}
{
"provider": "veriff",
"verificationUrl": "https://saas.veriff.com/v/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3ODQyMjM2ODEsInNlc3Npb25faWQiOiIxNTRlYWYxZC04OWU3LTQ3OTQtOTYyMi0xY2ZjNTA4N2E0ZDUiLCJpaWQiOiJhNjQ2ZWMzNC04ZDJkLTRiODgtOGExZi1iMDQ4MDI2NDg2NmIiLCJ2aWQiOiJjNWJmMWMzOS04ODQ0LTQ0MGMtYjNjNi00ZGFmZTIwNzZlMTgiLCJjaWQiOiJzYWFzLTQiLCJleHAiOjE3ODQ4Mjg0ODF9.Yls1HtqAd7relY7vBWVBB0HNBUzeoUMJfDXHb0xJzpg",
"providerSessionId": "154eaf1d-89e7-4794-9622-1cfc5087a4d5"
}
{
"id": "1e180078-3ff4-4d2a-b070-7940a47e3581",
"code": 7001,
"action": "started",
"feature": "selfid",
"attemptId": "fd189111-3ed8-4faf-8365-8d85f09571b5",
"endUserId": "4d837edf-129f-40a4-a83c-76c2dfbf3f44",
"vendorData": ""
}
{
"provider": "veriff",
"verificationUrl": "https://saas.veriff.com/v/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3ODQyMjM2MTUsInNlc3Npb25faWQiOiIxZTE4MDA3OC0zZmY0LTRkMmEtYjA3MC03OTQwYTQ3ZTM1ODEiLCJpaWQiOiJhNjQ2ZWMzNC04ZDJkLTRiODgtOGExZi1iMDQ4MDI2NDg2NmIiLCJ2aWQiOiJjNWJmMWMzOS04ODQ0LTQ0MGMtYjNjNi00ZGFmZTIwNzZlMTgiLCJjaWQiOiJzYWFzLTMiLCJleHAiOjE3ODQ4Mjg0MTV9.pZvzwhxNFRSvhpVH9FFCrOBpSqblhFTdINFab7_EHjI",
"providerSessionId": "1e180078-3ff4-4d2a-b070-7940a47e3581"
}
{
"provider": "veriff",
"countryCode": "BD",
"dateOfBirth": "1999-06-24T00:00:00.000Z",
"documentType": "passport",
"applicantName": "Md Jafrin Hossain",
"applicantSurname": "Hossain",
"applicantGivenName": "Md Jafrin",
"applicantMiddleName": null
}