MOD 11 Check Digit

A check digit is a number that is used to validate a series of numbers whose accuracy you want to insure. Frequently the last digit of a number string such as identification number is a check digit. Lets say the identification number starts out at 6 digits. A calculation is done using the six digits and a seventh digit is produced as a result of the calculation. This number is the check digit. There are many calculations that can be used - this example illustrates the logic of the MOD11 check digit.

Steps to calculate the MOD11 check digit for a number such as an id #:

• Assign weights to each digit of the id #. The weights in MOD11 are from 2 through a maximum of 10 beginning with the low order position in the field.
• Each digit in the id # is multiplied by its weight
• The results of the multiplication are added together
• This product is divided by the modulus number 11
• The remainder is subtracted from the modulus number 11 giving the check digit

Example: find the check digit for the number 036532

 0 3 6 5 3 2 x7 x6 x5 x4 x3 x2 0 18 30 20 9 4

0 + 18 + 30 + 20 + 9 + 4 = 81

81/11 = 7 remainder 4

11 - 4 = 7

7 is therefore the check digit.

PROBLEMS: If the remainder from the division is 0 or 1, then the subtraction will yield a two digit number of either 10 or 11. This won't work, so if the check digit is 10, then X is frequently used as the check digit and if the check digit is 11 then 0 is used as the check digit. If X is used, then the field for the check digit has to be defined as character (PIC X) or there will be a numeric problem.

Steps to verify if the check digit is included as part of the number:

• The entire number is multiplied by the same weights that were used to calculate and the check digit itself is multiplied by 1.
• The results of the multiplication are added together.
• The sum is divided by 11 and if the remainder is 0, the number is correct.

PROBLEM: Note that if the check digit is X then 10 is used in the multiplication. Code for this occurrence must be included.

Example of verifying the number 0365327 where 7 is the calculated MOD11 check digit:

 0 3 6 5 3 2 7 x7 x6 x5 x4 x3 x2 x1 0 18 30 20 9 4 7

0 + 18 + 30 + 20 + 9 + 4 + 7 = 88

88/11 is 8 remainder 0

Since the remainder from this calculation is 0, the check digit 7 is valid.