Upload CKYC Records
Upload CKYC records to the platform with CERSAI institution fields. Server-side POST with Bearer auth and JSON records array.
API reference
JWT Bearer token authentication. Obtain a token from the KwikID dashboard.
In: header
CERSAI Financial institution code
Version of the API
CERSAI Region code
CERSAI Username
CERSAI Branch code
For detailed information on the record structure, please refer to the official documentation: https://doc.app.getkwikid.com/docs/Openapi/CKYCUploadApiIntegration
Response Body
curl -X POST "https://__mock__/ckycportalapi/ckyc-upload/" \ -H "Content-Type: application/json" \ -d '{ "fi_code": "string", "version": "string", "region_code": "string", "username": "string", "branch_code": "string", "records": [ { "kyc_ref_no": "string", "pan": "string", "basic_details": { "applicant_name_title": "string", "applicant_first_name": "string", "applicant_middle_name": "string", "applicant_rel_details_flag": "FATHER", "applicant_rel_name_title": "string", "applicant_rel_first_name": "string", "applicant_rel_middle_name": "string", "gender": "M", "dob": "2019-08-24", "disability_info": { "differently_abled_flag": true, "impairment_type": "string", "impairment_percentage": 0, "udid_number": "string" } }, "poa": { "poa_document": "string", "poa_document_number": "string", "poa_address_line_1": "string", "poa_vtc": "string", "poa_state": "string", "poa_country": "string", "poa_pin_code": "string" }, "current_address": { "current_address_same_as_poa_address": "Y", "current_address_line_1": "string", "current_vtc": "string", "current_state": "string", "current_country": "string", "current_pin_code": "string" }, "contact_details": { "mobile_isd": "string", "mobile_number": "string" }, "kyc_verification_details": { "kyc_declaration_date": "2019-08-24", "kyc_declaration_place": "string", "kyc_verification_date": "2019-08-24", "kyc_type": "string", "kyc_verifier_name": "string", "kyc_verifier_designation": "string", "kyc_verifier_branch": "string", "kyc_verifier_employee_code": "string", "kyc_type_of_document_submitted": "string" } } ] }'{
"message": "string",
"status": "string"
}{
"detail": {},
"message": "string"
}{
"detail": {},
"message": "string"
}Overview
Call POST /ckycportalapi/ckyc-upload/ from your backend when your institution must push CKYC records into the KwikID-connected CKYC pipeline. Send Authorization: Bearer <token> and JSON with fi_code, region_code, branch_code, username, version, and records array entries (each with kyc_ref_no, pan, basic_details, and other objects per OpenAPI).
Key features
- Batch upload: Sends multiple
recordsin one request shape. - CERSAI fields: Includes FI and branch metadata your compliance team provides.
Implementation
Step 1: Prepare payload
Work with KwikID to obtain valid fi_code, region_code, and username values for your environment.
Step 2: Call from your backend
POST /ckycportalapi/ckyc-upload/ HTTP/1.1
Host: <verification-api-base-url>
Authorization: Bearer <token>
Content-Type: application/json
{
"fi_code": "<cersai fi code>",
"region_code": "<region>",
"branch_code": "<branch>",
"username": "<cersai username>",
"version": "1",
"records": []
}Fill records per OpenAPI; omit empty arrays in production only if your contract allows.
Error handling
| HTTP status | When |
|---|---|
| 400 | Schema or business validation failure. |
| 401 | Invalid token. |
Benefits
- Automates outbound CKYC synchronization instead of manual portals.