EAN-13

EAN-13 este standardul internațional de cod de bare pentru comerțul cu amănuntul, o extensie a UPC-A care adaugă identificarea țării/regiunii, rămânând totodată complet compatibil cu acesta.

Introducere
EAN este proiectat de International Article Numbering Association (EAN) din Europa. Este o extensie a UPC-A care include informația despre țară. Aceasta înseamnă că orice software sau hardware capabil să citească un simbol EAN-13 va putea automat să citească și un simbol UPC-A. Singura diferență între UPC-A și EAN-13 este că sistemul de numere din UPC-A este format dintr-o singură cifră, de la 0 la 9, în timp ce sistemul de numere EAN-13 constă din două cifre, de la 00 la 99. EAN-13 codifică 12 cifre de date numerice împreună cu o cifră de control finală, pentru un total de 13 cifre de date ale codului de bare. Fiecare țară are o autoritate de numerotare care atribuie coduri de producător companiilor din jurisdicția sa. Codul de producător are tot cinci cifre, la fel ca și codul de produs, iar cifra de control este calculată exact în același mod.
Structura unui cod de bare EAN
Un număr EAN-13 este format din patru zone:
¤ Sistemul de numere
¤ Codul producătorului
¤ Codul produsului
¤ Cifra de control

De obicei, cifra sistemului de numere este tipărită în stânga codului de bare, iar cifra de control în dreapta. Codurile de producător și de produs sunt tipărite chiar sub codul de bare, separate de bara de gardă centrală.

¤ Sistemul de numere
Sistemul de numere constă din două cifre (uneori trei cifre) care identifică autoritatea de numerotare a țării/regiunii care a atribuit codul de producător. Orice sistem de numere care începe cu cifra 0 este un cod de bare UPC-A. Lista sistemelor de numere este menținută de organizația EAN (www.ean-int.org). De asemenea, sistemul de numere pentru fiecare țară/regiune este listat aici.

¤ Codul producătorului
Codul producătorului este un cod unic atribuit fiecărui producător de către autoritatea de numerotare indicată de codul sistemului de numere. Toate produsele fabricate de o anumită companie folosesc același cod de producător.

EAN folosește așa-numitele „coduri de producător cu lungime variabilă". Atribuirea de coduri de producător cu lungime fixă de 5 cifre, așa cum a procedat UCC până de curând, înseamnă că fiecare producător poate avea până la 99.999 de coduri de produs — iar mulți producători nu au atâtea produse, ceea ce înseamnă că sute sau chiar mii de coduri de produs potențiale sunt irosite pentru producători care au doar câteva produse. Astfel, dacă se știe că un producător va produce doar câteva produse, EAN îi poate emite un cod de producător mai lung, lăsând mai puțin spațiu pentru codul de produs. Acest lucru duce la o utilizare mai eficientă a codurilor de producător și de produs disponibile.

¤ Codul produsului
Codul produsului este atribuit de producător. Codul produsului urmează imediat după codul producătorului. Lungimea combinată a codului de producător și a codului de produs trebuie să fie exact 10 cifre.

¤ Cifra de control
Cifra de control este folosită pentru a verifica dacă codul de bare a fost generat sau scanat corect. Este calculată pe baza celorlalte cifre din codul de bare.

Deoarece o scanare poate produce date incorecte din cauza vitezei inconstante de scanare, a imperfecțiunilor de tipărire sau a altor probleme, este util să se verifice dacă restul datelor din codul de bare a fost interpretat corect.

Dimensiunea X nominală este de 13 mils. Dimensiunea X tipăribilă variază între 10,4 și 24 mils.

Metoda de calcul a cifrei de control:
1. De la dreapta la stânga, începând cu poziția impară, atribuiți poziția impară/pară fiecărei cifre.
2. Însumați toate cifrele de pe poziții impare și înmulțiți rezultatul cu 3.
3. Însumați toate cifrele de pe poziții pare.
5. Însumați rezultatele de la pasul 3 și pasul 4.
6. Împărțiți rezultatul de la pasul 4 la 10. Cifra de control este numărul care, adăugat la rest, dă 10.

