Visa, Mastercard, Amex and more
For developers and testers: check a card number's length, network and Luhn check digit. Format only, never whether a card is real.
Checked in your browser. Nothing you type is sent to us or stored. Use a test number, not your own card.
Try an example
Numbers payment processors publish for testing. None belongs to a real card.
The first digits identify the card network, the length has to be one that network issues, and the last digit is a Luhn check digit computed from all the others. The Luhn method catches any single wrong digit and most swaps of two neighbouring digits.
This tool is meant for checking test numbers and the shape of numbers in a form you are building. It runs in your browser and sends nothing, but there is no reason to type a real card number into any page you are not paying on.
Whether a card with the number exists, is active, has funds, or has been reported lost or stolen. Only the issuer knows that. A well-formed number is one that could exist, not one that does.
See limitationsCorrect bank details are half of a good transfer. The other half is what it costs: the fee and the exchange-rate margin.
FAQ
No. It means the number is well-formed. Whether a card with that number exists, is active or has funds is only known to its issuer.
No. The check runs in your browser and nothing is stored or sent. Even so, use test numbers rather than a real card.
A checksum published by Hans Peter Luhn of IBM. Every second digit from the right is doubled, the digits are added up, and a valid number gives a total divisible by ten.
Only well-documented number ranges are listed, for Visa, Mastercard, American Express, Discover, JCB, Diners Club, UnionPay, Maestro and Mir. A number from another domestic scheme is not attributed to a guess.
Free, no sign-up. The validator runs in your browser and stores nothing.