チェックディジットコードの何が問題なのか理解できないようです。
時々、2つの長さのチェックディジット値を生成します
例
1277531815000110 <-- check digit is double value??????
1277532495000110 <-- check digit is double value???????
1277534649000110 <-- check digit is double value???????
127753185300011 <-- good!
127753208500019 <-- good!
生成された番号はすべて有効です。http://www.ee.unb.ca/cgi-bin/tervo/luhn.pl?N= 127753224800013で確認できます。