Ein sicheres Testwerkzeug für Entwickler von Zahlungssystemen und QA-Fachleute. Alle Testnummern sind nicht funktionsfähig und ausschließlich für Entwicklungsumgebungen gedacht.
Beispiel: 79927398713 besteht die Prüfung — die verarbeiteten Ziffern ergeben zusammen 70.
Ändern Sie eine einzige Ziffer, und die Summe ist nicht mehr durch 10 teilbar.
function isValidLuhn(number) {
const digits = number.replace(/\D/g, '');
let sum = 0;
let double = false;
for (let i = digits.length - 1; i >= 0; i--) {
let digit = Number(digits[i]);
if (double) {
digit *= 2;
if (digit > 9) digit -= 9;
}
sum += digit;
double = !double;
}
return sum % 10 === 0;
}
def is_valid_luhn(number: str) -> bool:
digits = [int(c) for c in number if c.isdigit()]
total = 0
for index, digit in enumerate(reversed(digits)):
if index % 2 == 1:
digit *= 2
if digit > 9:
digit -= 9
total += digit
return total % 10 == 0
Eine Nummer kann Luhn bestehen und trotzdem ungültig sein: Die BIN existiert möglicherweise nicht, die Länge passt nicht zum Kartennetzwerk, oder die Karte wurde einfach nie ausgegeben. Luhn erkennt nur versehentliche Fehler wie Tippfehler. Für eine vollständige Prüfung kombinieren Sie es mit dem BIN-Prüfer, und für Übungsnummern nutzen Sie den Kartengenerator.
Testkarten aus jeder BIN erzeugen
Platzhalter-Muster und Massenausgabe
Offizielle Nummern aus Gateway-Dokumentationen
Prüfen, ob eine Kartennummer gültig ist
Kartennetzwerk anhand der BIN erkennen
Visa-Testnummern, die mit 4 beginnen
Mastercard-Testnummern 51–55 / 2221–2720
15-stellige American-Express-Testnummern
Discover-Testnummern 6011 / 65
Kreditkartenzinsen abschätzen
Monatliche Tilgung planen
Anleitungen zum Testen von Zahlungen