The Credit Card Validation Solution™ checks that the card number length is correct, the first four digits are within accepted ranges, the number passes the Mod 10 / Luhn checksum algorithm and that you accept the given type of card. Expiration date validation is optional. They also tell you which kind of card is being used based on the number.
Error message text is internationalized. Current translations include English, French (Français), German (Deutsche) and Spanish (Español). Others can be easily added.
Types of cards handled: American Express, Australian BankCard, Carte Blanche, Diners Club, Discover/Novus, JCB, MasterCard, Visa.
Just to be clear, this process does not check with banks or credit card companies to see if the card number given is actually associated with a good account. It just checks to see if the number matches the expected format.