pitoo.com

UPC / EAN

Structure

C'est le "Code Produit Universel" appelé aussi "Numéro d'Article Européen" que l'on trouve sur tous les biens de consommation.
Le code est divisé en deux parties que nous nommerons "partie gauche et partie droite".
Outre les caractères de début et fin de lecture, un caractère séparateur est positionné au milieu du code.
La hauteur du code doit être supérieure a la largeur d'un demi-code.
La lecture est bidirectionnelle.

Le code peut se présenter sous deux formes, dont voici la description pour la 1ère forme :

  • marge gauche
  • caractère de bornage gauche
  • caractère "numéro de système"
  • caractères significatifs de gauche (5)
  • caractère séparateur
  • caractères significatifs de droite (5)
  • clé de contrôle
  • borne droite
  • marge droite

La seconde forme n'a qu'une seule zone de caractères significatifs (pas de séparateur).

L'UPC se présente sous 4 versions différentes :

  • Version A) Pour les codes à 10 chiffres :
    • les "impaires" à gauche, les "paires" à droite, le séparateur au milieu
    • chaque demi code est formé de 6 caractères (car.système + 2x5 + clé)
    • à gauche : identification du fabricant, à droite : identification produit
  • Version B) Version "code de longueur variable".
  • Version E) Correspond aux symboles courts : 6 caractères seulement, de symbologie gauche, mais avec les deux parités, paire et impair.
  • Version D) Les quatres types de caractères (gauche-pair, gauche-impair, droite-pair, droite-impair) sont employés, ce qui permet d'avoir une famille de codes, compatibles entre eux, lisibles dans chaque sens, et de longueur variable, c'est la grande souplesse.

 

