---
type: "product"
title: "Bank Account Verification API India | Penny Drop & Name Match"
description: "Verify bank account details instantly with Eko's Bank Verification API. Penny drop verification, IFSC validation, and account holder name matching for secure payments."
category: "verification"
canonical: "https://eps.eko.in/products/bank-verification-api"
---


> **Canonical URL:** https://eps.eko.in/products/bank-verification-api
> This is a machine-readable Markdown version of the page for AI agents and LLMs. The primary (HTML) version lives at the canonical URL above.

# Bank Account Verification API for Penny Drop & Name Matching in India

Verify bank account details to prevent failed transactions and reduce operational costs. Instant verification with penny-drop and account holder name matching.

_Verify bank account details instantly with penny-drop verification_

To get started, fill the form at https://eps.eko.in/signup (with your name, mobile number and email) or call us at +919513181707

## Features

- Penny Drop Verification: Send ₹1 to verify account exists and is active before large payments.
- Account Status Check: Verify if the account is active, dormant, or closed.
- Name Matching: Get account holder name for verification against provided details.
- IFSC Validation: Validate IFSC codes and get bank branch details.
- Real-time Results: Get verification results within seconds for seamless workflows.
- Bulk Verification: Verify multiple accounts in a single API call for batch processing.

## Benefits

- Reduce Failed Payments: Verify accounts before disbursement to minimize transaction failures and reversals.
- Prevent Fraud: Match account holder names to prevent payments to wrong accounts.
- Lower Operational Costs: Reduce cost of failed transactions, reversals, and manual reconciliation.
- Instant Verification: Real-time results for seamless customer and vendor onboarding.
- All Banks Supported: Verify accounts across all major banks in India through a single API.
- 24/7 Availability: Round-the-clock verification service for reliable, high-volume workflows.

## Use Cases

- Salary Disbursement
- Vendor Payments
- Loan Disbursement
- Insurance Claims
- Refund Processing
- Incentive Payments
- Commission Payments
- E-commerce Seller Onboarding

## What Can You Verify With Bank Account Verification API?

- **Account Holder's Name** — Account holder name as registered with the bank. Use for name matching against provided details.
- **Account Status** — Verification outcome for the account (e.g. VALID).
- **Account Status Code** — Machine-readable account status code (e.g. ACCOUNT_IS_VALID).
- **Bank Name** — Name of the bank associated with the account.
- **Account Holder's Name** — Account holder name as registered with the bank. Use for name matching against the details you hold.
- **Verification Status** — Verification outcome for the account, e.g. success.
- **Entries** — Per-account verification results — one object for each account submitted in the batch.
- **Name Match Score** — Confidence score for the supplied-name vs name-at-bank match.
- **Name Match Result** — Name match result (e.g. MATCH / NO_MATCH).

## API Preview — Bank Account Verification

`POST /tools/kyc/bank-account/sync`

### Example inputs

| Field | Value |
| --- | --- |
| Bank Account | 026291800001191 |
| IFSC Code | YESB0000262 |

### Example outputs

| Field | Value |
| --- | --- |
| Account Holder's Name | JOHN DOE |
| Account Status | VALID |
| Account Status Code | ACCOUNT_IS_VALID |
| Bank Name | YES BANK |

## API Preview — Bank Account Verification (Pennyless)

`POST /tools/kyc/bank-acc-verify-pennyless`

### Example inputs

| Field | Value |
| --- | --- |
| Bank Account Number | 38759149196 |
| IFSC Code | SBIN0007515 |

### Example outputs

| Field | Value |
| --- | --- |
| Account Holder's Name | Master YASHWANT  BASNETT |
| Verification Status | success |

## API Preview — Bulk Bank Account Verification

`POST /tools/kyc/bank-account/bulk`

### Example inputs

| Field | Value |
| --- | --- |
| Entries | [{"reference_id":"1","bank_account":"026291800001191","ifsc":"YESB0000262"},{"reference_id":"2","bank_account":"00011020001772","ifsc":"HDFC0000001"}] |
| Entries[].Reference Id | 1 |
| Entries[].Bank Account | 026291800001191 |
| Entries[].Ifsc | YESB0000262 |

### Example outputs

| Field | Value |
| --- | --- |
| Bulk Reference Id | 90438 |
| Batch Status | RECEIVED |

## API Preview — Check Bulk Bank Account Verification Status

`GET /tools/kyc/bank-account/bulk/status`

### Example inputs

| Field | Value |
| --- | --- |
| Bulk Reference Id | 90438 |

### Example outputs

| Field | Value |
| --- | --- |
| Name At Bank | JOHN DOE |
| Bank Name | YES BANK |
| Name Match Score | 100 |
| Name Match Result | MATCH |
| Account Status | VALID |

## Integration Steps

1. **[Sign Up](/console)** — Sign up in minutes with your mobile number (OTP verify).
2. **Verify Identity** — Complete your basic KYC with PAN and address details to verify your identity.
3. **Test APIs Live** — Load funds into your wallet and test the verification APIs live — evaluate before you integrate.
4. **[Integrate with AI](/ai)** — Ready to build? Visit our AI hub for free plugins & tools to integrate faster.
5. **Go Live** — Start verifying real bank accounts before payments.

## FAQs

### What is penny drop verification?
Penny drop is a method where a small amount (₹1) is transferred to verify the account is active and details are correct. The account holder name is returned for matching.

### Do customers receive the ₹1?
Yes, the ₹1 is credited to the verified account. This is a real transaction that confirms the account is active and can receive funds.

### How accurate is name matching?
Our intelligent name matching algorithm handles variations, abbreviations, and common spelling differences with 99%+ accuracy.

### Which banks are supported?
We support all major banks in India including SBI, HDFC, ICICI, Axis, Kotak, Yes Bank, and 100+ other banks.

