I wanted to purchase something from lowes.com but all the promo codes I was able to find online were coming up as previously used. When I started to analyze the codes that I found online, I could clearly see that there were patterns and just a few of the numbers are different in each class of codes. If you try to change any of the different numbers you will quickly find that you most likely generated an invalid code. This is because the last digit is a check digit that validates the other 14 digits. If you change any of the random digits (besides the last digit) you need to gengerate a new check digit for the last number. Once I figured out how to generate this check digit I put together a VB.net desktop exe and put it to the test.
I was able to successfully generate working codes for $10 off $50, $15 off $75, $20 off $100, $40 off $200, and $60 off $400Then I decided to use this idea for my very first Android app. Within a few hours I dowloaded and installed Android Studio, Java, and was able to get the application together and published on the play store.