Calculation of Check Digits According to MODULUS 97-10
Calculation of Check Digits According to MODULUS 97-10
Calculation of Check Digits According to MODULUS 97-10
Source: Bank of Slovenia (http://www.bsi.si).
For calculation of check digits a simplified standard procedure ISO 7604 (MOD 97-10)1 is used. The first item that you can see below cites original text on the simplified standard procedure and example. The second item, on the other hand, gives two additional real-life cases.
1. 7.4 Simplified procedure for ISO 7064, MOD 97 - 10
For this system, the procedures described in 7.2 and 7.3 can be followed.
However, since in normal decimal notation the digits are already weighted by the powers of the radix 10, a simplified procedure may be adopted. Append two zeroes to the string, and divide by 97. Subtract the remainder from 98. The two digits in the result are the check characters.
For the string 794 the procedure is:
step 1: append two zeroes to occupy the check character positions: 79400;
step 2: divide by 97, to give the quotient 818 and the integer remainder 54;
step 3: determine the check character value as (97 + 1) - 54 = 44 and append it to the original string to give 79444.
For checking, divide the string by 97; if the reminder is 1 the check is satisfied.
3. Calculating Check Digit for International Bank Account Number (IBAN) (xx yyy zzzzzzzz kk)
- Calculation with remainder not equal 0.
Bank account number excluding check digits: 06 000 01234567.
a: 06 000 01234567 00
b: 060000123456700 : 97 = 618557973780 remainder = 40
c: (97 + 1) - 40 = 58 Result: 06 000 01234567 58
Checksum: 06000123456758 : 97 = 618557973781 remainder = 1
- Calculation without remainder or with remainder equal 0.
Bank account number excluding check digits: 06 000 01234586.
a: 06 000 01234586 00
b: 060000123458600 : 97 = 618557973800 remainder = 00
c: (97 + 1) - 00 = 98 Result: 06 000 01234586 98.
Checksum: 06000123458698 : 97 = 618557973801 remainder = 1.
1 Original document: “International Standard ISO 7064 - Data processing - Check character systems. First edition - 1983-09-15”
2 See items 7.2 (recursive method) and 7.3 (polynomial method) in the original document standard where two generally-used methods are applied for systems with the base not equal 10. Here an additional procedure used in calculating check digits is required.