The check digit is used to verify the correctness of the components within an ISO 6346 container number. Try our online calculator here.

For container number CSQU305438(3) the worksheet is provided here with explanation below.

Step | Container number | Total | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|

C | S | Q | U | 3 | 0 | 5 | 4 | 3 | 8 | ||

1 | 13 | 30 | 28 | 32 | 3 | 0 | 5 | 4 | 3 | 8 | |

x | x | x | x | x | x | x | x | x | x | ||

2 | 1 | 2 | 4 | 8 | 16 | 32 | 64 | 128 | 256 | 512 | |

= | = | = | = | = | = | = | = | = | = | ||

13 | 60 | 112 | 256 | 48 | 0 | 320 | 512 | 768 | 4096 | ||

3 | Sum all results from (2) | 6185 | |||||||||

4 | Divide (3) by 11 (remainder discarded) | 562 | |||||||||

5 | Multiply (4) by 11 | 6182 | |||||||||

6 | (3) minus (5) = Check Digit: | 3 |

Each letter of the alphabet is assigned a numerical value, beginning with 10 for the letter A. The number 11 and multiples thereof are skipped. Digits in the container number retain their numeric value.

A | B | C | D | E | F | G | H | I | J | K | L | M |

10 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 23 | 24 |

N | O | P | Q | R | S | T | U | V | W | X | Y | Z |

25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 34 | 35 | 36 | 37 | 38 |

Each of the numbers calculated in (1) is multiplied by 2^{position} where position starts at 0, from left to right.

Sum all results from (2).

Divide (3) by 11. Most programming languages provide a modulo operator in order to request an integer value without a remainder.

Multiply (4) by 11.

Subtract (5) from (3) to get the check digit.

The standard recommends that container numbers should not be used which produce a check digit of 10. Where they do, it should be substituted with zero.