# IFSC and banks API

> IFSC to bank and branch.

Branch details for every IFSC in the Reserve Bank's NEFT and RTGS lists: bank, branch, address, MICR and which payment systems the branch supports.

Base URL `https://api.dharun.dev`. No API key. Answers are JSON, `{ "data": ..., "meta": { ... } }`, and errors are `{ "error": { "code", "message" } }` with a matching HTTP status. Rate limit: 600 requests a minute per client.

## Branch for an IFSC

`GET /v1/ifsc/{code}`

Parameters:

- `code` (path, required): 11-character IFSC.

Example: https://api.dharun.dev/v1/ifsc/SBIN0000001

Response:

```json
{
  "data": {
    "ifsc": "SBIN0000001",
    "bank": {
      "code": "SBIN",
      "name": "State Bank of India"
    },
    "branch": "KOLKATA MAIN",
    "address": "SAMRIDDHI BHAWAN, 1 STRAND ROAD, KOLKATA 700 001",
    "city": "Kolkata",
    "centre": "Kolkata",
    "district": "Kolkata",
    "stateCode": "WB",
    "state": "West Bengal",
    "contact": null,
    "micr": "700002021",
    "swift": null,
    "imps": true,
    "neft": true,
    "rtgs": true,
    "upi": true
  },
  "meta": {
    "source": {
      "name": "IFSC dataset",
      "url": "https://github.com/razorpay/ifsc/releases/tag/v2.0.62",
      "licence": "Public domain (dataset), as stated by the publisher",
      "version": "v2.0.62",
      "retrieved": "2026-10-13",
      "attribution": "IFSC data from the open razorpay/ifsc dataset, compiled from Reserve Bank of India and NPCI publications."
    }
  }
}
```

## Search a bank's branches

`GET /v1/ifsc`

Lists branches of one bank, filtered by state, city or text in the branch name or address.

Parameters:

- `bank` (query, required): Four-letter bank code, for example SBIN.
- `q` (query): Text to find in the branch name, address or city.
- `state` (query): State code or name, for example TN or Tamil Nadu.
- `city` (query): Exact city name.
- `limit` (query): Results per page, 1 to 100.
- `offset` (query): Results to skip.

Example: https://api.dharun.dev/v1/ifsc?bank=SBIN&state=TN&q=namakkal

Response, with lists and long text shortened:

```json
{
  "data": [
    {
      "ifsc": "SBIN0011060",
      "bank": {
        "code": "SBIN",
        "name": "State Bank of India"
      },
      "branch": "PARAMATHY VELUR",
      "address": "DIST NAMAKKAL, TAMIL NADU",
      "city": "Erode",
      "centre": "Paramathi",
      "district": "Paramathi",
      "stateCode": "TN",
      "state": "Tamil Nadu",
      "contact": null,
      "micr": "638002870",
      "swift": null,
      "imps": true,
      "neft": true,
      "rtgs": true,
      "upi": true
    },
    {
      "ifsc": "SBIN0062472",
      "bank": {
        "code": "SBIN",
        "name": "State Bank of India"
      },
      "branch": "R AND DB RACC NAMAKKAL",
      "address": "NO.2 DR. SANKARAN ROAD, NAMAKKAL 637001",
      "city": "Erode",
      "centre": "Erode",
      "district": "Erode",
      "stateCode": "TN",
      "state": "Tamil Nadu",
      "contact": null,
      "micr": null,
      "swift": null,
      "imps": true,
      "neft": true,
      "rtgs": true,
      "upi": true
    },
    {
      "ifsc": "SBIN0018751",
      "bank": {
        "code": "SBIN",
        "name": "State Bank of India"
      },
      "branch": "ERUMAIPATTI",
      "address": "THURAIYUR MAIN ROAD, ERUMAIPATTI, DIST.NAMAKKAL, TN-637013",
      "city": "Namakkal",
      "centre": "Erumaipatti",
      "district": "Erumaipatti",
      "stateCode": "TN",
      "state": "Tamil Nadu",
      "contact": "+919445864441",
      "micr": "636002135",
      "swift": null,
      "imps": true,
      "neft": true,
      "rtgs": true,
      "upi": true
    }
  ],
  "meta": {
    "total": 19,
    "limit": 20,
    "offset": 0,
    "source": {
      "name": "IFSC dataset",
      "url": "https://github.com/razorpay/ifsc/releases/tag/v2.0.62",
      "licence": "Public domain (dataset), as stated by the publisher",
      "version": "v2.0.62",
      "retrieved": "2026-10-13",
      "attribution": "IFSC data from the open razorpay/ifsc dataset, compiled from Reserve Bank of India and NPCI publications."
    }
  }
}
```

## Bank for a four-letter code

`GET /v1/banks/{code}`

Parameters:

- `code` (path, required): Four-letter bank code.

Example: https://api.dharun.dev/v1/banks/HDFC

Response:

```json
{
  "data": {
    "code": "HDFC",
    "name": "HDFC Bank",
    "type": "Private",
    "micr": "400240001",
    "upi": true,
    "branches": 11007
  },
  "meta": {
    "source": {
      "name": "IFSC dataset",
      "url": "https://github.com/razorpay/ifsc/releases/tag/v2.0.62",
      "licence": "Public domain (dataset), as stated by the publisher",
      "version": "v2.0.62",
      "retrieved": "2026-10-13",
      "attribution": "IFSC data from the open razorpay/ifsc dataset, compiled from Reserve Bank of India and NPCI publications."
    }
  }
}
```

## Search banks

`GET /v1/banks`

Finds banks by name or code, largest branch network first.

Parameters:

- `q` (query): Text to find in the bank name or code.
- `limit` (query): Results per page, 1 to 100.
- `offset` (query): Results to skip.

Example: https://api.dharun.dev/v1/banks?q=gramin

Response, with lists and long text shortened:

```json
{
  "data": [
    {
      "code": "PKGB",
      "name": "Karnataka Gramin Bank",
      "upi": false,
      "branches": 1818
    },
    {
      "code": "RMGB",
      "name": "Rajasthan Marudhara Gramin Bank",
      "upi": false,
      "branches": 1650
    },
    {
      "code": "MAHG",
      "name": "Maharashtra Gramin Bank",
      "upi": false,
      "branches": 778
    }
  ],
  "meta": {
    "total": 44,
    "limit": 50,
    "offset": 0,
    "source": {
      "name": "IFSC dataset",
      "url": "https://github.com/razorpay/ifsc/releases/tag/v2.0.62",
      "licence": "Public domain (dataset), as stated by the publisher",
      "version": "v2.0.62",
      "retrieved": "2026-10-13",
      "attribution": "IFSC data from the open razorpay/ifsc dataset, compiled from Reserve Bank of India and NPCI publications."
    }
  }
}
```

## Data source

- [IFSC dataset](https://github.com/razorpay/ifsc/releases/tag/v2.0.62), v2.0.62, retrieved 2026-10-13. Licence: Public domain (dataset), as stated by the publisher. IFSC data from the open razorpay/ifsc dataset, compiled from Reserve Bank of India and NPCI publications.

## Guides

- [Show the bank and branch for an IFSC code](https://api.dharun.dev/guides/ifsc-bank-branch.md): Turn an IFSC into a bank name, branch and address, and check that the branch takes NEFT, RTGS, IMPS or UPI before you send money there.
