Utilities to manage credit card information such as numbers validation, masking, etc. For more details take a look at PayU Latam Repository..
###Maven
<dependency>
<groupId>pol-utils</groupId>
<artifactId>credit-cards-utils</artifactId>
<version>0.0.1</version>
</dependency>
###Gradle
compile(group: 'com.payulatam', name: 'creditcard-gatekeeper', version: '1.0.0')
Write usage instructions
- Mask a credit card number:
String number = "4123412341235321";
String masked = CreditCardFormatUtils.mask(number);
Assert.assertEquals("412341******5321", masked);
- Validate a security code
# 4 digits cvv2 for Amex Argentina is ok
CreditCardValidator.validateSecurityCode("1231", CreditCardType.AMEX, CreditCardCountry.AR.name());
# 3 digits cvv2 for Amex Argentina is not ok
CreditCardValidator.validateSecurityCode("", CreditCardType.AMEX, CreditCardCountry.PE.name());
Assert.p fail("is not valid");
- Validate pan with franchise
# Valid Mastercard pan
String pan = "2221000010000015";
CreditCardValidator.validate(pan, CreditCardType.MASTERCARD);
# Invalid Mastercard pan
String number = "5105105105105101";
CreditCardType creditCardType = CreditCardType.MASTERCARD;
Assert.p fail("is not valid");
- Clone it!
- Create your feature branch:
git checkout -b my-new-feature
- Commit your changes:
git commit -am 'Add some feature'
- Push to the branch:
git push origin my-new-feature
- Submit a pull request