Page last modified 15:19, 9 Oct 2013 by Antero Betalingskenmerk

If the Dutch Structured Communication is used (indicated through the issuer value “CUR”) the reference must be compliant with the rules for the structured Communication ("Betalingskenmerk").

Calculating the check digit for betalingkenmerk is done as follows:

The Accept Giro validation is based on a weighed modulus 11 method, where in a 16-digit payment reference the first position contains the check-digit and the remaining 15 digits contain the actual payment reference code.
The weight:
To every number in the reference a weight is assigned, from right to left these weights are 2, 4, 8, 5, 10, 9, 7, 3, 6, 1 – when the reference contains more then 10 digits these weights are repeated.
The calculation:
A = sum of all products (number * weight)
C = [11 – (modulus 11) A] = check digit
When C = 10 the value 1 is taken
When C = 11 the value 0 is taken
Example:
For example, when the payment reference code is (5)000 0567 8901 2345 (spaces & brackets added for clarification, the 5 is the check digit, 000056789012345 the value):
A = (5*2) + (4*4) + (3*8) + (2*5) + (1*10) + (0*9) + (9*7) + (8*3) + (7*6) + (6*1) + (5*2) + (0*4) + (0*8) + (0*5) + (0*10) = 215
C = 11 – (215%11=6) = 5 (215 divided by 11 = 19 rest 6, 11 minus 6 is 5)
So when looking at the example, the last number in the string is 5, multiplied with the first weight 2 =10; before 5 there is 4, multiplied with the second weight 4 = 16; before 4 there is 3, multiplied with third weight 8 = 24; etc.; after the 10th weight, 11th position from right to left in the string is 5 which has to be multiplied with the first weight 2; before 5 there is 0 which has to be multiplied with the second weight 4; etc.; all results of the multiplications (10+16+24+ … +0+0+0) added up result in 215.