International Article Number (EAN)

From Infogalactic: the planetary knowledge core
Jump to: navigation, search
GTIN-13 number encoded in EAN-13 barcode. The first digit is always placed outside the symbol; additionally a right ">" indicator is used to indicate a "Quiet Zone" that is necessary for barcode scanners to work properly.

An EAN-13 barcode (originally European Article Number, but now renamed International Article Number even though the abbreviation EAN has been retained) is a 13 digit (12 data and 1 check) barcoding standard which is a superset of the original 12-digit Universal Product Code (UPC) system developed in 1970 by George J. Laurer.[1] The EAN-13 barcode is defined by the standards organization GS1.

The 13 digits in the EAN-13 barcode are grouped as follows:

  • The left group: Digits 2-7. The left group also encodes digit 1, through a scheme of odd and even parity.
  • The right group: Digits 8-13, digit 13 is the check digit.

The EAN-13 barcodes are used worldwide for marking products often sold at retail point of sale. The numbers encoded in EAN-13 bar codes are product identification numbers, which are also called Japanese Article Numbers (JAN) in Japan. All the numbers encoded in UPC and EAN barcodes are known as Global Trade Item Numbers (GTIN), and they can be encoded in other GS1 barcodes.

The less commonly used EAN-8 barcodes are also used for marking retail goods; however, they are usually reserved for smaller items, for example confectionery.

