ISIN (International Securities Identification Number, ISO 6166) identifiziert Wertpapiere weltweit eindeutig. Die Prüfung erfolgt über den Luhn-Algorithmus auf einer erweiterten Ziffernkette, bei der Buchstaben als zweistellige Zahlen kodiert werden (A=10, B=11 …). Das Format ist: 2-Buchstaben-Länderkürzel + 9-stelliger nationaler Code + 1 Prüfziffer.
→ std.validate · std.validate.luhn · std.validate.lei
| Name | Wert | Bedeutung |
|---|---|---|
ISIN_OK | 0 | Gültig |
ISIN_ERR_INVALID_LENGTH | 1 | Länge ≠ 12 |
ISIN_ERR_INVALID_CHAR | 2 | Ungültiges Zeichen |
ISIN_ERR_INVALID_COUNTRY | 3 | Unbekanntes Länderkürzel |
ISIN_ERR_INVALID_CHECK | 4 | Falsche Prüfziffer |
import std.validate.isin;
var isin: pchar := "DE0005140008"; // Deutsche Bank
var result: int64 := ISINValidate(isin);
if (result = ISIN_OK) {
log_info(ISINGetCountry(isin)); // "DE"
log_info(ISINGetNasin(isin)); // "0005140008" (nationaler Code)
log_info(ISINFormat(isin)); // "DE0005140008" (normalisiert)
}
// Prüfziffer berechnen
var check: int64 := ISINCheckDigit("DE000514000"); // gibt 8 zurück
| Signatur | Sichtbarkeit | Beschreibung |
|---|---|---|
ISINValidate(isin: pchar): int64 | pub | ISIN vollständig validieren; gibt ISIN_OK oder Fehlercode zurück |
ISINCheckDigit(isin: pchar): int64 | pub | Prüfziffer für 11-stelligen ISIN-Stamm berechnen |
ISINGetCountry(isin: pchar): pchar | pub | Zweistelliges Länderkürzel extrahieren |
ISINGetNasin(isin: pchar): pchar | pub | Nationalen Wertpapiercode (NSIN, 9 Stellen) extrahieren |
ISINNormalize(isin: pchar): pchar | pub | ISIN normalisieren (Leerzeichen entfernen, Großbuchstaben) |
ISINFormat(isin: pchar): pchar | pub | ISIN formatieren (z.B. „DE0005140008“) |
Letzte Aktualisierung: 2026-05-23