Verify OTP and Get Details
Complete EPF verification with OTP and session values from login. Returns member data in the response body.
API reference
JWT Bearer token authentication. Obtain a token from the KwikID dashboard.
In: header
Client provides unique EPF userid assigned to them.
Token received in the 'login' api
Client provides unique OTP received on the register phone number.
Session ID received in the 'login' api
Response Body
curl -X POST "https://__mock__/verification/v2/epf/verify-otp" \ -H "Content-Type: application/json" \ -d '{}'{
"data": {}
}{
"detail": {
"<location>": {
"<field_name>": [
"string"
]
}
},
"message": "string"
}{
"detail": {},
"message": "string"
}Overview
Call POST /verification/v2/epf/verify-otp from your backend after Login and Get OTP returns session_details. Send Authorization: Bearer <token> and JSON with username, token, otp, and sessionid as documented in OpenAPI (values come from the login response and the SMS OTP).
On 200 OK, read data for EPF member details. Treat as sensitive PII.
Key features
- Completes UAN flow: Turns OTP + session into structured EPF data.
- Server-side only for API token and OTP handling.
Implementation
Step 1: Call from your backend
POST /verification/v2/epf/verify-otp HTTP/1.1
Host: <verification-api-base-url>
Authorization: Bearer <token>
Content-Type: application/json
{
"username": "123456789012",
"token": "<from login>",
"otp": "<sms-otp>",
"sessionid": "<from login>"
}Step 2: Use data
Map fields into your CRM or decision engine. Minimize retention to policy.
Error handling
| HTTP status | When |
|---|---|
| 400 | Validation or OTP mismatch. |
Security notes
- Do not return raw
datato unauthenticated browser sessions.
Benefits
- Confirms employment-linked EPF context when the user completes OTP.