Cum se calculează checksum-ul (funcție Visual Basic):
Function Append_EAN_Checksum (RawString as String)
Dim Position as Integer
Dim CheckSum as Integer CheckSum = 0
For Position = 2 to 12 step 2
Checksum = Checksum + Val(Mid$(RawString, Position, 1))
Next Position
CheckSum = CheckSum * 3
For Position = 1 to 11 Step 2
CheckSum = CheckSum + Val(Mid$(RawString, Position, 1))
Next Position
CheckSum = CheckSum Mod 10
CheckSum = 10 - CheckSum
If CheckSum = 10 Then
CheckSum = 0
End If
Append_Ean_Checksum = RawString & Format$(CheckSum, "0")
End Function

Codificare
Un simbol EAN-13 poate fi împărțit în două jumătăți, fiecare formată din șase cifre separate printr-un model de bară de gardă centrală. Întregul simbol este înconjurat de două modele de bară de gardă. Aceeași cifră are o codificare diferită în funcție de jumătatea în care se află (stânga sau dreapta). Modelul de codificare pentru cifrele din jumătatea stângă începe întotdeauna cu un spațiu, în timp ce cel pentru cifrele din jumătatea dreaptă începe întotdeauna cu o bară și se termină cu un spațiu. Un simbol EAN-13 are următoarea structură:
1. Bare de gardă de start, întotdeauna cu modelul bară+spațiu+bară.
2. Jumătatea stângă, șase cifre codificate folosind schema de codificare A sau B;
3. Bare de gardă centrale, cu modelul spațiu+bară+spațiu+bară+spațiu.
4. Jumătatea dreaptă, șase cifre codificate folosind schema de codificare C.
5. Bare de gardă de stop, întotdeauna cu modelul bară+spațiu+bară.
Codurile sistemului de numere

Cod

Țară

00 - 09 Statele Unite ale Americii
10 - 19 Rezervat pentru UCC (SUA) la aderarea la EAN
20 - 29 Pentru uz local de către retaileri sau distribuitori
30-37 Franța
400 - 440 Germania
45 Japonia
46 Federația Rusă
471 Taiwan
474 Estonia
475 Letonia
477 Lituania
479 Sri Lanka
480 Filipine
481 Belarus
482 Ucraina
484 Moldova
485 Armenia
486 Georgia
487 Kazahstan
489 Hong Kong
49 Japonia
50 Regatul Unit
520 Grecia
528 Liban
529 Cipru
531 Macedonia
535 Malta
539 Irlanda
54 Belgia și Luxemburg
560 Portugalia
569 Islanda
57 Danemarca
590 Polonia
594 România (România folosește și 642 pentru codurile de bare ARPC)
599 Ungaria
600 - 601 Africa de Sud
609 Mauritius
611 Maroc
613 Algeria
619 Tunisia
622 Egipt
625 Iordania
626 Iran
64 Finlanda
690 - 692 China
70 Norvegia
729 Israel
73 Suedia
740 - 745 Guatemala, El Salvador, Honduras, Nicaragua, Costa Rica, Panama
746 Republica Dominicană
750 Mexic
759 Venezuela
76 Elveția
770 Columbia
773 Uruguay
775 Peru
777 Bolivia
779 Argentina
780 Chile
784 Paraguay
785 Peru
786 Ecuador
789 Brazilia
80 - 83 Italia
84 Spania
850 Cuba
858 Slovacia
859 Cehia
860 Iugoslavia
869 Turcia
87 Olanda
880 Coreea de Sud
885 Thailanda
888 Singapore
890 India
893 Vietnam
899 Indonezia
90 - 91 Austria
93 Australia
94 Noua Zeelandă
955 Malaysia
959 Papua Noua Guinee
977 Periodice (ISSN)
978 Cărți (ISBN)
979 Muzică (ISMN)
980 Chitanțe de rambursare
99 Cupoane
Legături externe