"U.P.C. Version A" and "EAN-13” are and always have been 13 character symbols and the numbers themselves have always been 13 characters long. The U.P.C. (Version A) symbol and the EAN13 symbol are essentially one and the same. They both have the same number of bars and spaces.
When released the UCC* chose to call the U.P.C. a 10 character symbol and they chose to print only 11 of the characters in human readable form**. The 10 characters identifying the manufacturer and item were printed below the bars. The “system number” character was printed halfway up the left side. Further, they chose to carry only 10 digits of the number in their files. The "country flag" of “0” was neither printed nor carried in the computer records. Domestic systems could read and process only symbols with country flag “0”.
On the other hand, the European applications required a country identification so from the very outset they called it what it is, a 13 digit symbol, and they printed all 13 characters. They carried all 10 country flags including “0” in their records. The European systems could process both U.P.C. and EAN symbols and/or numbers.
In 1997 the Uniform Code Council, Inc announced project SUNRISE. This initiative required that all U.S. and Canadian companies must be capable of scanning and processing EAN-13 symbols, in addition to the U.P.C. symbols, at point-of-sale by January1, 2005. This has been completed, the UCC has since changed its name to GS1 US, and they have taken the responsibility of controlling both U.P.C. and EAN numbers. Someday GS1 will begin to call the symbol by a new name; maybe it will be designated as UPC/EAN.
Today U.P.C. and EAN numbers and symbols are universal and either format can be used throughout the world. Numbers sold by resellers that are subdividing U.P.C. numbers can be used and read in Europe. The solution to the record keeping problem caused by project SUNRISE was to simply add the invisible county flag “0” in front of the 12 digit U.P.C. number in the records.
Simply put, U.P.C. and EAN-13 symbols and numbers are the same.
* The name UCC is used throughout this discussion to avoid confusion although the name has changed over many years. In 1975 it was called UPCC (Uniform Product Code Council), later UCC (Universal Code Council) and now GS1.
** Below is some of the behind the scenes reasoning for the decisions.
When the U.P.C. was conceived for the grocers in the U.S. only 12 digits were required including the check character. The original design was a symbol in which the left half of the symbol was composed of “odd” parity characters and the right side was composed of “even” parity characters. Each printed character has two bars and two spaces and is made up of 7 modules. Odd parity simply means the printed representation of the numeric digit has an odd number of dark modules. Conversely even parity printed digits have an even number of dark modules.
The UCC* chose to call the U.P.C. a 10 character symbol and they chose to print only 11 of the characters in human readable form. The 10 characters identifying the manufacturer and item were printed below the bars. The “system number” character was printed halfway up the left side. Further, they chose to carry only 10 digits of the number in their files. The reason was both political and practical.
Before symbol marking was considered a well know consulting firm had been hired by the fledgling UCC to determine the number of digits needed to accomplish the goals of the grocery industry. Considering many factors, not the least of which was the limited power of computers of the day, a figure of 10 digits was recommended. It was a tough sell to convince the many groups involved that they would have to change whatever numbering system they were using to the new 10 digit number. Rather than admit that the consulting firm was wrong and so as not to open the number of digit argument again, the decision was to maintain that the U.P.C. was a 10 digit symbol and only a 10 digit number. Another factor considered was that it was more difficult to key 12 digits when the symbol did not scan. They fostered the illusion by requiring that the check digit be stripped at the scanner. The SN (system number) was necessary for in store processing but it was not needed in records transferred between systems. The illusion was reinforced by not printing the SN in line with the 10 product identifying digits and not printing the check digit at all.
After the U.P.C. had been in use several years, Europe recognized the usefulness of the U.P.C. but realized a 13th digit was needed to identify the many countries. The extra digit was encoded by encoding the left half of the symbol with 3 characters of even parity and 3 characters of odd parity and then arranging them in various patterns, each pattern representing a different country code. The scanner recognizes a series of digits as the right half of a symbol if the parity of the characters is all even and it recognizes the left half if it is composed of all odd OR if three characters are odd parity and three characters are even parity characters. (See Table 1)
With the acceptance of the EAN in Europe it was understood that the U.P.C. was actually 13 digits because the parity pattern of the left half of all odd characters was assigned the value (or country flag) of “0”. It was pointed out that only 11 of the 13 digits were printed and in the US only 10 digits were carried in the system. The UCC continued the delusion by using the foolish argument that "0" means nothing and therefore could be ignored. On the other hand, the European's were smart enough from the very outset to call the EAN symbol what it is, “EAN-13” and they printed all 13 characters. Systems in Europe carried all 10 country flags including 0 in their records and their systems could process both U.P.C. and EAN symbols and/or numbers. The U.S. groceries chains at the time were selling very few foreign goods and saw no reason to spend money modify their installed equipment. Although the U.P.C. was not widely accepted at that time, the UCC accommodated the foreign companies by issuing them U.P.C. numbers with the invisible country flag of “0”.
Although this was a burden on the European companies and was a waste of numbers since many European companies had both U.P.C. and EAN-13 numbers, it wasn’t until two decades later that something was done about this. In 1997 the Uniform Code Council, Inc announced project SUNRISE. This initiative required that all U.S. and Canadian companies must be capable of scanning and processing EAN-13 symbols, in addition to U.P.C. symbols, at point-of-sale by January1, 2005. This has been completed, the UCC has changed its name to GS1 US, and they have taken the responsibility of controlling both U.P.C. and EAN numbers.
Simply put the U.P.C. and EAN-13 symbols and numbers are the same. Below is a U.P.C. symbol with its equivalent EAN-13 superimposed in red. One can see that the bars and space are the same, only the human readable is different. Note that the U.P.C. has evolved in that the check digit is now printed and also that the SN has been brought down in line with the other characters but the country flag is still not printed. I would expect that in the near future the human readable will also be changed to the EAN format.
|Country Flag||Parity of left
|0||OOOOOO||U.S. & Canada|
|1||OOEOEE||U.S. & Canada|
Table 1- EAN & U.P.C. Version A assignments
Table 2- U.P.C. Version E assignments
Because there are more than 9 countries, the country flags have been further subdivided by using the next two digits for various uses and countries. The United States and Canada have the country flag 0 and subdivisions 000 thru 139. It is interesting to note that the publishing industry produces so many products that it is its own country called “Bookland” for number assignment purposes. Bookland has been given two subdivisions of the country flag 9. They are 978 and 979.
name UCC is used throughout this discussion to avoid confusion although
the name has changed over many years. In 1975 it was called UPCC
(Uniform Product Code Council), later UCC (Universal Code Council) and