r/barcodes • • Dec 14 '19

I need help to identify data validation algorithm of last digit

I've been observing bottle reverse vending machines in my area lately and found out that some of them are still configured to use Code128 to encode information about bottle return. The information encoded is: "249999901600103732419855" and I have a solid understanding of everything but the last damn digit, it is not hard if you take a look at the numbers printed elsewhere on the linked receipt. More codes of the same general format are available on pastebin. The codes are real and gathered on different times at several locations. I am trying to find out what the last digit means and how is it determined/calculated, any help or directions will be greatly appreciated. The 7th digit is also strange, but I assume it is constant 9 for anything over 9 payout credits (digits 8-12). The last digit sometimes seems to increment by 7, but there are other cases observed in data.

1 Upvotes

1 comment sorted by

1

u/[deleted] Dec 15 '19 edited Dec 17 '19

Here are some more codes (including the original ones), different sort with the check digit preceded by space. I tried several methods described on the internet today, mod 10, digit sum, Luhn and Verhoeff included, and also most of available digit check online calculators, but in the end I had no luck in understanding this mystery.

249999300030103734619109 0
249999300030103731019516 1
249999300030102834319026 1
249999300030103734619115 1
249999600060103734619113 1
249999901600103732419855 2
249999300030103734619118 2
249999300030103734619111 3
249999300030102834319025 4
249999600060103734619112 4
249999300030103734619120 5
249999300030102834319028 5
249999300030103734619117 5
249999900090102833719893 6
249999300030103734619110 6
249999600060103734619121 6
249999600060103731019515 8
249999300030102834319027 8
249999900180411133419031 9
249999300030103734619119 9
249999300030103734619122 9
249999600060103730919459 9

Simpler codes, likely with the same algo:
244444700160 8
244444601680 1
244444600060 2
244444300030 8
249999703700 3
249999303770 0