Jeder Code, der IBANs entgegennimmt, speichert oder versendet, braucht Testdaten: Formularvalidierung, Onboarding-Abläufe, Datenbank-Fixtures, Zahlungsintegrationen, Lasttests. Echte IBANs von Kunden haben in einer Testumgebung nichts zu suchen, und von Hand getippte IBANs haben selten korrekte Prüfziffern. Eine Test-IBAN, manchmal auch Fake- oder Dummy-IBAN genannt, löst beide Probleme: Sie besteht die strukturelle Prüfung, und keine Bank hat sie je ausgegeben.
Was ein IBAN-Prüfer kontrolliert
Die Prüfung einer IBAN läuft in Ebenen ab. Jede Ebene erkennt andere Probleme, und eine Test-IBAN kommt nur durch einen Teil davon.
| Prüfung | Was sie kontrolliert | Eine erzeugte Test-IBAN |
|---|---|---|
| Zeichen | Nur Buchstaben und Ziffern, nachdem Leerzeichen entfernt wurden | Besteht |
| Land | Die ersten beiden Buchstaben sind ein Land, das die IBAN verwendet | Besteht |
| Länge | Die Länge passt zu diesem Land, zum Beispiel 22 für Deutschland | Besteht |
| Muster | Jede Stelle der BBAN hat die richtige Zeichenart (Ziffer oder Buchstabe) | Besteht |
| Prüfziffern | Der MOD-97-Rest ist 1 | Besteht |
| Nationale Prüfziffern | Länderregeln innerhalb der BBAN, etwa der italienische CIN oder der französische clé RIB | Besteht in den 27 Ländern, deren offiziellen Algorithmus wir berechnen; anderswo zufällig, kann scheitern |
| Bankverzeichnis | Der Bankcode existiert | Besteht in den 84 Ländern mit echten Bankcodes im realistischen Modus, der Voreinstellung; sonst scheitert sie meist |
| Kontoabfrage | Das Konto existiert und der Name stimmt überein | Scheitert |
Die letzten beiden Prüfungen brauchen Daten von Banken. Im Vereinigten Königreich vergleicht Confirmation of Payee den Namen des Kontoinhabers mit dem, den der Zahler eingegeben hat; im Euroraum macht die Empfängerüberprüfung (Verification of Payee) dasselbe vor einer Überweisung. Eine zufällige IBAN kann diese Prüfungen nicht bestehen, und das soll sie auch nicht. Nationale Prüfziffern in der IBAN erklärt die nationale Ebene Land für Land.
Die ersten fünf Prüfungen und die nationalen Prüfziffern, wo die Regel bekannt ist, brauchen keine externen Daten. Unser IBAN-Prüfer führt sie in Ihrem Browser aus und zeigt, welche fehlschlägt. Unsere Open-Source-JavaScript-Bibliothek iban-check führt alle fünf anhand des SWIFT IBAN Registry aus und gibt einen Fehlercode zurück, der angibt, welche fehlgeschlagen ist. Algerien und Marokko stehen nicht im Registry, daher weist sie deren IBANs zurück. Sie ist auf npm als iban-check verfügbar.
Fehler, die die IBAN-Verarbeitung kaputt machen
Diese Bugs tauchen in IBAN-Code immer wieder auf:
- Eine Länge für alle Länder. Deutsche IBANs haben 22 Zeichen, norwegische aber 15 und maltesische 31. Prüfen Sie die Länge pro Land, nicht mit einer einzigen festen Zahl.
- Nur Ziffern nach dem Ländercode. Niederländische, britische und viele andere IBANs enthalten Buchstaben in der BBAN (
NL91ABNA0417164300). Ein regulärer Ausdruck, der nur Ziffern zulässt, weist sie zurück. - Das Druckformat speichern. Speichern Sie IBANs im elektronischen Format, ohne Leerzeichen und in Großbuchstaben, und fügen Sie Leerzeichen erst bei der Anzeige hinzu.
- Die IBAN als Zahl behandeln. Sie enthält Buchstaben und kann die BBAN mit Nullen beginnen. Speichern Sie sie als String.
- Ganzzahlüberlauf bei MOD-97. Für jedes Land außer Norwegen und Belgien ist die umgewandelte Zahl länger, als eine 64-Bit-Ganzzahl fassen kann (etwa 19 Stellen); die deutsche hat 24. Verwenden Sie beliebige Genauigkeit oder die schrittweise Restberechnung aus So funktionieren IBAN-Prüfziffern.
- Unsichtbare Zeichen durch Kopieren und Einfügen. Nutzer fügen IBANs mit geschützten Leerzeichen, Tabulatoren oder Zeilenumbrüchen ein. Entfernen Sie alle Leerraumzeichen, nicht nur das normale Leerzeichen.
- Eingabe in Kleinbuchstaben. Man tippt
de89.... Wandeln Sie vor der Prüfung in Großbuchstaben um.
Welche Test-IBAN Sie verwenden sollten
Zufällige Test-IBANs eignen sich für die meisten Tests: Formularvalidierung, Fixtures, Seed-Daten, Lasttests und Screenshots. Verwenden Sie mehrere Länder, nicht nur Ihr eigenes, damit die Verarbeitung von Längen und Mustern getestet wird; lange Formate wie Malta (31) und kurze wie Norwegen (15) sind gute Grenzfälle. Standardmäßig verwendet der Generator den realistischen Modus: nur Ziffern und, wo verfügbar, den Bankcode einer echten Bank mit einer zufälligen Kontonummer, sodass Code, der die Bank nachschlägt, sie findet. Auch eine solche IBAN wurde von keiner Bank ausgegeben, sie könnte aber zufällig mit einem echten Konto übereinstimmen. Schalten Sie Realistisch aus, um vollständig zufällige IBANs zu erhalten: Dann ist auch der Bankcode zufällig, was eine unbekannte Bank testet, und Buchstaben können erscheinen, wo das Format sie erlaubt.
Zahlungsdienstleister veröffentlichen oft eigene Test-IBANs, die in ihrer Sandbox bestimmte Ergebnisse auslösen, etwa eine erfolgreiche oder eine fehlgeschlagene Lastschrift. Wenn Sie den Ablauf eines Anbieters von Anfang bis Ende testen, verwenden Sie die IBANs aus der Dokumentation dieses Anbieters.
Verwenden Sie nie die IBAN einer echten Person in Tests, Demos oder Dokumentation, und überweisen Sie nie Geld an eine erzeugte IBAN. Die Wahrscheinlichkeit, dass eine zufällige IBAN zu einem echten Konto passt, ist sehr gering, aber nicht null.
Test-IBANs in Ihre Pipeline bringen
Der Generator zeigt eine IBAN mit erklärten Segmenten. Seine Option „Liste generieren“ erstellt 5 bis 100 IBANs eines Landes auf einmal, zum Kopieren oder zum Herunterladen als CSV, JSON, SQL oder Klartext, mit einer Spalte pro Segment. Für automatisierte Tests:
- Die REST-API liefert bis zu 100 gültige IBANs pro Anfrage für jedes unterstützte Land und prüft auch IBANs. Sie braucht einen API-Schlüssel; siehe die API-Dokumentation.
- Der öffentliche MCP-Server lässt KI-Agenten und Coding-Assistenten Test-IBANs ohne Schlüssel erzeugen und prüfen.
- Der Download hinter „Liste generieren“ ist eine einfache URL ohne Schlüssel, sodass ein Skript eine Fixture-Datei direkt abrufen kann (30 Downloads pro Minute).
- Für Tests, die offline laufen müssen, erzeugen Sie einmal einen Satz IBANs und committen ihn als Fixtures.
# 50 niederländische IBANs als CSV, ohne Schlüssel
curl -o fixtures.csv "https://generaterandomiban.com/export/nl?format=csv&count=50"
# 5 IBANs von der API, mit Schlüssel
curl -H "X-API-Key: YOUR_KEY" \
"https://generaterandomiban.com/api/v1/generate/NL?count=5"
Quellen
- SWIFT IBAN Registry: die Länge und BBAN-Struktur jedes Landes.
- ISO 13616-1:2020: der Aufbau der IBAN.
- ISO/IEC 7064: das Prüfziffernverfahren MOD 97-10.
- Regulation (EU) 2024/886: Verification of Payee für Euro-Überweisungen.