Download the PHP package razorpay/ifsc without Composer
On this page you can find all versions of the php package razorpay/ifsc. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download razorpay/ifsc
More information about razorpay/ifsc
Files in razorpay/ifsc
Informations about the package ifsc
ifsc
This is part of the IFSC toolset released by Razorpay. You can find more details about the entire release at ifsc.razorpay.com.
Dataset
If you are just looking for the dataset, go to the releases section and download the latest release.
The latest scraper
workflow on GitHub should publish a release-artifact
as well.
Source
Various official sources are linked below, with the ones currently used marked with a †
- List of NEFT IFSCs from RBI website†
- List of RTGS IFSCs from RBI website†
- RBI maintains several lists:
- NPCI website has several lists:
SWIFT
SWIFT/BIC codes are supported for a few banks.
SBI
- https://sbi.co.in/web/nri/quick-links/swift-codes †
- https://sbi.co.in/documents/16012/263663/sbinri_merged_bran_swfcodet.xlsx †
- Branch codes from above are checked against the SBI Branch Locator to get the IFSC.
PNB
- https://pnbindia.com/downloadprocess.aspx?fid=Zb7ImdUNlz9Ge73qn1nXQg== †
- https://www.pnbindia.in/document/PNB-helpdesk/bic_code.pdf †
HDFC
Installation
Ruby
Add this line to your application's Gemfile:
And then execute:
Or install it yourself as:
Inside of your Ruby program do:
...to pull it in as a dependency.
PHP
composer require php-http/curl-client razorpay/ifsc
The PHP package has a dependency on the virtual package php-http/client-implementation
which requires you to install an adapter, but we do not care which one. That is an implementation detail in your application. You do not have to use the php-http/curl-client
if you do not want to. You may use the php-http/guzzle6-adapter
. Read more about the virtual packages, why this is a good idea and about the flexibility it brings at the HTTPlug docs. You can find a list of suported providers on packagist.
The minimum PHP version supported is 7.3. The package can be installed on PHP>=7.1 however.
Node.js
$ npm install ifsc
Go
This package is compatible with modern Go releases in module mode, with Go installed:
go get github.com/razorpay/ifsc/v2
will resolve and add the package to the current development module, along with its dependencies.
Alternatively the same can be achieved if you use import in a package:
import "github.com/razorpay/ifsc/v2/src/go"
and run go get without parameters.
Finally, to use the top-of-trunk version of this repo, use the following command:
go get github.com/razorpay/ifsc/v2@master
Support Matrix
Only the latest version of each SDK is considered.
Language | Validation | API Client | Sublet Support (Custom) | Bank Constants |
---|---|---|---|---|
PHP | ✅ | ✅ | ✅ (✅) | ✅ |
Ruby | ✅ | ✅ | ✅ (✅) | ✅ |
Node.js | ✅ | ✅ | ❎ (❎) | ✅ |
Go | ✅ | ✅ | ✅ (✅) | ✅ |
API Documentation
This repository also hosts the source code for 5 modules: PHP/Node.js/Ruby/Go as of now. The API is documented below:
PHP
Node.js
Ruby
Make sure you have require 'ifsc'
in your code.
Validating a code offline. (Remember to keep the gem up to date!)
Validate online and retrieve details from the server
If you call code.valid?
before calling code.get
, the validation will be performed offline.
Sublet Branches
You can use the code.bank_name
method to get the bank name considering sublet branches.
This works offline, and doesn't need a network call. This information is stored across 2 files:
src/sublet.json
- Autogenerated from the NPCI websitesrc/custom-sublets.json
- Maintained manually. Coverage is not 100%. PRs are welcome.
Sublet (or Sub-Member) branches are IFSC codes belonging to a large bank, but leased out to
smaller banks. In some cases, entire ranges are given to a specific bank.
For eg, all IFSCs starting with YESB0TSS
belong to Satara Shakari Bank
. These are
maintained manually in custom-sublets.json
.
Error handling
Go
Code Notes
Both the packages ship with a 300kb JSON file, that includes the entire list of IFSC codes, in a compressed, but human-readable format.
The Bank Code and Names list is maintained manually, but verified with tests to be accurate as per the latest RBI publications. This lets us add older Bank codes to the name list, without worrying about them getting deleted in newer builds.
API Development
The IFSC API is maintained in a separate repository at https://github.com/razorpay/ifsc-api.
License
The code in this repository is licensed under the MIT License. License
text is available in the LICENSE
file. The dataset itself
is under public domain.
All versions of ifsc with dependencies
php-http/client-implementation Version ^1.0
php-http/discovery Version ^1.14
php-http/message-factory Version ^1.0
psr/http-message Version ^1.0