ISIN-Prüfziffer
Für den Stamm US037833100 lautet die Prüfziffer 5, die vollständige ISIN also US0378331005. Ergänzen Sie die Kennung eines Wertpapiers, bevor Sie sie speichern oder drucken, oder prüfen Sie eine zwölfstellige ISIN aus der Datei eines Partners. Kostenlos in Ihrem Browser.
- Kostenlos
- Läuft in Ihrem Browser
- Ohne Anmeldung
- Ihre Daten bleiben auf Ihrem Gerät
Im Browser ausführen – kostenlos
Rechenbeispiel
- Code
- US037833100
- Umgerechnet
- 3028037833100
- Berechnungsmodus
- Compute
- Eingabe
- US037833100
- Ländercode
- US
Eine International Securities Identification Number (ISIN) ist der zwölfstellige Code, der ein Wertpapier nach ISO 6166 marktübergreifend eindeutig kennzeichnet. Die ersten beiden Zeichen sind der Ländercode, die nächsten neun die nationale Wertpapierkennnummer (NSIN), und das zwölfte ist eine numerische Prüfziffer, die durch Umwandlung von Buchstaben in Zahlen und den Luhn-Algorithmus entsteht. Diese Fähigkeit implementiert ausschließlich diese offizielle Regel: Der Modus compute akzeptiert genau elf alphanumerische Zeichen und liefert die Prüfziffer plus die vollständige zwölfstellige ISIN; der Modus validate akzeptiert eine vollständige zwölfstellige ISIN und meldet, ob die Schlussziffer dem neu berechneten erwarteten Wert entspricht.
So wird die ISIN-Luhn-Prüfziffer berechnet
Nach ISO 6166 hat eine ISIN stets zwölf Zeichen: zwei Großbuchstaben für das Ausgabe-Land oder die Region, neun alphanumerische Zeichen für die NSIN (oft eine nullaufgefüllte nationale Nummer wie CUSIP oder SEDOL) und eine abschließende Ziffer als Prüfziffer. Zur Berechnung nehmen Sie den elfstelligen Körper und erweitern jeden Buchstaben zu zwei Dezimalziffern über die feste Abbildung A gleich zehn bis Z gleich fünfunddreißig, während Dezimalziffern einzeln bleiben.
Das Ergebnis ist eine reine Ziffernkette, deren Länge davon abhängt, wie viele Buchstaben im Körper vorkommen — Ländercodes liefern stets vier Ziffern, weil beide Zeichen Buchstaben sind. Wenden Sie den klassischen Luhn-Algorithmus von rechts auf diese erweiterte Kette an: verdoppeln Sie jede zweite Ziffer beginnend mit der rechtsäußersten Körperziffer, denn sobald die Prüfziffer angehängt ist, sitzt diese Körperziffer an Position zwei von rechts der vollen Nummer. Ist das Doppelte einer Ziffer größer als neun, subtrahieren Sie neun (gleichwertig: Zehner und Einer des Produkts addieren).
Addieren Sie alle gewichteten Werte; die Prüfziffer ist zehn minus diese Summe modulo zehn, erneut modulo zehn, sodass die vollständige Ziffernfolge inklusive Prüfziffer eine durch zehn teilbare Luhn-Summe hat. Die Validierung berechnet die erwartete Ziffer aus den ersten elf Zeichen neu und vergleicht sie mit dem Zwölften, das stets eine Dezimalziffer null bis neun sein muss. Der Algorithmus ist deterministisch und lokal: kein Emittentenregister-Aufruf, keine Uhr, keine Zufälligkeit.
Gegenüber Karten- oder IMEI-Luhn-Tools ist die Suchintention hier eng: Menschen, die einen ISIN-Prüfziffer-Rechner für einen elfstelligen Körper oder einen zwölfstelligen Wertpapier-ISIN-Checker brauchen, kein Zahlungs- oder Gerätewerkzeug.
Eingabevertrag, Modi und Fehlerverhalten
Senden Sie ein code-Feld, das nach Trim und Großschreibung nur die Buchstaben A bis Z und die Ziffern null bis neun enthält. Falsche Länge ist ein expliziter Fehler, der Modus und gesendete Länge nennt — elf für compute, zwölf für validate — damit Client-Formulare «elf Zeichen nötig» zeigen können, ohne zu raten. Leere Zeichenketten, fehlendes code, ungültige mode-Werte, ein nichtzifferiges zwölftes Zeichen bei validate und ein Körper, der die Form zwei Buchstaben plus neun alphanumerisch verfehlt, scheitern vor jeder Luhn-Summe und werden nicht berechnet.
Bevorzugen Sie compute, wenn Sie ISINs für Stammdaten und Etiketten erzeugen oder vervollständigen; bevorzugen Sie validate, wenn Sie einen Handel, Import oder Lookup an eine volle ISIN von Nutzer, Partnerdatei oder Marktdaten-Feed knüpfen. Validierungsaufgaben, die schlechte Form ablehnen, werden nicht berechnet; eine wohlgeformte zwölfstellige Kette mit lediglich falscher Prüfziffer liefert valid false ohne Ausnahme.
Wo ISIN-Prüfziffern in reale Abläufe passen
Emittenten, Agenten und Nummerierungsstellen erhalten nationale Codes und müssen die offizielle Luhn-Prüfziffer anhängen, bevor eine ISIN auf Prospekten, Corporate Actions oder regulatorischen Filings gedruckt wird. Onboarding-Formulare von Brokern und Verwahrstellen validieren zwölfstellige ISINs bei der Eingabe, damit eine einzige Vertauschung keine Phantomposition und keine fehlgeschlagene Settlement-Anweisung erzeugt. ETL-Jobs, die Instrumenten-Stammdaten laden, laufen jede ISIN-Spalte in einer CSV- oder FIX-Security-Definition ab, rufen den Modus validate auf und stellen Zeilen mit valid false unter Quarantäne — sowohl menschliche Edits als auch Generator-Bugs.
Behandeln Sie eine bestandene ISIN-Prüfung nicht als Nachweis, dass das Wertpapier notiert, liquide oder frei von Corporate Actions ist; sie beweist nur, dass die Luhn-Ziffer zum erweiterten Land und NSIN unter den Standardgewichten der ISO 6166 für die internationale Wertpapieridentifikation passt.
Anwendungsfälle
ISIN-Spalten in Wertpapierbeständen auditieren
Validieren Sie stapelweise jede zwölfstellige ISIN in einer Middle-Office-, Verwahrer- oder Marktdaten-CSV und stellen Sie Zeilen unter Quarantäne, deren Prüfziffer nicht mehr dem neu berechneten erwarteten Wert entspricht.
Häufige Fragen
Was ist eine ISIN-Prüfziffer?
Sie ist das zwölfte Zeichen einer ISIN, eine Ziffer null bis neun, die mit dem Luhn-Algorithmus berechnet wird, nachdem Buchstaben A–Z über die ersten elf Zeichen zu 10–35 erweitert wurden, sodass Tipp- und Lesefehler meist vor Speicherung oder Handel erkannt werden.
Was bedeuten die einzelnen Teile einer ISIN?
Die ersten zwei Buchstaben stehen für das Land oder die Region der Emission, die nächsten neun Zeichen für die nationale Wertpapiernummer, und das zwölfte Zeichen ist die Prüfziffer. Bei US0378331005 ist US das Land, 037833100 die nationale Nummer und 5 die Prüfziffer.
Wie wird die ISIN-Prüfziffer berechnet?
Jeder Buchstabe wird durch zwei Ziffern ersetzt, von A als zehn bis Z als fünfunddreißig; Ziffern bleiben unverändert. Danach läuft das Luhn-Verfahren von rechts: jede zweite Ziffer ab der letzten verdoppeln, über neun neun abziehen, alles addieren und zehn minus den Rest nehmen.
Bedeutet eine gültige ISIN, dass das Wertpapier gehandelt wird?
Nein. Eine korrekte Prüfziffer zeigt nur, dass die zwölf Zeichen zusammenpassen. Es wird kein Emittentenverzeichnis abgefragt, daher sagt das Ergebnis nichts darüber, ob das Wertpapier notiert oder abgewickelt wird.
Kann die Prüfziffer einer ISIN ein Buchstabe sein?
Nein. Das zwölfte Zeichen ist immer eine Ziffer von 0 bis 9. Buchstaben kommen nur im Ländercode und in der nationalen Nummer vor; eine ISIN mit einem Buchstaben am Ende wird abgelehnt.
Verwandte Tools
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/enc/isin \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"code":"US037833100"}'const res = await fetch("https://api.kit.forhosting.com/enc/isin", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"code": "US037833100"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/isin",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"code": "US037833100"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/isin", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"code":"US037833100"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"code":"US037833100"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/isin", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"code": "US037833100"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.isin",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
Technische Hinweise
Nicht alphanumerische Eingaben, falsche Längen und fehlerhafte Land- oder NSIN-Formen scheitern mit invalid_input statt stillschweigender Bereinigung, sodass Sie nie einen halb bereinigten Bezeichner speichern. Dieselbe reine Arithmetik läuft kostenlos im Browser und zum veröffentlichten API-Preis, ohne Netzabruf von Emittenten-Datenbanken und ohne die Behauptung, dass eine gültige Prüfsumme bedeute, das Wertpapier sei notiert, abgewickelt oder frei von Corporate Actions.
Eingabevertrag, Modi und Fehlerverhalten
Leerzeichen, Bindestriche, Symbole und Satzzeichen werden als nicht alphanumerische Eingabe mit invalid_input abgelehnt, damit ein still bereinigter Wert nie den Speicher erreicht. Der Modus compute ist der Standard: Die Engine verlangt genau elf Zeichen mit zweistelligem Ländercode und neunstelligem alphanumerischem NSIN, liefert check_digit als einzeichenige Zeichenkette, liefert with_check als die zwölfstellige ISIN, die Sie drucken oder speichern können, und liefert außerdem converted (die erweiterte Ziffernkette), country_code und nsin für Audit-Spuren. Der Modus validate verlangt genau zwölf Zeichen, deren letztes eine Ziffer ist; die Antwort meldet valid true, wenn die Schlussziffer dem neu berechneten expected_check_digit entspricht, und enthält stets payload (die ersten elf Zeichen), converted, check_digit, expected_check_digit und length zwölf. Alias-Schlüssel wie isin, number und text werden für dasselbe Lastfeld akzeptiert, sodass Integrationen, die bereits «isin» sprechen, nicht umbenennen müssen. Weil der Pfad reines Parse ohne Uhr, Zufallsquelle oder Netz ist, liefert derselbe JSON-Body auf dem kostenlosen Browser-Tool und der API zu $0.002 pro erfolgreicher Anfrage stets dasselbe JSON-Ergebnis.
Wo ISIN-Prüfziffern in reale Abläufe passen
Middle-Office- und Stammdaten-Teams berechnen expected_check_digit neu, wenn eine Gegenpartei einen Code am Telefon vorliest oder aus einem PDF einfügt, und fangen Tippfehler ab, bevor der Handel gegen das falsche Wertpapier gebucht wird.
Integrationsbeispiele
Einen 11-Zeichen-Körper für Stammdaten vervollständigen
Rufen Sie den Modus compute mit dem elfstelligen Land+NSIN-Körper auf, speichern Sie with_check und veröffentlichen Sie die zwölfstellige ISIN im Instrumentenstamm, in Prospekten oder Corporate-Action-Mitteilungen.
Getippte oder importierte ISINs bei der Eingabe prüfen
Wenn ein Formular, FIX-Feed oder Partnerfile zwölf Zeichen sendet, rufen Sie den Modus validate auf und blockieren Sie die Buchung bei valid false; zeigen Sie expected_check_digit, um einen einzelnen Tippfehler zu korrigieren.
Technische Fragen
Wie berechne ich eine ISIN-Prüfziffer mit dieser API?
Senden Sie POST mit code gleich genau elf alphanumerischen Zeichen (zweibuchstabiger Ländercode plus neunstelliger NSIN) und mode compute (oder lassen Sie mode weg). Die Antwort enthält check_digit und with_check (die vollständige zwölfstellige ISIN).
Wie prüfe ich eine vollständige zwölfstellige ISIN?
Senden Sie POST mit der zwölfstelligen Zeichenkette und mode validate. Die Antwort enthält valid, check_digit, expected_check_digit, payload (Zeichen ohne das letzte) und converted (die erweiterte Ziffernkette).
Was passiert bei falscher Länge, Bindestrichen oder Buchstaben-Prüfziffer?
Nicht alphanumerische Eingabe, Längen ungleich elf (compute) oder zwölf (validate), ein nichtzifferiges zwölftes Zeichen und Körper, die nicht zwei Buchstaben plus neun alphanumerisch sind, werden mit invalid_input abgelehnt. Fehlgeschlagene Form-Validierungen werden nicht berechnet.
Ist das ISIN-Prüfziffer-Tool kostenlos?
Das Browser-Tool ist kostenlos und läuft lokal. API-Aufrufe nutzen das Prepaid-KIT-Guthaben zum veröffentlichten Basispreis $0.002; ungültige Eingabe wird nie berechnet.