Skip to content

A C# library for validating credit card numbers and generating ones.

License

Notifications You must be signed in to change notification settings

NosDeployer/CreditCardValidator

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CreditCardValidator

CreditCardValidator helps you implementing validations for the most common credit card brands, verifying length, prefixes and checking the card number through the Luhn algorithm if necessary.

Nuget Package -> https://www.nuget.org/packages/CreditCardValidator

Issuing network Supported

The following issuing institutes are supported:

AmericanExpress MasterCard Maestro DinersClub Discover
Hipercard Visa Laser ChinaUnionPay Dankort
Rupay Solo Switch JCB

Usage

CreditCardDetector

CreditCardDetector detector = new CreditCardDetector("4012 8888 8888 1881");
detector.CardNumber; // => 4012888888881881

detector.IsValid(); // => True
detector.IsValid(CardIssuer.Maestro); // => False

detector.Brand; // => CardIssuer.Visa
detector.BrandName; // => Visa

detector.IssuerCategory; // => Banking and financial

CreditCardFactory

Generate random credit card numbers from a specific CardIssuer.

string visaNumber = CreditCardFactory.RandomCardNumber(CardIssuer.Visa);
// => 4953089013607
string amexNumber = CreditCardFactory.RandomCardNumber(CardIssuer.AmericanExpress);
// => 373485467448025
string masterCardNumber = CreditCardFactory.RandomCardNumber(CardIssuer.MasterCard);
// => 5201294442453002
string chinaUnionPayNumber = CreditCardFactory.RandomCardNumber(CardIssuer.ChinaUnionPay);
// => 6280209982074556

CreditCardStringExtension

"4953089013607".CreditCardBrand(); // => CardIssuer.Visa

"4953089013607".CreditCardBrandName() // => Visa

"348051773827666".ValidCreditCardBrand(CardIssuer.AmericanExpress); // => True

Luhn

Luhn.CheckLuhn("4953089013607"); // => True
Luhn.CreateCheckDigit("495308901360"); // => 7

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

About

A C# library for validating credit card numbers and generating ones.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • C# 84.2%
  • PowerShell 15.8%