### What if verification fails?
Failed verifications return specific error codes indicating the reason - invalid account, closed account, incorrect IFSC, etc. - helping you take appropriate action.

### How do I get started?
Four steps: **sign up** at the [developer console page](/console), verify your identity with PAN and address details, load your wallet to test the APIs live, then integrate and go live. Sandbox credentials are issued immediately — you can call your first endpoint before any paperwork clears.

### What is EPS?
**EPS (Eko Platform Services)** is the technology arm of Eko — the developer tools, AI tooling and APIs that power modern fintech integration, from money transfer and AePS to identity verification.

### What are the different ways to integrate with Eko EPS?
Three paths, pick whichever suits your stack:

- Call the **REST APIs** directly.
- Use our official **Node.js, Python, PHP, Go or Java SDKs** to skip request-signing boilerplate.
- Let an **AI coding agent** build it via our [MCP server and agent skills](/ai#install).

For multi-step flows (onboard a sender, *then* transfer) start from a [transaction-flow recipe](/recipe) rather than wiring single endpoints together yourself.

### How does API authentication work?
Each request carries your static `developer_key` header plus a per-request `secret-key` header — an **HMAC-SHA256** signature of the current timestamp, keyed by your access key. The access key itself is **never sent over the wire**. You receive UAT keys on signup and production keys after KYC.

The [How Authentication Works](/docs/how-auth-works) guide has the full signing recipe in five languages plus an **in-browser playground** that generates and verifies a real `secret-key` against your own access key.

### Why does my API call return 401 Unauthorized?
Authentication failed. For the known causes, the response body's `status` names the check that failed:

- `2483` — The developer_key is wrong.
- `2484` — The secret-key (signature) is wrong.
- `2485` — The secret-key-timestamp is more than 2 minutes older or newer than the server clock, or was reused from an earlier request.
- `2486` — The secret-key-timestamp is not in milliseconds (13 digits) — often seconds (10 digits).
- `2487` — The secret-key or secret-key-timestamp header is missing.

If your signature checks out in the [secret-key playground](/docs/how-auth-works#try-it-secret-key-playground) and you still get a `401`, make sure the base URL matches your keys (UAT vs production) and, in production, that your server's IP is whitelisted.

### Is there a sandbox environment for testing?
Yes. A full **sandbox** is available immediately on signup — test your integration end-to-end before going live, no commitment required. For offline work you can also run our [mock server](/ai#artifacts) (`npx -y @ekoindia/eps-mock-server`) and get canned responses with no network calls at all.

### What are the sandbox and production base URLs?
Sandbox and production share the same paths and differ **only** by base URL:

- UAT / Sandbox — `https://staging.eko.in/ekoapi/v3`
- Production — `https://api.eko.in/ekoicici/v3`

A common cause of failures is calling the sandbox URL with live credentials, or vice-versa — **make sure the base URL matches the keys you are using**.

### Do I need to whitelist my server IP?
It's optional. **IP whitelisting** is available for **production** access as an extra layer of security — share your **static public (server) IP** with us and we'll whitelist it.

### Can an AI coding agent build the integration for me?
Yes — that is the fastest path. Point your agent (Claude Code, Codex, Cursor, Copilot, …) at our **MCP server** and it can look up any endpoint, generate correctly-signed requests, and scaffold the integration in your own stack. Install it in [one step from the AI hub](/ai#install), or start from a [ready-made prompt](/ai#quick-start).

We also publish an **OpenAPI 3.1 spec**, a **Postman collection** and per-agent **context packs** (`AGENTS.md`, `CLAUDE.md`, `.cursorrules`) so an agent has the ground truth instead of guessing.

### What response times can I expect?
Most verification APIs return in **real time with sub-second responses**, and 99th-percentile latency stays under two seconds across verification endpoints. Transaction APIs (DMT, AePS, BBPS) respond within seconds.

### Can the API handle high volumes?
Yes. The API is designed to handle **large-scale volumes** reliably without performance degradation.

### How is API usage billed?
Usage is billed **per successful API call** with no minimum commitment. Volume-based pricing tiers are available — see the [pricing calculator](/pricing) for indicative rates, or contact our team for a custom quote.

## API Endpoints

- [Bank Account Verification](https://eps.eko.in/docs/bank-account-verification.md) (POST)
- [Bank Account Verification (Pennyless)](https://eps.eko.in/docs/bank-account-verification-pennyless.md) (POST)
- [Bulk Bank Account Verification](https://eps.eko.in/docs/bulk-bank-account-verification.md) (POST)

## API Documentation

- [Full developer docs](https://eps.eko.in/docs/bank-account-verification)

## Related Products

- [Mobile/OTP Verification](https://eps.eko.in/products/mobile-otp-verification-api): Send, verify & validate mobile OTPs with a signed proof token ([markdown](https://eps.eko.in/products/mobile-otp-verification-api.md))
- [PAN Verification](https://eps.eko.in/products/pan-verification-api): Full PAN identity fetch in <2 seconds ([markdown](https://eps.eko.in/products/pan-verification-api.md))
- [GST Verification](https://eps.eko.in/products/gst-verification-api): GSTIN lookup & filing status ([markdown](https://eps.eko.in/products/gst-verification-api.md))
- [DigiLocker Integration](https://eps.eko.in/products/digilocker-api): Fetch notarised docs — Aadhaar, DL, marksheets, etc ([markdown](https://eps.eko.in/products/digilocker-api.md))
- [UPI ID (VPA) Verification](https://eps.eko.in/products/upi-verification-api): Validate UPI ID (VPA) in real time ([markdown](https://eps.eko.in/products/upi-verification-api.md))

- [Site index](https://eps.eko.in/index.md): Full list of API products, industries, and solution packs
