Validate payment card numbers using the standard ISO/IEC 7812 Luhn checksum algorithm, detect card issuers (BIN check), and inspect step-by-step arithmetic.
Issuer: Visa • Length: 16 digits • Luhn Sum Mod 10: 80 % 10 = 0
From right to left, every second digit is doubled. If doubling yields a number greater than 9, its digits are added together (or 9 is subtracted). If the sum of all resulting numbers is a multiple of 10 (`sum % 10 === 0`), the card checksum is valid.
| Position (Right to Left) | Original Digit | Doubled (Even Pos) | Digit Contribution |
|---|---|---|---|
| Pos #1 (Check Digit) | 2 | — | +2 |
| Pos #2 | 4 | 4 × 2 = 8 | +8 |
| Pos #3 | 2 | — | +2 |
| Pos #4 | 4 | 4 × 2 = 8 | +8 |
| Pos #5 | 2 | — | +2 |
| Pos #6 | 4 | 4 × 2 = 8 | +8 |
| Pos #7 | 2 | — | +2 |
| Pos #8 | 4 | 4 × 2 = 8 | +8 |
| Pos #9 | 2 | — | +2 |
| Pos #10 | 4 | 4 × 2 = 8 | +8 |
| Pos #11 | 2 | — | +2 |
| Pos #12 | 4 | 4 × 2 = 8 | +8 |
| Pos #13 | 2 | — | +2 |
| Pos #14 | 4 | 4 × 2 = 8 | +8 |
| Pos #15 | 2 | — | +2 |
| Pos #16 | 4 | 4 × 2 = 8 | +8 |
| Total Luhn Checksum: | 80 (Mod 10 = 0) | ||