2-digit (EAN 2) and 5-digit (EAN 5) supplemental barcodes may be added for a total of 14 or 17 data digits. These are generally used for periodicals (to indicate the current year's issue number[2] ), or books and weighed products like food (to indicate the manufacturer suggested retail price or MSRP[3] ), respectively.

Payload: GTIN-13 number

<templatestyles src="Module:Hatnote/styles.css"></templatestyles>

Components

The GTIN-13 encoded in the bar code has four components:

  • The GS1 Prefix, the first three digits, usually identifying the national GS1 Member Organization to which the manufacturer is registered (not necessarily where the product is actually made).[4] When the EAN-13 symbol encodes a conversion of an ISBN, the GS1 Prefix will be either 978 or 979. Likewise the prefix will be 979 for ISMNs (whose prefix is shared with ISBN) and 977 for ISSNs.
  • The Company number, consisting of three to eight digits depending on number of GTIN-13s required by the manufacturer to identify different product lines (in ISBN and ISSN, this component is used to identify the language in which the publication was issued and managed by a transnational agency covering several countries, or to identify the country where the legal deposits are made by a publisher registered with a national agency, and it is further subdivided any allocating subblocks for publishers; many countries have several prefixes allocated in the ISSN and ISBN registries).
  • The Item reference, consisting of two to six digits (in ISBN and ISSN, it uniquely identifies the publication from the same publisher; it should be used and allocated by the registered publisher in order to avoid creating gaps; however it happens that a registered book or serial never gets published and sold).
  • The Check digit, a single checksum digit. The check digit is computed modulo 10, where the weights in the checksum calculation alternate 3 and 1. In particular, since the weights are relatively prime to 10 the EAN system will detect all single digit errors. But, since the difference of consecutive weights is even, the EAN system does not detect all adjacent transposition errors.

The complete number is used as a reference key to look up information about the product line held on a database; the number is not normally broken down into its components within users' systems.

GS1 Prefixes

<templatestyles src="Module:Hatnote/styles.css"></templatestyles>

The first two or three digits of the GTIN of any product identify the GS1 Member Organization which the manufacturer has joined. Note that EAN-13 codes beginning with 0 were rarely seen, as this is just a longer form of a 12-digit UPC and is represented by the same barcode, but in the last few years, more products sold by retailers outside United States and Canada have been using EAN-13 codes beginning with 0, since they were generated by GS1-US.

The 200-299 country code is worth a special mention; most GS1 member organizations define this as being available for retailer internal use (or internal use by other types of business). Some retailers use this for proprietary (own brand or unbranded) products (although many retailers obtain their own manufacturer's code for their own brands); some retailers use at least part of this prefix for products which are packaged in store, for example, items weighed and served over a counter for a customer. The barcode may encode a price, quantity or weight along with a product identifier (in a retailer defined way); the product identifier may be one assigned by the Produce Electronic Identification Board or may be retailer assigned. Retailers who have historically used UPC barcodes will tend to use GS1 prefixes 04 (for products) and 02 (for store packaged products) in a similar way.

Calculation of checksum digit

The checksum digit must be calculated from the data digits before it can be encoded. The checksum is calculated taking a varying weight value times the value of each number in the barcode to make a sum. The checksum digit is then the digit which must be added to this sum to get a number evenly divisible by 10 (i.e. the additive inverse of the sum, modulo 10). See ISBN check digit calculation for a more extensive description and algorithm. The Global Location Number/GLN also uses the same method.[5]

Weight

The weight for a specific position in the EAN code is either 3 or 1, which alternate so that the final data digit has a weight of 3 (and thus the check digit has a weight of 1); the same algorithm is used in other GTINs and the Serial Shipping Container Code (SSCC). Numbering the positions from the right, the odd data digits are always weight 3 and the even data digits are always weight 1, regardless of the length of the code. [6] All GTIN and SSCC codes get their weight values for the position of the code from this table, making their code line up to the right:

position 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
weight 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3

Weights for EAN-13 code:

position 12 11 10 9 8 7 6 5 4 3 2 1
weight 1 3 1 3 1 3 1 3 1 3 1 3

Weights for EAN-8 code:

position 7 6 5 4 3 2 1
weight 3 1 3 1 3 1 3

For example: 4006381333931 (Stabilo Point 88 Art. No. 88/57), the check code is:

Calculation
First 12 digits of the barcode 4 0 0 6 3 8 1 3 3 3 9 3
Weights 1 3 1 3 1 3 1 3 1 3 1 3
Multiplied by weight 4 0 0 18 3 24 1 9 3 9 9 9
Sum 89

The nearest multiple of 10 that is equal or higher than the sum, is 90. Subtract them: 90 - 89 = 1, this is the last digit of the barcode.

Calculation

Taking the numbers from an EAN 8 code we get: 7351353 or in the table:

Getting the weights for a barcode
Position 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Weight 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3
Code 7 3 5 1 3 5 3
Sums 21 3 15 1 9 5 9

The sum from this barcode is then: 63
63 modulo 10 = 3
10 minus 3 makes the checksum = 7

The complete EAN 8 code is then: 73513537

Binary encoding of data digits into EAN-13 barcode

Encoding EAN-13
the numbers of code L
the numbers of code G
the numbers of code R

To encode an EAN-13 barcode, the digits are first split into 3 groups; the first digit, the first group of 6 and the last group of 6. The first group of six is encoded using a scheme whereby each digit has two possible encodings, one of which has even parity and one of which has odd parity. The first digit is encoded by selecting a pattern of choices between these two encodings for the next six digits, according to the table below. (Unlike the other digits, the first digit is not represented directly by a pattern of bars.) All digits in the last group of six digits are encoded using a single set of patterns which are the same patterns used for UPC.

If the first digit is zero, all digits in the first group of six are encoded using the patterns used for UPC, therefore, a UPC barcode is also an EAN-13 barcode with the first digit set to zero.

Structure of EAN-13
First digit First group of 6 digits Last group of 6 digits
0 LLLLLL RRRRRR
1 LLGLGG RRRRRR
2 LLGGLG RRRRRR
3 LLGGGL RRRRRR
4 LGLLGG RRRRRR
5 LGGLLG RRRRRR
6 LGGGLL RRRRRR
7 LGLGLG RRRRRR
8 LGLGGL RRRRRR
9 LGGLGL RRRRRR
Structure of EAN-8
First group of 4 digits Last group of 4 digits
LLLL RRRR
Encoding of the digits
Digit L-code G-code R-code
0 0001101 0100111 1110010
1 0011001 0110011 1100110
2 0010011 0011011 1101100
3 0111101 0100001 1000010
4 0100011 0011101 1011100
5 0110001 0111001 1001110
6 0101111 0000101 1010000
7 0111011 0010001 1000100
8 0110111 0001001 1001000
9 0001011 0010111 1110100

Note: Entries in the R-column are bitwise complements (logical operator: negation) of the respective entries in the L-column. Entries in the G-column are the entries in the R-column in reverse bit order. See pictures of all codes against a colored background.

Bookland

<templatestyles src="Module:Hatnote/styles.css"></templatestyles>

The EAN country codes 978 (and later 979) have been allocated since the 1980s to reserve a Unique Country Code (UCC) prefix for EAN identifiers of published books, regardless of country of origin, so that the EAN space can catalog books by ISBN rather than maintaining a redundant parallel numbering system. Similar arrangements are in place for ISSNs for periodicals (country code 977) and ISMNs for sheet music (country code 979).

Japanese Article Number

Japanese Article Number (JAN) is a barcode standard compatible with the International Article Number scheme. Use of the JAN standard began in 1978.[7] In January 2001 the manufacturer code changed to 7 digits (9 digits including the country code) for new companies.

How the GTIN (formerly EAN-13) is encoded

The code families UPC-A, EAN-8 and EAN-13 all use the same encoding. The encoded information is repeated in plain text below the barcode.

Coding

The barcode consists of 95 equally spaced areas. From left to right:

  • 3 areas to encode the start marker.
  • 6*7 = 42 areas making up the left group. This can be further subdivided into 6 subgroups, each consisting of seven areas. The subgroups encode digit 2-7. Each of these encodings can have even or odd parity. The parities taken together, encode digit 1.
  • 5 areas to encode the marker for the center of the barcode.
  • 6*7 = 42 areas making up the right group. This can be further subdivided into 6 subgroups, each consisting of seven areas. The subgroups encode digit 8-13. Digit 13 is the check digit. Digit 8-13 are all encoded with even parity.
  • 3 areas to encode the end marker.

Each area can be black (meaning 1) or white (meaning 0). A maximum of four black areas can be grouped together, these make up a bar. Likewise a maximum of four white areas can be grouped together, these make up a space.

The start marker and the end marker are encoded as 101. The center marker is encoded as 01010.

Each digit in GTIN, except digit 1, consists of seven bits (seven areas). A decimal number between 0 and 9 is encoded so that it consists of two bars and two spaces. The combination of widths of the bars and spaces encodes the number.

The digits in the left group are encoded so that they always start with a space, and end with a bar. The digits in the right group are encoded so that they always start with a bar, and end with a space.

The encoding is described in the following table:

Digit Pattern Bar width Encoding
of
digit 1
left right odd even
odd even (even)
0 0001101 0100111 1110010 3211 1123 OOOOOO EEEEEE
1 0011001 0110011 1100110 2221 1222 OOEOEE EEEEEE
2 0010011 0011011 1101100 2122 2212 OOEEOE EEEEEE
3 0111101 0100001 1000010 1411 1141 OOEEEO EEEEEE
4 0100011 0011101 1011100 1132 2311 OEOOEE EEEEEE
5 0110001 0111001 1001110 1231 1321 OEEOOE EEEEEE
6 0101111 0000101 1010000 1114 4111 OEEEOO EEEEEE
7 0111011 0010001 1000100 1312 2131 OEOEOE EEEEEE
8 0110111 0001001 1001000 1213 3121 OEOEEO EEEEEE
9 0001011 0010111 1110100 3112 2113 OEEOEO EEEEEE

For each digit there are three similar encodings: Left even and right are mirror-symmetrical to each other. Left odd is the bitwise inverse of right.

The first digit from the left is always encoded with odd parity, and the last digit (on the right side) is always encoded with even parity. It thus does not matter whether the barcode is scanned from the left or from the right: The scanning software can determine what is the beginning and end of the barcode, with the help of the fact that the first digit should have odd parity and the last digit should have even parity.

Example

EAN-13 barcode. A green bar indicates the bars and spaces that encode a digit.
  • C1, C3: Start-/Endmarker
  • C2: Marker for the center of the barcode.
  • 6 digits in the left group: 003994
  • 6 digits in the right group, the last digit is the check digit: 155486
  • A digit is encoded in seven bits, by two black bars and two white bars (space). Each bar can have a width between 1 and 4 bits.
  • Parity for the digits from left to right: OEOOEE EEEEEE (O = Odd parity, E = Even parity)
  • The first digit in the EAN code: The combination of parities of the digits in the left group encodes the digit 4.

The complete EAN-13 code is thus: 4 003994 155486.

Decoding

Scanning part of an EAN-13 barcode.

By using the barcode center marker, it is possible for a barcode scanner to scan just one half of the barcode at a time. This allows reconstruction of the code by means of a helical scan of the barcode by an angle of approximately 45 degrees.

See also

References

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found..
  5. Check Digit Calculator, at GS1 US.
  6. GS1 Check Digit Calculator, GS1.
  7. Lua error in package.lua at line 80: module 'strict' not found.

External links