POSTBank Account Verification
Verify a bank account by transferring ₹1 (penny drop) and retrieve the account holder name, account status, and branch details in real time.
Performs a live penny-drop transaction of ₹1 to the specified bank account and returns the account holder name as registered with the bank, account status, IFSC details, and the UTR of the debit. Use this before payouts to prevent failures and fraud. The ₹1 is credited to the beneficiary — no refund occurs. Supports all IMPS-enabled banks in India.
Body parameters
| Field | Type | Required | Description |
|---|---|---|---|
initiator_id | string | required | Registered mobile number of the API user (see Platform Credentials).e.g. 9962981729 |
user_code | string | required | User code of the retailer/agent the service is run for.e.g. 20810200 |
client_ref_id | string | optional | Unique reference id per API call, generated by your system.e.g. REQ-20260101-001 |
bank_account | number | required | Complete bank account number to be verified.e.g. 1234567890 |
ifscIFSC Code | string | required | IFSC code of the bank account to be verified (11-character alphanumeric).e.g. SBIN0001234 |
initiator_idstringRequiredRegistered mobile number of the API user (see Platform Credentials).
example: 9962981729
user_codestringRequiredUser code of the retailer/agent the service is run for.
example: 20810200
client_ref_idstringoptionalUnique reference id per API call, generated by your system.
example: REQ-20260101-001
bank_accountnumberRequiredComplete bank account number to be verified.
example: 1234567890
ifscstringRequired· IFSC CodeIFSC code of the bank account to be verified (11-character alphanumeric).
example: SBIN0001234
Headers
| 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.
account_existsbooleanWhether the bank account is valid and active.
account_namestringAccount holder name as registered with the bank. Use for name matching against provided details.
ifscstringIFSC code confirmed by the bank for the verified account.
bankstringFull name of the bank associated with the account.
branchstringBranch name associated with the IFSC code.
utrstringUnique Transaction Reference number of the ₹1 penny-drop credit. Useful for reconciliation.