POSTValidate PAN
Validate the sender's PAN to complete PPI Levin KYC and return the updated wallet profile.
Submits the sender's PAN to finish PPI Levin onboarding KYC. On success the response returns the updated customer_profile (with the verified sender name and recalculated limits).
Request
Path parameters
| Field | Type | Required | Description |
|---|---|---|---|
customer_id | string | required | Sender's 10-digit mobile number.e.g. 9444444444 |
customer_idstringRequiredSender's 10-digit mobile number.
example: 9444444444
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 |
pan_number | string | optional | The PAN number of the sender.e.g. ABCDE1234F |
wallet_id | string | optional | Wallet identifier, when applicable.e.g. |
wallet_token | string | optional | Wallet authentication token, when applicable.e.g. |
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
pan_numberstringoptionalThe PAN number of the sender.
example: ABCDE1234F
wallet_idstringoptionalWallet identifier, when applicable.
example:
wallet_tokenstringoptionalWallet authentication token, when applicable.
example:
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
Responses
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.
customer_profileobjectUpdated wallet profile with verified sender name and recalculated limits.
namestringVerified registered name of the sender.
next_allowed_limitstringRemaining transfer limit for the period (INR).
balancestringCurrent wallet balance (INR).
sender_namestringVerified name of the sender.
next_allowed_limitnumberRemaining transfer limit at the top level (INR).