POSTSend OTP (eKYC)
Initiate AePS Fingpay eKYC by sending an OTP to the agent's registered Aadhaar-linked mobile number.
First-time KYC follows three steps in order: Send OTP → Verify OTP → Biometric. On subsequent days, use the Daily KYC (biometric-only) endpoint.
This is the first step in the one-time AePS Fingpay eKYC flow. The OTP is delivered to the number passed in customer_id. The eKYC flow — Send OTP → Verify OTP → Biometric — must be completed once per agent before they can perform any AePS transactions. This step is a prerequisite; do not confuse it with the Daily KYC which is required on each calendar day.
- AePS (Fingpay) — Cash Withdrawal — Aadhaar-enabled cash withdrawal: one-time agent activation and eKYC, daily KYC, then the biometric withdrawal.
Request
Body parameters
| Field | Type | Required | Description |
|---|---|---|---|
initiator_id | string | required | Registered mobile number of the API user (see Platform Credentials).e.g. 9962981729 |
client_ref_id | string | optional | Unique reference ID per API call, generated by your system (max 20 characters).e.g. 2026010100123456789 |
user_code | string | required | Unique code of your user/agent/retailer the service is run for. Use `Onboard Agent` API to register your userse.g. 20810200 |
aadhar | string | required | RSA-encrypted, Base64-encoded Aadhaar number of the agent undergoing eKYC.e.g. BASE64_ENCRYPTED_AADHAAR |
customer_id | string | required | Registered mobile number of the agent/merchant undergoing eKYC. The OTP is delivered to this number.e.g. 9123456789 |
latlong | string | required | Agent's GPS coordinates as `latitude,longitude`. Required for security and fraud prevention.e.g. 28.6139,77.2090 |
initiator_idstringRequiredRegistered mobile number of the API user (see Platform Credentials).
example: 9962981729
client_ref_idstringoptionalUnique reference ID per API call, generated by your system (max 20 characters).
example: 2026010100123456789
user_codestringRequiredUnique code of your user/agent/retailer the service is run for. Use `Onboard Agent` API to register your users
example: 20810200
aadharstringRequiredRSA-encrypted, Base64-encoded Aadhaar number of the agent undergoing eKYC.
example: BASE64_ENCRYPTED_AADHAAR
customer_idstringRequiredRegistered mobile number of the agent/merchant undergoing eKYC. The OTP is delivered to this number.
example: 9123456789
latlongstringRequiredAgent's GPS coordinates as `latitude,longitude`. Required for security and fraud prevention.
example: 28.6139,77.2090
These headers authenticate and sign every request. See How Auth Works for details.
| Field | Type | Required | Description |
|---|---|---|---|
developer_key | string | required | Static API key issued to your account after KYC. |
secret-key | string | required | Dynamic per-request signature: base64(HMAC-SHA256(timestamp, base64(access_key))). |
secret-key-timestamp | string | required | Current time in milliseconds since UNIX epoch, used to compute secret-key. Must match server time. |
content-type | string | required | application/jsone.g. application/json |
developer_keystringRequiredStatic API key issued to your account after KYC.
secret-keystringRequiredDynamic per-request signature: base64(HMAC-SHA256(timestamp, base64(access_key))).
secret-key-timestampstringRequiredCurrent time in milliseconds since UNIX epoch, used to compute secret-key. Must match server time.
content-typestringRequiredapplication/json
example: application/json
Response types
| response_type_id | Meaning | Next step |
|---|---|---|
1600 | OTP request has been sent | Verify OTP (eKYC) |
Responses
1600OTP request has been sentNext:Verify OTP (eKYC)
statusnumberPrimary success indicator (0 = success).
messagestringHuman-readable response / error message.
response_status_idnumberGranular status id; see the shared error-codes table.
response_type_idnumberA unique id for every possible response shape (success or error) — useful for client logic branching and analytics.
dataobjectAPI-specific response payload.
reference_tidstringTransaction reference ID for this eKYC session. Must be passed to the Verify OTP API.
otp_ref_idstringReference ID for the OTP session. Must be passed to the Verify OTP API.