![]() |
A propos des codes barres américains UPC (Composition, calcul du code de contrôle...) |
EN BREF | EN BREF | EN BREF | EN BREF | EN BREF | EN BREF | EN BREF |
Signification | Origine | Versions | Types de données | Longueurs |
Algorithme de la clé de contrôle |
Universal Product Code |
U.S.A. |
UPC-A UPC-E UPC-D |
numériques numériques numériques |
12 chiffres 6 chiffres variable |
... |
EN BREF | EN BREF | EN BREF | EN BREF | EN BREF | EN BREF | EN BREF |
Il s'agit du plus ancien code barres mis en place à grande échelle
pour le marquage des produits de grande consommation. A l'heure actuelle, ce
marquage, utilisé aux Etats Unis et au Canada est en voie de disparition
(au profit de l'EAN 13).
Il existe 3 versions du code UPC :
- Le code "standard" est basé sur 12 caractères.
- Le code simplifié est basé sur 6 caractères seulement et
est destiné aux supports ne pouvant acceuillir un code plus important,
souvent par manque de surface de marquage.
- Enfin un code de longueur variable est disponible pour des usages souvent
internes à une entreprise ou un groupement.
Le 1er ![]() chiffre identifie l'usage du code : 0 - normal 1 - (NON UTILISE) 2 - produits vendus au poids; marquages internes aux magasins 3 - médicaments et autres produits de santé 4 - produits non alimentaires; marquages internes aux magasins 5 - coupons promotionnels, marketing 6 - normal 7 - normal 8 - (NON UTILISE) 9 - (NON UTILISE) Ce chiffre entre en compte pour la représentation graphique du code barres. |
![]() Il est attribué par le Uniform Code Council, organisme national de codification des Etats Unis et du Canada, qui en assure la gestion. 100.000 fournisseurs différents peuvent ainsi être identifiés. |
![]() |
Le dernier ![]() chiffre sert de contrôle pour éviter toute erreur de lecture. Son calcul est basé sur un algorithme de type modulo 10, détaillé ci-dessous. |
Soit le code UPC A de départ : | 0 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | X | ||
Addition des chiffres figurant à des positions impaires : | + | 0 | + | 2 | + | 4 | + | 6 | + | 8 | + | = | 20 | |
Addition des chiffres figurant à des positions paires : | 0 | + | 1 | + | 3 | + | 5 | + | 7 | + | 9 | = | 25 | |
...multiplication du dernier résultat par 3 : | 25 | x | 3 | = | 75 | |||||||||
Addition des résultats issus des rangs pairs et impairs : | 20 | + | 75 | = | 95* | |||||||||
Recherche du multiple de 10 immédiatement supérieur * | = | 100 | ||||||||||||
dont on retranche le chiffre précédent : | 100 | - | 95 | = | 5 |
Le code barre complet sera donc bien |
![]() ![]() |
![]() |
![]() Les 6 premiers chiffres sont codés selon la colonne A. |
![]() Les 6 chiffres suivants sont codés selon la colonne B. |
Colonne A | Colonne B | |
0001101 0011001 0010011 0111101 0100011 0110001 0101111 0111011 0110111 0001011 |
0 1 2 3 4 5 6 7 8 9 |
1110010 1100110 1101100 1000010 1011100 1001110 1010000 1000100 1001000 1110100 |
0 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 5 | ||
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||
A | A | A | A | A | A | B | B | B | B | B | B | ||
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||
0001101 | 0001101 | 0011001 | 0010011 | 0111101 | 0100011 | 1001110 | 1010000 | 1000100 | 1001000 | 1110100 | 1001110 |
101 0001101 0001101 0011001 0010011 0111101 0100011 01010 1001110 1010000 1000100 1001000 1110100 1001110 101 |