Individual Verification API
APIs for initiating and managing identity verification processes for individual customers.
Base URL: https://sandbox.finhub.cloud/api/v2.1
Verification Flow
Initiate
Start verification process and get required documents list
Upload Documents
Submit required identity documents
Review
Documents reviewed by verification team
Complete
Customer activated upon approval
Initiate Verification
Starts the verification process and returns required documents for the customer’s category.
For complete details on authentication, compliance headers, and SDK implementation examples, refer to the Standard HTTP Headers reference documentation.
Request
Bearer token for authentication
Required for Compliance & Audit Client’s originating IP address for KYC compliance tracking Example: 192.168.1.100
Required for Compliance & Audit Client application identifier for security analysis Example: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36
Code Examples
curl -X POST "https://sandbox.finhub.cloud/api/v2.1/customer/individual/cust_12345/verification/initiate" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "X-Tenant-ID: YOUR_TENANT_ID" \
-H "X-Forwarded-For: 192.168.1.100" \
-H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"
200 - Success
404 - Customer Not Found
{
"success" : true ,
"data" : {
"verificationId" : "ver_12345" ,
"status" : "INITIATED" ,
"requiredDocuments" : [
"GOVERNMENT_ID" ,
"PROOF_OF_ADDRESS" ,
"SOURCE_OF_FUNDS"
],
"createdAt" : "2024-01-15T10:30:00Z"
}
}
Submit Verification
Submits verification data and documents for processing.
Request
Type: STANDARD, ENHANCED, SIMPLIFIED
Verification details Document type: PASSPORT, ID_CARD, DRIVERS_LICENSE
Code Examples
curl -X POST "https://sandbox.finhub.cloud/api/v2.1/customer/individual/cust_12345/verification" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "X-Tenant-ID: YOUR_TENANT_ID" \
-H "Content-Type: application/json" \
-d '{
"verificationType": "STANDARD",
"verificationData": {
"documentType": "PASSPORT",
"documentNumber": "AB123456"
}
}'
{
"success" : true ,
"data" : {
"verificationId" : "ver_12345" ,
"status" : "PENDING_REVIEW" ,
"submittedAt" : "2024-01-15T10:45:00Z"
}
}
Get Verification Status
Check the current status of a verification process.
Code Examples
curl -X GET "https://sandbox.finhub.cloud/api/v2.1/verifications/ver_12345" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "X-Tenant-ID: YOUR_TENANT_ID"
{
"success" : true ,
"data" : {
"verificationId" : "ver_12345" ,
"status" : "PENDING_REVIEW" ,
"customerId" : "cust_12345" ,
"documentsSubmitted" : 3 ,
"documentsRequired" : 3 ,
"updatedAt" : "2024-01-15T11:00:00Z"
}
}
Approve Verification (Admin)
Admin Only Endpoint : This endpoint requires admin/tenant privileges and is used to approve customer verifications after document review.
After documents are submitted and reviewed, a tenant admin (or power tenant admin for high-risk customers) must approve the verification to allow customer activation.
Approval Authority Matrix
Customer Risk Level Required Approver Approval Level Endpoint Low Risk Automated / Tenant Admin TENANT_VERIFIED /verifications/{id}/approveMedium Risk Tenant Admin TENANT_VERIFIED /verifications/{id}/approveHigh Risk Power Tenant Admin POWER_TENANT_VERIFIED /verifications/{id}/approve
Endpoint
POST /api/v2.1/verifications/{verificationId}/approve
Path Parameters
Verification ID from the initiation step Example: ver_abc123def456
Bearer token with admin privileges
Request Body
Approver identifier Valid Values:
tenant-admin - For medium-risk customers
power-tenant - For high-risk customers
User ID - Specific admin user
Example: "tenant-admin"
Reason for approval Example: "Documents verified, identity confirmed"
Approval level granted Valid Values:
TENANT_VERIFIED - Standard tenant approval (medium risk)
POWER_TENANT_VERIFIED - Enhanced approval (high risk)
Example: "TENANT_VERIFIED"
Additional notes for the approval Example: "All documents match, address verified via utility bill"
Internal admin notes (not visible to customer) Example: "Approved via E2E test automation"
Code Examples
curl -X POST "https://sandbox.finhub.cloud/api/v2.1/verifications/ver_abc123def456/approve" \
-H "Authorization: Bearer ADMIN_ACCESS_TOKEN" \
-H "X-Tenant-ID: tenant_cloudvault" \
-H "Content-Type: application/json" \
-d '{
"approvedBy": "tenant-admin",
"approvalReason": "Documents verified, identity confirmed",
"approvalLevel": "TENANT_VERIFIED",
"notes": "All documents match, address verified",
"adminNotes": "Standard approval - medium risk customer"
}'
Response
200 - Success
403 - Insufficient Privileges
400 - Invalid Approval Level
{
"code" : 200 ,
"message" : "Verification approved successfully" ,
"data" : {
"verificationId" : "ver_abc123def456" ,
"status" : "APPROVED" ,
"approvalLevel" : "TENANT_VERIFIED" ,
"approvedBy" : "tenant-admin" ,
"approvedAt" : "2026-01-13T10:45:00Z" ,
"customerId" : "cust_123456" ,
"customerStatus" : "VERIFIED" ,
"nextStep" : "ACTIVATION"
}
}
Approval Workflow
Documents Submitted
Customer submits all required verification documents via /verifications/{id}/documents
Admin Review
Tenant admin reviews documents in admin portal or via API
Verify document authenticity
Check identity match
Validate address proof
Confirm source of funds (if required)
Approval Decision
Admin makes approval decision based on risk level Medium Risk: Tenant admin approves with TENANT_VERIFIED
High Risk: Power tenant admin approves with POWER_TENANT_VERIFIED
Customer Notified
Customer receives notification of approval status
Can proceed to consent acceptance
Can proceed to account activation
Best Practices
Approval Guidelines:
Document Completeness - Ensure all required documents are uploaded before approval
Identity Verification - Confirm document photos match selfie/video verification
Address Validation - Verify address matches utility bills/bank statements
Risk Assessment - Use appropriate approval level for customer risk profile
Audit Trail - Always include detailed notes for compliance audit trail
High-Risk Customers : Never approve high-risk customers with TENANT_VERIFIED level. They must receive POWER_TENANT_VERIFIED approval from a power tenant admin, or the activation will fail.
Automation : For low-risk customers in non-regulated industries, verification approval can be automated using rule engines that check document quality scores, facial recognition confidence, and address validation results.
Verification Statuses
INITIATED Verification process started
PENDING_DOCUMENTS Awaiting document uploads
PENDING_REVIEW Documents submitted, awaiting review
APPROVED Verification approved - customer active
REJECTED Verification rejected - see rejection reason
Response Codes
Code Description 200Verification processed successfully 400Invalid request 404Customer or verification not found 500Internal server error
API Schema Reference
For the complete OpenAPI schema specification of this endpoint, including all request and response structures, see the API Schema Mapping document.