ISIN
Type Registry
ISIN
identity.payment.isin International Securities Identification Number. 12-character alphanumeric code that uniquely identifies a specific securities issue. Format: 2-letter country code (ISO 3166-1) + 9-character alphanumeric NSIN + 1 check digit (Luhn on alpha-to-numeric conversion where A=10, B=11, ..., Z=35).
Domain identity›payment
Casts to VARCHAR
Scope Universal
Try it
CLI
$ finetype infer -i "US0378331005"
→ identity.payment.isin DuckDB
Detect
SELECT finetype('US0378331005');
-- → 'identity.payment.isin' Cast expression
CAST({col} AS VARCHAR) Safe cast pipeline
-- Normalise and cast in one step
SELECT TRY_CAST(finetype_cast(my_column) AS VARCHAR) AS clean_value
FROM my_table
WHERE finetype(my_column) = 'identity.payment.isin'; Struct Expansion
check_digit: SUBSTRING({col}, 12, 1)
country: SUBSTRING({col}, 1, 2)
nsin: SUBSTRING({col}, 3, 9) JSON Schema
finetype schema identity.payment.isin {
"$id": "https://noon.sh/schemas/identity.payment.isin",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"description": "International Securities Identification Number. 12-character alphanumeric code that uniquely identifies a specific securities issue. Format: 2-letter country code (ISO 3166-1) + 9-character alphanumeric NSIN + 1 check digit (Luhn on alpha-to-numeric conversion where A=10, B=11, ..., Z=35).",
"examples": [
"US0378331005",
"GB0002634946",
"JP3633400001",
"DE0007164600"
],
"pattern": "^[A-Z]{2}[A-Z0-9]{9}[0-9]$",
"title": "ISIN",
"type": "string"
} Examples
US0378331005GB0002634946JP3633400001DE0007164600