Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles
(untagged)

Test Credit Card Account Numbers

0.00/5 (No votes)
2 Oct 2011 1  
Prefix, Length, and Check Digit CriteriaHere is a table outlining the major credit cards that you might want to validate.CARD TYPE Prefix Length Check digit algorithmMASTERCARD 51-55 16 mod 10VISA 4 13, 16 mod 10AMEX 3437 15 mod 10Diners Club/Carte...
  1. Prefix, Length, and Check Digit Criteria
     
    Here is a table outlining the major credit cards that you might want to validate.
     
    CARD TYPE Prefix Length Check digit algorithm
    MASTERCARD 51-55 16 mod 10
    VISA 4 13, 16 mod 10
    AMEX 34
    37 15 mod 10
    Diners Club/
    Carte Blanche 300-305
    36
    38 14 mod 10
    Discover 6011 16 mod 10
    enRoute 2014
    2149 15 any
    JCB 3 16 mod 10
    JCB 2131
    1800 15 mod 10
     
  2. LUHN Formula (Mod 10) for Validation of Primary Account Number
The following steps are required to validate the primary account number:
 
Step 1: Double the value of alternate digits of the primary account number beginning with the second digit from the right (the first right--hand digit is the check digit.)
 
Step 2: Add the individual digits comprising the products obtained in Step 1 to each of the unaffected digits in the original number.
 
Step 3: The total obtained in Step 2 must be a number ending in zero (30, 40, 50, etc.) for the account number to be validated.
 
For example, to validate the primary account number 49927398716:
 
Step 1:
 
4 9 9 2 7 3 9 8 7 1 6
x2 x2 x2 x2 x2
------------------------------
18 4 6 16 2
 

 

Step 2: 4 +(1+8)+ 9 + (4) + 7 + (6) + 9 +(1+6) + 7 + (2) + 6
 
Step 3: Sum = 70 : Card number is validated
 
Note: Card is valid because the 70/10 yields no remainder.
 
Source: http://www.beachnet.com/~hstiles/cardtype.html[^]

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here