Skip to content
Nemo edited this page Aug 11, 2022 · 5 revisions

The API says an IFSC code is invalid while my bank says it is correct.

We maintain parity with the RBI Excel Sheets. Sometimes, it takes us upto a week to publish a new release once RBI puts it on their site. Please validate whether the IFSC is correct on the following places:

Please do not use random websites on the internet as source for a IFSC being correct. Not every website on the internet is accurately updated (like we try to), and most of them just ignore old IFSCs that were deleted. See results for LAVB0000126 as an example - the bank no longer considers any LAVB0 IFSCs as valid, but many websites on the internet report them as correct still.

If you've validated a IFSC as being correct on atleast one of the above official links, and it is not showing up on ifsc.razorpay.com, please create an issue on GitHub or post details on #tech_ifsc on the Razorpay Slack (if you have access).

Note that RBI updates the data on a somewhat-regular schedule, and our updates are slightly behind those. As such there might be a small delay, and the IFSC you have caught might be getting updated in the next release.

If the bank in question was merged, an IFSC mapping may be available, see below.

What happens to merged banks?

Merged banks typically have a grace period (usually around 3 months) during which old IFSCs are honoured. We publish a merger sheet (if possible) to help map older IFSCs to new ones that can be used to migrate your data. Here are previous migration mapping spreadsheets:

Why are all the packages in a single repo?

This is an experimental decision to see how far we can go along before we need to split the packages. We've survived so far, and golang is the only one where we're now facing some issues (solvable though).

Where is the API codebase?

Here. The release versions are synced against this repo

What is a sublet branch?

Lots of small banks don't get their own IFSC code and instead rent one single IFSC code from a large bank to run their entire NEFT/IMPS/RTGS transactions. We maintain a list at sublet.json (auto-generated) and custom-sublets.json

1500 banks!. I didn't know there were so many.

Neither did we till we started. Lots of banks in this list are Co-operative banks with very little to show. The ones that have their bank code ending in X are usually out of the ambit of online banking, unless they get a sublet IFSC code (See above).

Why JSON?

Human-readable. It just works. We've done some experiments with SQlite, but language coverage becomes harder since libsqlite becomes a dependency.

Is it HDFC Bank or HDFC Bank Pvt Limited?

The first. We have guidelines on how we maintain the list of bank names.

I have a cool idea for this project, how do I help?

File a issue on GitHub. We have some cool ideas on where this project can go further, but not everything is possible. If you work at Razorpay, join us at the tech_ifsc channel.