CUSIP
finance.securities.cusipCommittee on Uniform Security Identification Procedures (American Bankers Association, 1964) identifier. 9-character alphanumeric code for US and Canadian securities. Format: 6-character issuer code + 2-character issue number + 1 check digit. The special characters *, @ and # are reserved for private placement numbers; the check digit values them 36, 37 and 38.
Try a value
CUSIP's rule accepts it.
Reads it as 037833100
0 + 3×2=6 + 7 + 8×2=16→7 + 3 + 3×2=6 + 1 + 0×2=0 = 30
(10 − 30 mod 10) mod 10 = 0
The check digit is 0, and the last digit is 0, which matches.
Algorithm: CUSIP - Wikipedia
Worked samples
DuckDB 1.5.5 · finetype 0.6.66
| Value | As VARCHAR | check_digit | issue | issuer |
|---|---|---|---|---|
| 037833100 | 037833100 | 0 | 10 | 037833 |
| 17275R102 | 17275R102 | 2 | 10 | 17275R |
| 594918104 | 594918104 | 4 | 10 | 594918 |
| 12345*109 | 12345*109 | 9 | 10 | 12345* |
Shape
^[A-Z0-9*@#]{8}[0-9]$| Value | Length | Shape |
|---|---|---|
| 037833100 | 9 | matches |
| 17275R102 | 9 | matches |
| 594918104 | 9 | matches |
| 12345*109 | 9 | matches |
| 03783310 | 8 | rejected: one character short |
Background
Origin
The origins of the CUSIP system go back to the securities settlement paper crunch on Wall Street in 1964.[1] During the paper crunch, rising trading volumes of equity securities settled by the exchange of paper stock certificates caused a backlog in clearing and settlement.[1] The New York Clearing House Association approached the American Bankers Association to develop a more efficient system for trading, clearing and settling securities by uniquely identifying all current and future securities.[1] The first CUSIP directory was published in December 1968.[1]
CUSIP is an American national standard designated ANSI X9.6.[1] The American Bankers Association and Accredited Standards Committee X9 announced the approval of the updated ANSI X9.6 (CUSIP) standard on February 3, 2021.[2] The 2021 approval of ANSI X9.6 followed a review of the market by Accredited Standards Committee X9 as part of the customary five-year maintenance cycle.[2] The CUSIP system is owned by the American Bankers Association and operated by FactSet Research Systems Inc.[1] CUSIP Global Services administers the CUSIP system on behalf of the American Bankers Association.[2]
CUSIP Global Services describes a CUSIP as a 9-character identifier for issuers and their financial instruments in the U.S. and Canada.[3] The first six characters of a CUSIP identify the issuer.[3] The next two characters of a CUSIP identify the issue within the issuer.[3] The final character of a CUSIP is a check character calculated from the previous 8 characters.[3] CUSIP Global Services gives 303075105, the common stock of FactSet Research Systems Inc, as an example CUSIP.[3]
The check digit of a CUSIP uses the Modulus 10 Double Add Double technique, which is based on the Luhn algorithm.[1] In the CUSIP check digit calculation, every second character's value is multiplied by two.[1] In the CUSIP check digit calculation, letters are converted to numbers by their position in the alphabet, starting with A equal to 10.[1]
Use
The first security issued by an issuer is given the issue number 10.[1] In general, CUSIP issue numbers use digits for equities and letters for fixed income.[1] The letters I and O are not used in fixed-income issue numbers, because they might be mistaken for the digits 1 and 0.[1] The issue number 01 is used for all options on an issuer's equities.[1]
Wikipedia gives Apple Inc.'s CUSIP as 037833100.[1] Some clearing bodies ignore or truncate the last digit of a CUSIP.[1] An eight-character code in a column of CUSIPs may be a CUSIP with its check digit dropped, so it is worth checking before treating it as an error. (Meridian's view)
The CUSIP International Numbering System (CINS) is a 9-character identifier that puts a letter in the first position for the issuer's country or region.[3] A CUSIP or CINS identifier always appears in positions 3 to 11 of an ISIN assigned by CUSIP Global Services.[3] CUSIP Global Services gives US0231351067 as the ISIN for Amazon.com Inc common stock, built around the CUSIP 023135106.[3]
Where you'll meet it
The SEC publishes the Official List of Section 13(f) Securities for use in preparing reports filed under Rule 13f-1.[4] An updated Official List of Section 13(f) Securities is published on a quarterly basis.[4] The text file of the SEC's Official List of Section 13(f) Securities carries the CUSIP Number in character positions 01 to 09.[4]
The American Bankers Association reported, on the CUSIP identifier's 2021 re-accreditation, that more than 62.8 million CUSIPs had been issued across a broad range of instruments.[5]
Sources
- [1]CUSIPsecondary source
- [2]CUSIP Re Approved as U.S. Standard for Securities Identificationorganisation
- [3]About CGS Identifiers - CUSIP Global Servicesdocumentation
- [4]Official List of Section 13(f) Securitiesorganisation
- [5]CUSIP Identifier Re-Accredited as U.S. Standard for Securities Identificationorganisation
Detection notes
New in v2. CUSIP is the primary identifier for US/Canadian securities. Check digit uses a custom weighted algorithm where characters at even positions are doubled (similar to Luhn but with alphanumeric conversion). Source: CUSIP Global Services and Wikipedia (CUSIP). The published rule is shape-only, so it takes *, @ and # in any of the first eight characters (the CGS page naming the reserved positions could not be reached, so none is enforced); a discrimination detector counts a value with one of them only when its check digit is right, so a column of codes like ABC*12345 is not kept as cusip.
Use it
$ finetype infer -i "037833100" --mode column
→ finance.securities.cusip
SELECT ft_infer('037833100');
-- → 'finance.securities.cusip'CAST({col} AS VARCHAR)Schema
https://meridian.online/schemas/finance.securities.cusip · Frictionless type string
finetype taxonomy finance.securities.cusip -o json-schema