Kreditkarten-Validator
DevPrüfen Sie Kartennummern mit der Luhn-Prüfsumme und erkennen Sie die Marke (Visa, Mastercard, Amex, UnionPay, Discover). Läuft vollständig im Browser.
Remote-URLs werden nicht abgerufen; fügen Sie Ihr JSON direkt ein.
- Marke
- Luhn-Prüfung
- Länge
Auf dieser Seite
Was ist ein Kartennummer-Validator?#
Eine Zahlungskartennummer (die PAN, Primary Account Number) ist keine zufällige Zeichenkette. Ihre führenden Ziffern sind ein BIN-Präfix, das den Herausgeber identifiziert (Visa beginnt mit 4, Mastercard mit 51–55 oder 2221–2720 usw.), ihre Gesamtlänge fällt pro Marke in einen engen Bereich, und ihre letzte Ziffer ist eine Prüfziffer, die so berechnet wird, dass die gesamte Zahl den Luhn-Algorithmus erfüllt. Ein Validator zieht diese drei Signale auseinander und sagt Ihnen für jede beliebige Ziffernfolge, ob sie wohlgeformt ist — nicht, ob es eine echte, ausgegebene, abrechenbare Karte ist.
Diese Seite macht genau das, vollständig in Ihrem Browser. Tippen oder fügen Sie eine Nummer ein und sie identifiziert die Marke anhand des BIN-Präfixes, formatiert die Ziffern in lesbare 4er-Gruppen, führt die Luhn-Prüfsumme aus und prüft die Länge gegen das, was diese Marke tatsächlich verwendet. Es ist das Werkzeug, nach dem Sie greifen, wenn Sie ein Checkout-Formular bauen (passt meine Feldebene-Validierung zu echten BIN-Regeln?), wenn Sie lernen, wie Luhn funktioniert, oder wenn Sie einen Test-Fixture sanity-checken.
Geben Sie niemals eine echte Kartennummer ein. Verwenden Sie Test-PANs (die, die Zahlungs-Gateways für Sandbox-Nutzung veröffentlichen) oder selbst erzeugte Nummern zum Lernen. Alles hier läuft lokal und nichts wird übertragen, aber jede PAN als sensibel zu behandeln ist die richtige Gewohnheit.
So wird es verwendet#
- Lesen Sie den Datenschutz-Hinweis oberhalb der Eingabe — er bestätigt, dass die Nummer nie Ihren Browser verlässt.
- Tippen oder fügen Sie eine Nummer in das Feld Kartennummer ein. Leerzeichen, Bindestriche, Punkte und Buchstaben werden automatisch entfernt; Sie können
4111-1111 1111.1111einfügen und es wird als4111111111111111gelesen. - Klicken Sie auf Beispiel, um eine bekannte Visa-Test-PAN zu laden, oder auf Leeren, um zurückzusetzen.
- Lesen Sie die Ergebniskarte:
- Die Gültigkeit-Zeile sagt, ob die Nummer wohlgeformt ist.
- Das Marke-Badge zeigt den erkannten Herausgeber (Visa, Mastercard, American Express, Discover, UnionPay) oder „Unbekannt“, wenn kein BIN-Präfix passt.
- Gruppiert zeigt die Ziffern formatiert in 4er-Blöcken, kopierfertig.
- Die drei Prüf-Zeilen melden Marke, Luhn-Prüfung (Bestanden / Nicht bestanden) und Länge (Im Bereich / Außerhalb des Bereichs) getrennt, sodass Sie sehen, welche Regel scheiterte, statt nur eines flachen „ungültig“.
Die wichtigsten Funktionen#
- Luhn-Prüfsumme, von Grund auf implementiert. Derselbe Algorithmus, den Karten seit den 1960ern tragen: Die Ziffern werden von rechts nach links durchlaufen, jede zweite wird verdoppelt, summiert und auf Teilbarkeit durch zehn geprüft. Die Prüfziffer am Ende sorgt dafür, dass ein Tippfehler in einer einzelnen Ziffer immer scheitert.
- BIN-Präfix-Erkennung für fünf Marken. Visa, Mastercard, American Express, Discover und UnionPay, in Prioritätsreihenfolge gematcht, sodass die mit
6beginnenden Marken (Discover 6011/65 vs. UnionPay 62) nicht kollidieren. - Längenprüfung pro Marke. Amex hat 15 Ziffern; Visa 13 oder 16; Discover und UnionPay können 16 bis 19 haben. Die angewandte Längenregel ist die für die erkannte Marke, mit Rückgriff auf den allgemeinen 12–19-Bereich, wenn das Präfix unbekannt ist.
- Locale-sichere Ziffer-Normalisierung. Arabisch-Indische (٤١١١), Persische, Devanagari-, Bengalische und Vollbreite-Ziffern-Glyphen (123) werden alle vor der Validierung zu ASCII 0–9 transliteriert, sodass dieselbe PAN unabhängig von Eingabemethode oder Locale validiert wird.
- 4er-Gruppierung für die Anzeige. Eine 16-stellige PAN wird zu
4111 1111 1111 1111; eine 15-stellige Amex wird zur vertrauten3782 8224 6310 005(4-4-4-3). - Streng lokal. Es gibt kein Backend und keine Netzwerkanfrage. Die PAN wird im Speicher verarbeitet und beim selben Tastendruck in die Ergebniskarte gerendert.
Anwendungsbeispiel#
Klicken Sie auf Beispiel, um die kanonische Visa-Test-PAN zu laden, oder tippen Sie 4111 1111 1111 1111. Die Ergebniskarte liest:
Gültigkeit Gültige Kartennummer
Marke Visa
Gruppiert 4111 1111 1111 1111
Luhn-Prüfung Bestanden
Länge Im Bereich (16 Ziffern)
Versuchen Sie nun eine American-Express-Test-PAN mit unhandlicher Formatierung — fügen Sie 3782 822463 10005 ein. Das Werkzeug entfernt die Leerzeichen, erkennt Amex am Präfix 37 und formatiert sie in Amex’ eigene Gruppierung um:
Gültigkeit Gültige Kartennummer
Marke American Express
Gruppiert 3782 8224 6310 005
Luhn-Prüfung Bestanden
Länge Im Bereich (15 Ziffern)
Ändern Sie schließlich eine Ziffer der Visa-Nummer zu 4111 1111 1111 1112. Marke und Länge sind noch in Ordnung, aber Luhn scheitert nun — und das Werkzeug sagt Ihnen das explizit, statt zu verbergen, welche Prüfung brach:
Gültigkeit Ungültige Kartennummer
Marke Visa
Gruppiert 4111 1111 1111 1112
Luhn-Prüfung Nicht bestanden
Länge Im Bereich (16 Ziffern)
Diese Trennung ist wichtig, wenn Sie ein Formular debuggen: Eine scheiternde Luhn-Prüfung deutet auf einen Tippfehler, während eine scheiternde Länge auf die falsche Marke oder einen unvollständigen Einfügevorgang deutet.
FAQ#
Heißt „gültig“, dass die Karte tatsächlich funktioniert?#
Nein. „Gültig“ bedeutet nur, dass die Nummer wohlgeformt ist — ihr Präfix maps zu einer bekannten Marke, ihre Länge passt zu dieser Marke und sie erfüllt Luhn. Das sagt nichts darüber, ob die Karte jemals ausgegeben wurde, aktiv ist oder Guthaben hat. Behandeln Sie das als Formatprüfung, so wie Sie die Form einer E-Mail-Adresse validieren, ohne zu wissen, ob der Posteingang existiert.
Warum fängt Luhn jeden einzelnen Tippfehler ab?#
Wegen der Art, wie die Prüfsumme abwechselnde Ziffern verdoppelt: Das Ändern einer Ziffer verschiebt die Summe um einen Betrag, der nie ein Vielfaches von zehn ist, und das Vertauschen zweier benachbarter Ziffern ändert die Summe so, dass Luhn es ebenfalls erkennt (mit einer engen Ausnahme). Er wurde genau dafür entworfen, die Tippfehler abzufangen, die Menschen an einem Tastenfeld machen.
Die Nummer, die ich eingefügt habe, hat nicht-lateinische Ziffern. Funktioniert sie trotzdem?#
Ja. Der Validator transliteriert Arabisch-Indische, Persische, Devanagari-, Bengalische und Vollbreite-Ziffern-Glyphen vor allem anderen zu ASCII, sodass ٤١١١ als 4111 behandelt wird. Das hält die Validierung über Locales und Eingabemethoden hinweg konsistent, und die angezeigte „Gruppiert“-Form verwendet immer ASCII-Ziffern.
Welche Kartenmarken werden erkannt?#
Visa, Mastercard, American Express, Discover und UnionPay, anhand ihrer öffentlichen BIN-Präfix-Bereiche. Nummern mit einem Präfix, das zu keiner davon passt (die beispielsweise mit 1 oder 9 beginnen), melden „Unbekannt“ als Marke, aber wenn die Länge im allgemeinen 12–19-Bereich liegt und Luhn bestanden wird, wird die Nummer dennoch als wohlgeformt gemeldet — sie gehört einfach nicht zu den fünf modellierten Marken.