{"id":16366091,"url":"https://github.com/captn3m0/india-isin-data","last_synced_at":"2026-04-02T17:02:17.157Z","repository":{"id":39583790,"uuid":"373860044","full_name":"captn3m0/india-isin-data","owner":"captn3m0","description":"International Securities Identification Numbers for various Indian Securities","archived":false,"fork":false,"pushed_at":"2026-03-28T19:57:16.000Z","size":116800,"stargazers_count":48,"open_issues_count":6,"forks_count":6,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-03-28T21:26:15.208Z","etag":null,"topics":["csv","dataset","funds","git-scraping","india","isin","nsdl","securities"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc0-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/captn3m0.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"captn3m0","ko_fi":"captn3m0","liberapay":"captn3m0"}},"created_at":"2021-06-04T14:01:54.000Z","updated_at":"2026-03-28T19:57:20.000Z","dependencies_parsed_at":"2026-01-12T12:05:04.275Z","dependency_job_id":"372438b1-e181-43e0-850d-704fe3cc1957","html_url":"https://github.com/captn3m0/india-isin-data","commit_stats":null,"previous_names":[],"tags_count":1087,"template":false,"template_full_name":null,"purl":"pkg:github/captn3m0/india-isin-data","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/captn3m0%2Findia-isin-data","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/captn3m0%2Findia-isin-data/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/captn3m0%2Findia-isin-data/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/captn3m0%2Findia-isin-data/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/captn3m0","download_url":"https://codeload.github.com/captn3m0/india-isin-data/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/captn3m0%2Findia-isin-data/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31311013,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-02T12:59:32.332Z","status":"ssl_error","status_checked_at":"2026-04-02T12:54:48.875Z","response_time":89,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["csv","dataset","funds","git-scraping","india","isin","nsdl","securities"],"created_at":"2024-10-11T02:45:19.184Z","updated_at":"2026-04-02T17:02:17.116Z","avatar_url":"https://github.com/captn3m0.png","language":"Shell","funding_links":["https://github.com/sponsors/captn3m0","https://ko-fi.com/captn3m0","https://liberapay.com/captn3m0"],"categories":[],"sub_categories":[],"readme":"# India ISIN Data\n\n[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.6508187.svg)](https://doi.org/10.5281/zenodo.6508187) ![GitHub release (latest by date)](https://img.shields.io/github/v/release/captn3m0/india-isin-data) ![GitHub tag (latest SemVer)](https://img.shields.io/github/v/tag/captn3m0/india-isin-data) ![GitHub repo size](https://img.shields.io/github/repo-size/captn3m0/india-isin-data) [![Flat GitHub Badge](https://img.shields.io/badge/View_Data_on-Flat_Github-GREEN.svg)](https://flatgithub.com/captn3m0/india-isin-data)\n\nISIN Data from various public securities. You can sort and filter this dataset in your browser at https://flatgithub.com/captn3m0/india-isin-data.\n\nSource: [NSDL Website Detailed ISIN Search][nsdl].\n\nAutomatically updated every midnight (IST).\n\n**Note**: The [NSDL Website][nsdl] returns zero valid results for `INA, INB`, so those are not tracked.\n\n# ISIN Structure\n\nISIN (International Securities Identification Number) is defined by [ISO 6166:2021][iso] and adopted in India by BIS as [IS 15415:2021][bis] ([(PDF)][bispdf]) ([(PDF2)](https://archive.org/details/gov.in.is.15415.2003)). ISINs in India are [allotted by NSDL for all securities except Government Securities](https://investor.sebi.gov.in/pdf/reference-material/ppt/PPT-7%20Depository%20Services.pdf) (See Page 9).\n\n\u003e This Indian Standard (Second Revision) which is identical with ISO 6166 : 2021 ‘Financial services - International securities identification number (ISIN)’ issued by the International Organization for Standardization (ISO) was adopted by the Bureau of Indian Standards on recommendation of the Banking and Financial Services Sectional Committee and approval of the Services Sector Division Council.\n\nISIN, as per the ISO standard consists of 3 parts:\n\n1. **A 2 Character country code as prefix (ISO-3166)**. For ISINs issued in India, this will always be `IN`.\n2. **A Basic Identification Number**. 9 alphanumeric characters left padded with zeroes.\n3. **A check digit**.\n\nThe basic number in India is issued by NSDL and is composed of 4 parts:\n\n1. A 1-character **Issuer-Type**. This varies from A-F/9.\n1. A 4-character **Issuer code**. Alphanumeric.\n1. A 2-character **Security Type**. Alphanumeric.\n1. A 2-digit **serial number for the security itself**. Alphanumeric.\n\nHence, each issuer can issue 36^2 = 1296 securities under each type.  \nThe table below explains the same with an example:\n\n\u003cdiv\u003e\n\u003ctable\u003e\n\t\u003ctbody\u003e\n\t\t\u003ctr\u003e\n            \u003cth\u003eField\u003c/th\u003e\n\t\t\t\u003ctd colspan=\"2\" style=\"text-align: center\"\u003eCountry Code\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003eIssuer Type\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\" colspan=\"4\"\u003eIssuer Code\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\" colspan=\"2\"\u003eSecurity Type\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\" colspan=\"2\"\u003eSerial Number\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003eCheck Digit\u003c/td\u003e\n\t\t\u003c/tr\u003e\n\t\t\u003ctr\u003e\n            \u003cth\u003eIndex\u003c/th\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003e1\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003e2\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003e3\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003e4\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003e5\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003e6\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003e7\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003e8\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003e9\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003e10\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003e11\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003e12\u003c/code\u003e\u003c/td\u003e\n\t\t\u003c/tr\u003e\n\t\t\u003ctr\u003e\n            \u003cth\u003eClass\u003c/th\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003eI\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003eN\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003eA-F,0-9\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003ealpha\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003ealpha\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003ealpha\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003ealpha\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003ealpha\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003ealpha\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003ealpha\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003ealpha\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003e0-9\u003c/code\u003e\u003c/td\u003e\n\t\t\u003c/tr\u003e\n\t\t\u003ctr\u003e\n\t\t\t\u003c!-- IN F 789F 01 XA 0 --\u003e\n            \u003cth\u003eSample\u003c/th\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003eI\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003eN\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003eF\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003e7\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003e8\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003e9\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003eF\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003e0\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003e1\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003eX\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003eA\u003c/code\u003e\u003c/td\u003e\n\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003ccode\u003e0\u003c/code\u003e\u003c/td\u003e\n\t\t\u003c/tr\u003e\n\t\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c/div\u003e\n\nHere's the breakdown of the above ISIN (`INF789F01XA0`):\n\n- Country Code: `IN`\n- Issuer Type: `F` (Mutual Funds)\n- Issuer Code: `789F` (UTI Mutual Fund)\n- Security Type: `01` (Equity Shares)\n- Serial Number: `XA`\n- Check Digit: `0`\n\n### Issuer Types\n\nIssuer Type|Issuer Type Code\n-----------|-------------\nCentral Government|`A`\nState Government|`B`\nMunicipal Corporation|`C`\nUnion Territories|`D`\nCompany, Statutory Corporation, Banking Company|`E`\nMutual Funds|`F`\nPartly Paid-up Shares|`G`\nCentral Government Security|`0`\nState Government Security|`1`\nState Government Security|`2`\nState Government Security|`3`\nState Government Security|`4`\n\n### Issuer Code\n\nPlease see `issuers.csv` (🚧)\n\n\n### Security Type\n\nThe security type is defined in the 8th and 9th character of the ISIN code. The same security type code can have different meanings against different issuers.\n\nThis table is based on analysis done on real data. A lot of categories (such as Bonds) are fluid, and the exact description in the dataset might not match the security type in this table (As an example the dataset might state \"Deep Discount Bond\" instead of \"Bond\". Note that some other sources on the Internet might differ with this table. If you find a ISIN that does not fit in the following table correctly, please create an issue with the ISIN.\n\nIssuer Type | Security Type Code  |   Security Type\n------------|--------|-----------------\nCompany (`INE`) | 01     |   Equity Share\nCompany (`IN9`) | 01     |   Equity Share\nMutual Fund (`INF`) | 01 |   Mutual Fund Unit\nCompany (`INE`) | 02     |   Postal Savings Scheme\nCompany (`INE`) | 03     |   Preference Share\nCompany (`IN9`) | 03     |   Preference Share\nCompany (`INE`) | 04     |   Preference Share\nCompany (`IN9`) | 04     |   Preference Share\nCompany (`INE`) | 05     |   Deep Discount Bond\nCompany (`INE`) | 06     |   Floating Rate Bond\nCompany (`INE`) | 07     |   Bond / Debenture\nCompany (`INE`) | 08     |   Bond / Debenture\nCompany (`INE`) | 09     |   Bond / Debenture\nCompany (`INE`) | 10     |   Floating Rate Bond\nCompany (`INE`) | 11     |   Bonds\nCompany (`INE`) | 13     |   Warrants\nCompany (`INE`) | 14     |   Commercial Paper\nCompany (`INE`) | 15     |   Securitised Instrument\nCompany (`INE`) | 16     |   Certificate of Deposit\nCompany (`INE`) | 18     |   Securitised Instrument\nCompany (`IN9`) | 19     |   Mutual Fund Unit\nCompany (`INF`) | 19     |   Mutual Fund Unit\nMutual Fund (`INF`) | 1A |   Mutual Fund Unit\nCompany (`INE`) | 20     |   Rights Entitlement\nCompany (`INE`) | 21     |   Indian Depository Receipt\nMutual Fund (`INF`) | 22 |   Alternate Investment Fund\nCompany (`INE`) | 23     |   Infrastructure Investment Trust\nCompany (`INE`) | 24     |   Municipal Bond\nCompany (`INE`) | 25     |   Real Estate Investment Trusts\nMutual Fund (`INF`) | A1 |   Mutual Fund Unit\nCompany (`INE`) | A7     |   Debenture\nMutual Fund (`INF`) | B1 |   Mutual Fund Unit\nCompany (`INE`) | B7     |   Debenture\nMutual Fund (`INF`) | C1 |   Mutual Fund Unit\n\n### Check Digit\n\nThe last digit (check-digit) is calculated using the [Luhn Algorithm](https://en.wikipedia.org/wiki/Luhn_algorithm) with a slight change to accommodate alphanumeric characters. Alphabets are converted to digits by adding `9` to the usual numeric value of each letter. For example `A=10, B=12, C=13, ..., Z=35`. A few examples:\n\nISIN|Payload|Check Digit|Validate\n----|-------|--------|---\n`INE009A01021`|`18 23 14 009 10 0102`|`1`|[CyberChef](https://gchq.github.io/CyberChef/#recipe=Remove_whitespace%28%29Luhn_Checksum%28%29\u0026input=MTggMjMgMTQgMDA5IDEwIDAxMDI)\n`US0378331005`|`30 28 0378331001`|`5`|[CyberChef](https://gchq.github.io/CyberChef/#recipe=Remove_whitespace%28%29Luhn_Checksum%28%29\u0026input=MzAgMjggMDM3ODMzMTAwMQ)\n`AU0000XVGZA3`|`10 30 0000 33 31 16 35 10`|`3`|[CyberChef](https://gchq.github.io/CyberChef/#recipe=Remove_whitespace%28%29Luhn_Checksum%28%29\u0026input=MTAgMzAgMDAwMCAzMyAzMSAxNiAzNSAxMA)\n`INF789F01XA0`|`18 23 15 789 15 01 33 10`|`0`|[CyberChef](https://gchq.github.io/CyberChef/#recipe=Remove_whitespace%28%29Luhn_Checksum%28%29\u0026input=MTggMjMgMTUgNzg5IDE1IDAxIDMzIDEw)\n\n### References:\n\n- https://www.basunivesh.com/how-your-dmat-mutual-funds-and-shares-isin-structured/\n- https://theindianstockbrokers.com/what-is-isin-number-and-how-to-find-it/\n- https://en.wikipedia.org/wiki/International_Securities_Identification_Number\n- [ISO 6166][bispdf], Annex A.\n\n\n# Code\n\nYou can run the following to generate the `ISIN.csv` file from scratch:\n\n```\ngit clone https://github.com/captn3m0/india-isin-data.git\nmake check\nmake ISIN\n```\n\n## Dependencies:\n\n- https://github.com/ericchiang/pup\n- https://stedolan.github.io/jq/\n- https://www.gnu.org/software/parallel/\n- https://curl.se/\n- https://www.gnu.org/software/sed/\n\n# Alternative Sources\n\nISINs for India can be found at a few other sources:\n\n- https://nsdl.co.in/downloadables/html/hold-mutual-fund-units.html\n- [The Kuvera Mutual Fund Details API](https://stoplight.captnemo.in/docs/kuvera/reference/Kuvera.yaml/paths/~1mf~1api~1v4~1fund_schemes~1%7Bcodes%7D.json/get) returns ISIN codes.\n- The [OpenFIGI API](https://www.openfigi.com/api) returns results for some (not all) Indian ISINs.\n- The National Stock Exchange has [a few](https://www1.nseindia.com/products/content/debt/wdm/gsec_reporting_homepage.htm) [pages](https://www1.nseindia.com/products/content/debt/ncbp/ncbp_issues.htm) listing Government Security ISINs.\n- Similarly, the Reserve Bank of India also lists Government Securities at a few pages: [[1]](https://www.rbi.org.in/Scripts/bs_viewcontent.aspx?Id=3876), [[2]](https://rbi.org.in/Scripts/bs_viewcontent.aspx?Id=1956), [[3](https://rbi.org.in/scripts/Bs_viewcontent.aspx?Id=3973)], [[4](https://rbi.org.in/scripts/BS_PressReleaseDisplay.aspx?prid=51712#AN1)], [[5](https://rbi.org.in/scripts/BS_PressReleaseDisplay.aspx?prid=52077)]. \n- [Securities admitted for Dematerialisation](https://nsdl.co.in/securities_admitted_for_dematerialisation.php) on the NSDL website\n- [CSV Download](https://nsdl.co.in/list-codes.php) on the NSDL website. This doesn't include [Government securities](https://forum.fossunited.org/t/indias-isin-dataset/1090/4?u=nemo)\n\n# License\n\nLicensed under the [Creative Commons Zero v1.0 Universal](LICENSE) license. There are no guarantees made as to the correctness or accuracy of this data.\n\n[nsdl]: https://nsdl.co.in/master_search.php\n[iso]: https://www.iso.org/standard/78502.html\n[bis]: https://www.services.bis.gov.in/php/BIS_2.0/bisconnect/ISL/is_details?IDS=NzUxNg%3D%3D\n[bispdf]: https://law.resource.org/pub/in/bis/S07/is.15415.2003.pdf\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcaptn3m0%2Findia-isin-data","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcaptn3m0%2Findia-isin-data","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcaptn3m0%2Findia-isin-data/lists"}