Verify bank account
Whether an account exists and whether it belongs to the name given.
Sample reference
This shows the shape of the call — the operation, its fields and what comes back. The exact paths, base URL and any extra fields are confirmed with your sandbox credentials.
{BASE_URL}/v1/kyc/bank-account/verify🚧 This is personal data
Headers
AuthorizationstringrequiredBearer <your API key>. Sandbox and production keys are separate.
Content-Typestringrequiredapplication/json on every request that has a body.
Request body
accountNumberstringrequiredBank account number.
ifscstringrequired11-character IFSC.
namestringoptionalExpected account holder, for a name match.
Response fields
accountHolderNamestringoptionalAs the bank holds it.
nameMatchstringoptionalFULL, PARTIAL or NONE — present when you sent a name.
Values of nameMatch
| Value | Meaning |
|---|---|
| FULL | The name matches. Safe to proceed. |
| PARTIAL | Close but not exact — initials, order or spelling. Decide by your own risk policy, or ask the customer. |
| NONE | The name does not match. Do not proceed on this check alone. |
Errors
Every API returns the same envelope on failure, so one handler covers the whole catalogue.
VALIDATION_ERRORA field is missing or malformed. The message names the field.
UNAUTHORIZEDThe API key is missing, wrong, or for the other environment.
NOT_FOUNDNo resource with that ID or reference exists.
DUPLICATE_REFERENCEThis clientReference was already used. Safe to treat as a repeat of the first call.
RATE_LIMITEDToo many requests. Back off and retry after the Retry-After header.
UPSTREAM_UNAVAILABLEThe biller, bank or network is down. Retry later; nothing was charged.
