IFSC & MICR Code API
Free JSON API — no API key, no rate limits for reasonable use.
Use the IFSC Lookup API to integrate Indian bank branch data directly into your application. Look up branches by IFSC code or MICR code. Each request returns the full branch record including address, MICR code, SWIFT code, and supported payment methods (NEFT, RTGS, IMPS, UPI). No authentication required.
Endpoint
GET /api/ifsc/{IFSC_CODE}
Example request
GET https://ifsclookup.in/api/ifsc/SBIN0003994
Path parameter
Example Response (200 OK)
{
"ifsc": "SBIN0003994",
"bank_code": "SBIN",
"bank_name": "State Bank of India",
"branch": "Gandhi NAGAR",
"address": "GANDHI NAGAR BRANCH, BHOPAL, MADHYA PRADESH",
"city": "BHOPAL",
"district": "BHOPAL",
"state": "MADHYA PRADESH",
"contact": "07554973456",
"micr": "462002005",
"swift": null,
"neft": true,
"rtgs": true,
"imps": true,
"upi": true
}
Response Fields
Error Response (404)
{ "detail": "IFSC not found" }
Returned when the IFSC code does not exist in the database.
MICR Code Lookup
Look up a bank branch by its 9-digit MICR code (printed on cheque leaves).
Endpoint
GET /api/micr/{MICR_CODE}
Example request
GET https://ifsclookup.in/api/micr/462002005
Path parameter
Example Response (200 OK)
{
"ifsc": "SBIN0003994",
"bank_code": "SBIN",
"bank_name": "State Bank of India",
"branch": "Gandhi NAGAR",
"address": "GANDHI NAGAR BRANCH, BHOPAL, MADHYA PRADESH",
"city": "BHOPAL",
"district": "BHOPAL",
"state": "MADHYA PRADESH",
"contact": "07554973456",
"micr": "462002005",
"swift": null,
"neft": true,
"rtgs": true,
"imps": true,
"upi": true
}
The response fields are identical to the IFSC endpoint.
Error Response (404)
{ "detail": "MICR code not found" }
Returned when the MICR code does not exist in the database.
Usage Examples
curl
curl https://ifsclookup.in/api/ifsc/HDFC0000001
curl https://ifsclookup.in/api/micr/400002002
JavaScript (fetch)
// By IFSC
const res = await fetch('https://ifsclookup.in/api/ifsc/HDFC0000001');
const data = await res.json();
console.log(data.bank_name, data.branch);
// By MICR
const res2 = await fetch('https://ifsclookup.in/api/micr/400002002');
const data2 = await res2.json();
console.log(data2.bank_name, data2.micr);
Python (requests)
import requests
# By IFSC
data = requests.get('https://ifsclookup.in/api/ifsc/HDFC0000001').json()
print(data['bank_name'], data['branch'])
# By MICR
data = requests.get('https://ifsclookup.in/api/micr/400002002').json()
print(data['bank_name'], data['micr'])
Data is sourced from RBI and NPCI and updated periodically. Always verify critical IFSC codes with your bank before initiating large transactions.