L'EAN se compose de 13 caractères, 12 chiffres plus une clé de contrôle. Il fonctionne de la même manière que l'UPC, avec lequel il est compatible. Pour ce faire, on code les caractères de gauche avec les deux parités, 3 sur 6 ayant une parité paire. Le 13ème caractère peut donc être inclus dans la séquence de parité du demi-code gauche.
Les éléments du code UPC / EAN peuvent avoir des largeurs de 1, 2, 3 ou 4 modules, cela n'est exact que pour les chiffres 0, 3, 4, 5, 6, 9. Le 1 et le 2 sont un peu plus étroits (d'1/13ème de module), le 7 et le 8 un peu plus larges (d'1/13ème de module également).

Symbologie

Eléments : barres et espaces de 4 tailles différentes : 1, 2, 3 ou 4 modules de base
Caractères : 4 éléments : 2 barres et 2 espaces, il totalise toujours 7 modules
à gauche : 3 ou 5 modules noirs (parité impaire)
à droite : 2 ou 4 modules noirs (parité paire)
Ratio : 1 pour 2, 1 pour 3 et 1 pour 4
Continuité : continu dans chaque moitié de code
Marges :
Jeu de caractères : 0 à 9
Caractère de départ : 101 non
Caractère de fin :      101 non
Caractère séparateur : 01010 onono
Clé de contrôle : Calculée en "Modulo 10" elle répond a la formule suivante :

- de la droite vers la gauche ( <-- )
- a = SOMME (valeurs des pos. impaires) * 3
- b = SOMME (valeurs des pos. paires)
- c = (a + b) MOD 10
- complément à 10 de c

exemple :
soit le code EAN suivant : 4 002604 005326
la clé de contrôle est donc 6 (le dernier chiffre), voyons comment celui-ci est calculé
- a = SOMME ( 2 + 5 + 0 + 0 + 2 + 0 ) * 3 = 9 * 3 = 27
- b = SOMME ( 3 + 0 + 4 + 6 + 0 + 4 ) = 17
- c = ( 27 + 17 ) MOD 10 = 44 MOD 10 = 4
- complément à 10 de 4 (10-4) = 6

Codage

Le codage des caractères est original, il n'est pas le même selon que le caractère figure à gauche ou à droite.

Caractère Codage Représentation
gauche
impair

GI
0 0001101
             
1 0011001
             
2 0010011
             
3 0111101
             
4 0100011
             
5 0110001
             
6 0101111
             
7 0111011
             
8 0110111
             
9 0001011
             
 
   
gauche
pair

GP
0 0100111
             
1 0110011
             
2 0011011
             
3 0100001
             
4 0011101
             
5 0111001
             
6 0000101
             
7 0010001
             
8 0001001
             
9 0010111
             
       
droite
pair

DP
0 1110010
             
1 1100110
             
2 1101100
             
3 1000010
             
4 1011100
             
5 1001110
             
6 1010000
             
7 1000100
             
8 1001000
             
9 1110100
             
 
   
  début 101
     
  fin 101
     
  sépar. 01010
         

En ce qui concerne le code EAN, pour coder le 13ème caractère (qui sera placé devant le code proprement dit) à l'intérieur du demi-code gauche on utilise les deux parités, 3 caractères sur 6 ayant une parité paire.

Soit le code : n   a b c d e f   g h i j k l

les caractères a, b, c, d, e et f sont codés en fonction de n selon la parité donnée par le tableau suivant :

n

a

b

c

d

e

f

0

I

I

I

I

I

I

1

I

I

P

I

P

P

2

I

I

P

P

I

P

3

I

I

P

P

P

I

4

I

P

I

I

P

P

5

I

P

P

I

I

P

6

I

P

P

P

I

I

7

I

P

I

P

I

P

8

I

P

I

P

P

I

9

I

P

P

I

P

I

I : caractère Gauche Impair
P : caractère Gauche Pair

Pour information, voici la table de signification du (des) premier(s) chiffre(s) d'un EAN :
(merci à grandzebu)

00 à 13 UCC (Etats-Unis et Canada)
20 à 29 Codification interne en magasin
30 à 37 GENCOD-EAN France
380 BCCI (Bulgarie)
383 SANA (Slovénie)
385 CRO-EAN (Croatie)
387 EAN-BIH (Bosnie-Herzégovine)
400 à 440 CCG (Allemagne)
45 + 49 Distribution Code Center - DCC (Japon)
460 à 469 UNISCAN - EAN Russie (Fédération de Russie)
471 CAN (Taiwan)
474 EAN Estonie
475 EAN Lettonie
476 EAN Azerbaï djan
477 EAN Lituanie
478 EAN Ouzbékistan
479 EAN Sri Lanka
480 PANC (Philippines)
481 EAN Biélorussie
482 EAN Ukraine
484 EAN Moldavie
485 EAN Arménie
486 EAN Georgie
487 EAN Kazakhstan
489 HKANA (Hong Kong)
50 E Centre UK
520 HELLCAN-EAN HELLAS (Grèce)
528 EAN Liban
529 EAN Chypre
531 EAN-MAC (FYR Macédonie)
535 EAN Malte
539 EAN Irlande
54 ICODIF/EAN Belgique. Luxembourg
560 CODIPOR (Portugal)
569 EAN Islande
57 EAN Danemark
590 EAN Pologne
594 EAN Roumanie
599 H.A.P.M.H. (Hongrie)
600 - 601 EAN Afrique du Sud
609 EAN Ile Maurice
611 EAN Maroc
613 EAN Algérie
619 Tunicode (Tunisie)
621 EAN Syrie
622 EAN Egypte
625 EAN Jordanie
626 EAN Iran
628 EAN Arabie Saoudite
64 EAN Finlande
690 - 693 Article Numbering Centre of China - ANCC (Chine)
70 EAN Norge (Norvège)
729 Israeli Bar Code Association - EAN Israël
73 EAN Suède
740 EAN Guatemala
741 EAN El Salvador
742 ICCC (Honduras)
743 EAN Nicaragua
744 EAN Costa Rica Panama
746 746 EAN République Dominicaine
750 AMECE (Mexique)
759 EAN Venezuela
76 EAN (Schweiz, Suisse, Svizzera)
770 IAC (Colombie)
773 EAN Uruguay
775 APC - EAN Peru (Pérou)
777 EAN Bolivie
779 CODIGO - EAN Argentine
780 EAN Chili
784 EAN Paraguay
786 ECOP (Equateur)
789 EAN Brésil
80 à 83 INDICOD (Italie)
84 AECOC (Espagne)
850 Camera de Comercio de la Republica de Cuba (Cuba)
858 EAN Slovaquie
859 EAN République Tchèque
860 EAN YU (Yougoslavie)
867 EAN DPR Korea (Corée du Nord)
869 Union of Chambers of Commerce of Turkey (Turquie)
87 EAN Nederland (Hollande)
880 EAN Korea (Corée du Sud)
885 EAN Thaï lande
888 SANC (Singapour)
890 EAN Inde
893 EAN Vietnam
899 EAN Indonésie
90 - 91 EAN Autriche
93 EAN Australie
94 EAN Nouvelle Zélande
955 Malaysian Article Numbering Council (MANC) - Malaisie
977 Publications sérielles (ISSN)
978 - 979 Livres (ISBN)
980 Reçus de remboursement
981 - 982 Coupons (monnaie courante)
99 Coupons

Exemples :

Code UPC

Code EAN (commencant par un autre chiffre)

Le même sans le texte lisible

Ces exemples sont réalisés avec le Script Php disponible sur ce site.