Phase 3: Verification Process
Verification is the MOST CRITICAL phase. Without APPROVED verification, customers CANNOT be activated.
Verification Levels
Level Approver Customer Type TENANT_VERIFIEDTenant Admin Standard/Low-risk POWER_TENANT_VERIFIEDPower Tenant (Sonnect) High-risk
High-risk customers (PEP, high-risk countries, etc.) require POWER_TENANT approval which may take 1-3 business days.
Step 1: Initiate Verification
Endpoint: POST /api/v2.1/customer/individual/{customerId}/verification/initiateHeaders: X-Tenant-Id : 97e7ff29-15f3-49ef-9681-3bbfcce4f6cd
Authorization : Bearer {customer-jwt-token}
Status: 200 OK{
"code" : 200 ,
"message" : "Verification initiated successfully" ,
"data" : {
"verificationId" : "verif-880e8400-e29b-41d4-a716-446655440030" ,
"customerId" : "cust-550e8400-e29b-41d4-a716-446655440010" ,
"status" : "IN_PROGRESS" ,
"level" : "ENHANCED" ,
"requiredDocuments" : [
"GOVERNMENT_ID" ,
"PROOF_OF_ADDRESS" ,
"SOURCE_OF_FUNDS" ,
"PEP_DECLARATION" ,
"BENEFICIAL_OWNERSHIP"
],
"verificationTypes" : [
"IDENTITY_VERIFICATION" ,
"DOCUMENT_VERIFICATION" ,
"ENHANCED_DUE_DILIGENCE" ,
"SANCTIONS_CHECK"
],
"startedAt" : "2026-01-13T12:00:00.000Z" ,
"dueDate" : "2026-01-16T12:00:00.000Z" ,
"priority" : "HIGH"
}
}
Step 2: Submit Verification Documents
Endpoint: POST /api/v2.1/customer/individual/{customerId}/verificationRequest Body (Identity Verification): {
"verificationType" : "IDENTITY" ,
"verificationData" : {
"documentType" : "PASSPORT" ,
"documentNumber" : "AB1234567" ,
"issuingCountry" : "US" ,
"issuingAuthority" : "U.S. Department of State" ,
"issueDate" : "2020-01-15" ,
"expiryDate" : "2030-01-14" ,
"selfieImage" : "data:image/jpeg;base64,/9j/4AAQSkZJRg..." ,
"documentFrontImage" : "data:image/jpeg;base64,/9j/4AAQSkZJRg..." ,
"documentBackImage" : "data:image/jpeg;base64,/9j/4AAQSkZJRg..." ,
"additionalData" : {
"hologramPresent" : true ,
"chipPresent" : true ,
"biometricData" : true
}
}
}
Status: 200 OK{
"code" : 200 ,
"message" : "Verification submitted successfully" ,
"data" : {
"verificationId" : "verif-880e8400-e29b-41d4-a716-446655440030" ,
"status" : "PENDING_REVIEW" ,
"submittedAt" : "2026-01-13T12:30:00.000Z" ,
"reviewedBy" : null ,
"approvalRequired" : "POWER_TENANT" ,
"estimatedReviewTime" : "1-3 business days" ,
"nextSteps" : [
"Wait for power tenant review" ,
"You will be notified via email when review is complete" ,
"Additional documents may be requested if needed"
]
}
}
Document Types
Required Documents by Verification Level
Verification Type Required Documents IDENTITY_VERIFICATIONPASSPORT or GOVERNMENT_ID DOCUMENT_VERIFICATIONPROOF_OF_ADDRESS ENHANCED_DUE_DILIGENCESOURCE_OF_FUNDS, BENEFICIAL_OWNERSHIP, PEP_DECLARATION SANCTIONS_CHECKAll above documents
Document Specifications
Document Type Accepted Formats Max Size PASSPORT PDF, JPEG, PNG 5 MB GOVERNMENT_ID PDF, JPEG, PNG 5 MB PROOF_OF_ADDRESS PDF, JPEG 5 MB SOURCE_OF_FUNDS PDF 10 MB PEP_DECLARATION PDF 5 MB
Step 3: Check Verification Status
Request
Response - Approved
Response - Pending
Endpoint: GET /api/v2.1/verifications/{verificationId}Headers: Authorization : Bearer {jwt-token}
Status: 200 OK{
"code" : 200 ,
"message" : "Verification status retrieved successfully" ,
"data" : {
"verificationId" : "verif-880e8400-e29b-41d4-a716-446655440030" ,
"customerId" : "cust-550e8400-e29b-41d4-a716-446655440010" ,
"status" : "APPROVED" ,
"type" : "IDENTITY_VERIFICATION" ,
"level" : "POWER_TENANT_VERIFIED" ,
"startedAt" : "2026-01-13T12:00:00.000Z" ,
"submittedAt" : "2026-01-13T12:30:00.000Z" ,
"reviewedAt" : "2026-01-14T10:00:00.000Z" ,
"approvedAt" : "2026-01-14T10:00:00.000Z" ,
"reviewedBy" : "power-tenant-admin-id" ,
"completedAt" : "2026-01-14T10:00:00.000Z" ,
"expiresAt" : "2027-01-14T10:00:00.000Z" ,
"submittedDocuments" : 5 ,
"reviewNotes" : "All documents verified. Customer identity confirmed." ,
"verificationHistory" : [
{
"status" : "INITIATED" ,
"timestamp" : "2026-01-13T12:00:00.000Z" ,
"actor" : "system"
},
{
"status" : "IN_PROGRESS" ,
"timestamp" : "2026-01-13T12:00:00.000Z" ,
"actor" : "customer"
},
{
"status" : "PENDING_REVIEW" ,
"timestamp" : "2026-01-13T12:30:00.000Z" ,
"actor" : "customer"
},
{
"status" : "UNDER_REVIEW" ,
"timestamp" : "2026-01-14T09:30:00.000Z" ,
"actor" : "power-tenant-admin"
},
{
"status" : "APPROVED" ,
"timestamp" : "2026-01-14T10:00:00.000Z" ,
"actor" : "power-tenant-admin"
}
]
}
}
{
"code" : 200 ,
"message" : "Verification status retrieved successfully" ,
"data" : {
"verificationId" : "verif-880e8400-e29b-41d4-a716-446655440030" ,
"status" : "PENDING_REVIEW" ,
"estimatedCompletionTime" : "1-2 business days" ,
"submittedDocuments" : 5 ,
"requiredDocuments" : 5
}
}
Verification Status Flow
Status Descriptions
Status Description INITIATEDVerification process started IN_PROGRESSCustomer submitting documents PENDING_REVIEWAll documents submitted, awaiting review UNDER_REVIEWAdmin reviewing documents APPROVEDVerification approved ✅ REJECTEDVerification rejected ❌ ADDITIONAL_INFO_REQUIREDMore documents needed
Verification Approval (Admin)
Endpoint: POST /api/v2.1/verifications/{verificationId}/approveHeaders: Authorization : Bearer {admin-jwt-token}
X-User-ID : admin-user-id
X-User-Roles : COMPLIANCE_OFFICER
Request Body: {
"adminNotes" : "All documents verified. Customer identity confirmed." ,
"approvedBy" : "ADMIN_USER" ,
"approvalReason" : "All documents verified for individual customer"
}
Status: 200 OK{
"code" : 200 ,
"message" : "Verification approved successfully" ,
"data" : {
"level" : "TENANT_VERIFIED" ,
"approvedBy" : "admin-user" ,
"approvedAt" : "2026-01-14T10:00:00.000Z" ,
"verificationId" : "verif-880e8400-e29b-41d4-a716-446655440030" ,
"status" : "APPROVED"
}
}
Next Step
After verification is APPROVED, proceed to Phase 4: Consent Management .
Phase 4: Consent Management Accept mandatory consents before activation