3-1-3-1 Weighted Modulo 10 Check Character

Starting with the check character and working backward through the message, the imager applies a multiplier of 1, then 3, then 1, then 3, and so on. This is the checking scheme used in many GS1 symbologies, including U.P.C. and Interleaved 2 of 5 (when a check digit is invoked). To apply this weighting scheme, set the OCR check character to “0123456789x3x1” or scan the following symbol:

3-1-3-1 Weighted Modulo 10

Check Character

Example: Scan the 3-1-3-1 Weighted Modulo 10 Check Character symbol. Also enter the OCR template:

dddddddc

Then scan the string below:

01234565

The reader performs the check character computation below:

(0 x 3 + 1 x 1 + 2 x 3 + 3 x 1 + 4 x 3 + 5 x 1 + 6 x 3 + 5 x 1) modulo 10 = 0

Since the result is zero, the message is considered to be valid, so the reader outputs the message: 0123456

2-1-2-1 Weighted Modulo 10 Check Character

Starting with the check character and working backward through the message, the imager applies a multiplier of 1, then 2, then 1, then 2, and so on. When the result of the multiplication is greater than 9, add both digits to the running sum. This is often referred to as the LUHN formula. One common application of the LUHN formula is validate credit card numbers. This is the modulo 10 checking scheme used in MSI Code and in Code 32 Pharmaceutical (PARAF). To apply this weighting scheme, set the OCR check character to "0123456789x2x1" or scan the following symbol:

2-1-2-1 Weighted Modulo 10

Check Character

Example: Scan the 2-1-2-1 Weighted Modulo 10 Check Character symbol. Also enter the OCR template:

ddddddc

9 - 10