Razorpay IFSC

Finance API · Works in India · Bank code validation

TL;DR

Razorpay's IFSC API is a free service for looking up Indian bank branch details by IFSC (Indian Financial System Code) — the alphanumeric code used for RTGS, NEFT, and IMPS fund transfers. Pass any valid IFSC code as a URL parameter and get back the bank name, branch, full address, city, district, state, phone number, and MICR code. Built by Razorpay (a major Indian payment gateway), free and open with no authentication required. Essential for Indian fintech apps that need to validate bank details before processing payments.

Quick start: https://ifsc.razorpay.com/SBIN0RTKGB

No API key needed — just make a request!

Lookup IFSC code SBIN0RTKGB: https://ifsc.razorpay.com/SBIN0RTKGB

How to Use This API

1. Lookup Any IFSC Code

Replace the IFSC in the URL:

https://ifsc.razorpay.com/SBIN0RTKGB

Returns JSON: BANK, BRANCH, ADDRESS, CITY, DISTRICT, STATE, MICR, CONTACT, PHONE, BANKCODE, IFSC.

2. Validate Multiple IFSC Codes

If the code is invalid, the API returns a 404 with {"error":"Not Found"}.

3. JavaScript — Form Validation

async function validateIFSC(ifsc) {
  const resp = await fetch(`https://ifsc.razorpay.com/${ifsc}`);
  if (!resp.ok) {
    console.error('Invalid IFSC code');
    return null;
  }
  const data = await resp.json();
  console.log(`Bank: ${data.BANK}`);
  console.log(`Branch: ${data.BRANCH}`);
  console.log(`Address: ${data.ADDRESS}`);
  console.log(`City: ${data.CITY}, ${data.STATE}`);
  console.log(`MICR: ${data.MICR}`);
  return data;
}

validateIFSC('SBIN0RTKGB');

4. Python — Batch Bank Lookup

import requests

ifsc_codes = ['SBIN0RTKGB', 'HDFC0001234', 'ICICI0005678']
for code in ifsc_codes:
    resp = requests.get(f'https://ifsc.razorpay.com/{code}')
    if resp.status_code == 200:
        bank = resp.json()
        print(f"{code}: {bank['BANK']} — {bank['BRANCH']}, {bank['CITY']}")
    else:
        print(f"{code}: Invalid")

Frequently Asked Questions

What is an IFSC code?
IFSC (Indian Financial System Code) is an 11-character alphanumeric code that identifies bank branches in India. It's required for RTGS, NEFT, and IMPS electronic fund transfers. The first 4 characters identify the bank (e.g., SBIN, HDFC), the 5th is always 0, and the last 6 identify the branch.
How many IFSC codes are in the database?
The API covers all banks and branches participating in India's electronic payment systems — over 150,000+ branch codes from both public and private sector banks.
Do I need an API key?
No. Razorpay provides this API completely free with no authentication required. It's a public service for the Indian developer community.
What data does the API return?
Bank name (BANK), branch (BRANCH), address (ADDRESS), city (CITY), district (DISTRICT), state (STATE), IFSC code, MICR code, contact number (CONTACT/PHONE), bank code (BANKCODE), and branch center (CENTRE).
What format does the response use?
JSON. Invalid codes return an HTTP 404 with a JSON error message. Valid codes return HTTP 200 with the full branch details.
Are there rate limits?
No documented rate limits. The API is designed for production usage by Razorpay's merchant base and is quite reliable.

API Details

API URL
https://ifsc.razorpay.com/{IFSC}
Documentation
ifsc.razorpay.com
Category
Finance
Authentication
Not Required
Geographic Coverage
India — all participating banks and branches

What You Can Build