European Article Number

European Article Number, EAN (европейский номер товара), в дальнейшем после распространения известный также как международный артикул (International Article Number) — европейский стандарт штрихкода, предназначенный для кодирования идентификатора товара и производителя. Является надмножеством американского стандарта UPC.
Стандартизация
Стандартизацией и регистрацией кодов EAN занималась европейская ассоциация ЕАN в продолжение развития стандартов, разработанных организациями UCC (Uniform Code Council, Inc.) в США и ECCC (Electronic Commerce Council of Canada) в Канаде. В 2005 году эти организации объединились и образовали глобальную организацию по стандартизации «GS1».
Этот стандарт является универсальным для всех стран, а американская и канадская национальные организации настойчиво рекомендовали всем торговым компаниям своих стран заменить устаревшее оборудование и программы UPC, не способные считывать EAN, на современные.
Разновидности кода:
- EAN-8 (сокращённый) — кодируется 8 цифр.
- EAN-13 (полный) — кодируется 13 цифр (12 значащих + 1 контрольная сумма).
- EAN-128 — кодируется любое количество букв и цифр, объединенных в регламентированные группы.
Коды EAN-8 и EAN-13 содержат только цифры и никаких букв или других символов. Например: 2400000032632. Кодом EAN-128 кодируется любое количество букв и цифр по алфавиту Code-128. Например: (00)353912345678(01)053987(15)051230, где (15) группа обозначает срок годности 30 декабря 2005.
История разработки и отличие от UPC
Первоначально была разработана американская система штрихового кодирования Universal Product Code. Статью об этом коде настоятельно рекомендуется изучить перед чтением последующего текста. В текущей же статье пропущена та часть информации, которая для обоих кодов является идентичной, и данная статья больше описывает различия и особенности EAN-13 по сравнению с UPC.
Разработанная и внедрённая система кодировки товаров UPC в США и Канаде стала настолько популярной в супермаркетах, что европейцы также задумались о её внедрении. Стояло две задачи: обеспечить производителей определённым диапазоном кодов, отличных от американских, для кодировки производимых товаров и обеспечить возможность магазинам считывать как американские, так и европейские коды, причём желательно, чтобы на упаковке был только один, единый штрихкод, а не два кода (для США и для Европы). Для того, чтобы закодировать в коде товары других стран, необходимо было увеличить количество разрядов кода с 12 цифр, которые были в эксклюзивном владении американцев и канадцев до, как минимум, 13 цифр, чтобы использовать эту дополнительную, и первую по счёту цифру в коде в качестве условного сигнала для торговых программ, что этот товар не американского производства.
Американцам и канадцам в качестве этой цифры разработчики сразу зарезервировали нуль. У европейцев стояла и организационная задача: распределить (делегировать) определённые диапазоны значений кодов различным странам мира, для чего определили в качестве префикса региона первые три цифры, включая дополнительную тринадцатую. Вопреки заблуждению, этот префикс не означает страну происхождения товара, а лишь указывает код регионального регистратора, где зарегистрировалась компания, печатающая код на своей упаковке. Товар может быть произведён, например, в Китае, но китайская компания, зная, что товар в этой русскоязычной упаковке будет продаваться в России, законно может зарегистрировать для себя коды в российской организации GS1, и выпускать продукцию со штрихкодом, начинающимся с 460—469. И наоборот, товар может быть выпущен в России, а код может быть использован не российский. Однако чаще всего в качестве регионального кода действительно встречается код той страны, где выпущен данный товар.
Помимо организационной задачи, перед разработчиками стояла серьёзная техническая задача — сохранить совместимость кодов и одновременно возможность минимальных аппаратно-программных переделок сканеров штрихкода, тогда ещё достаточно дорогих. Важно было сохранить то же самое количество штрихов, осевую симметричность кода для его удобного чтения как в прямом, так и в обратном направлении (если товар поднесён к сканеру «вверх тормашками»), возможность чтения негативных кодов (светлые штрихи на тёмном фоне). В результате было найдено простое решение: в целях максимальной совместимости кодирование EAN было переработано из UPC так, что по-прежнему содержало только 12 «штриховых цифр» (то есть только 12 цифр в коде имеют соответствие конкретным штрихам), а дополнительная тринадцатая цифра вычислялась логическим путём. «Рисунок» EAN-13 ничем не отличается от рисунка UPC, а для кодов, начинающихся с нуля, был точной копией.
Внутренняя структура кода EAN-13
Более подробно внутренняя структура кода рассматривается в статье Universal Product Code. Основное отличие этих кодов по внутренней организации — механизм вычисления тринадцатой цифры и почти несущественное изменение в расчёте контрольного числа с учётом этой 13-й цифры.
13-я цифра




| Первая цифра | Первая (левая) группа из 6 цифр | Вторая (правая) группа из 6 цифр |
|---|---|---|
| 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 |
| Первая (левая) группа из 4 цифр | Вторая (правая) группа из 4 цифр |
|---|---|
| LLLL | RRRR |
Первая цифра (в иллюстрации к статье — цифра 8) кодируется не дополнительными штрихами, а способом кодирования левой половины штрихкода (10 разновидностей). Из таблицы видно, что для кодирования первой цифры используется немного разное начертание штрихов, обозначенное буквами L и буквами G. Определённое чередование этих кодов даёт сканеру на уровне логики определить 13 цифру. Например, для цифры «1» G-код у третьей, пятой и шестой цифры, то есть встретив код, в котором G-код левой части кода расположен в этом порядке, сканер в качестве первой цифры передаст в компьютер единицу. Для цифры «2» G-код у третьей, четвёртой и шестой цифры, соответственно сканер передаст в компьютер двойку. Для других цифр эта логика отображена в таблице.
| Цифра | L-код | R-код | G-код |
|---|---|---|---|
| 0 | 0001101 | 1110010 | 0100111 |
| 1 | 0011001 | 1100110 | 0110011 |
| 2 | 0010011 | 1101100 | 0011011 |
| 3 | 0111101 | 1000010 | 0100001 |
| 4 | 0100011 | 1011100 | 0011101 |
| 5 | 0110001 | 1001110 | 0111001 |
| 6 | 0101111 | 1010000 | 0000101 |
| 7 | 0111011 | 1000100 | 0010001 |
| 8 | 0110111 | 1001000 | 0001001 |
| 9 | 0001011 | 1110100 | 0010111 |
Графические различия L-кода, R-кода и G-кода состоят в следующем. Для каждой цифры это одна и та же комбинация чёрно-белых штрихов, L-код отличается от R-кода лишь фотографически негативным исполнением, а G-код отличается от R-кода реверсивным (зеркальным) исполнением.
Для цифры 0 в коде ни для одной из шести цифр левой части кода нет ни одного преобразования в зеркально-негативный вид, то есть все штрихи кодируются L-кодом, как в UPC. EAN-сканер, встретив код без штрихов с G-кодом, передаёт в компьютер первую цифру 0. В свою очередь, если этот код прочитает уже редко применяемый сканер штрихкодов UPC, то он будет просто прочитан как «родной» код UPC. Если же сканер UPC встретит на своём пути штриховку с G-кодом, то он не сможет считать этот код и выдаст ошибку или не заметит и не передаст в компьютер никакого кода. Этим и обеспечена полная совместимость «снизу вверх».
Таким образом, UPC может считаться частным случаем, подмножеством кода EAN-13, у которого первая цифра есть 0 и которая часто не указывается в виде арабской цифры, тогда эти коды ничем не отличаются друг от друга по рисунку. Была полностью сохранена возможность чтения «американских» кодов на «европейских» сканерах, но не наоборот. Код EAN-13 и его 13-я цифра в свою очередь формируется «игрой» негативности-реверсивности последовательности штрихов в левой части кода, в результате чего американские сканеры UPC читать европейский код не в состоянии, но обеспечена максимальная «похожесть» кодов друг на друга. С течением времени в США и Канаде этот тип сканеров уже вытеснен из магазинов, и установлены сканеры, способные считывать кодировку EAN-13, поэтому продажа товаров из других стран не вызывает проблем на их территории.
Визуальная расшифровка штрихкода
Визуально отличать ширину чёрных и белых штрихов (черные полоски шириной в 1, 2, 3, 4 условные единицы и промежутки (пробелы) между полосками шириной в 1, 2, 3, 4 условные единицы) поможет следующая таблица:
| Штрихи | Цифра |
|---|---|
| 1-1-1-4 | 6 |
| 1-1-2-3 | 0* |
| 1-1-3-2 | 4 |
| 1-1-4-1 | 3* |
| 1-2-1-3 | 8 |
| 1-2-2-2 | 1* |
| 1-2-3-1 | 5 |
| 1-3-1-2 | 7 |
| 1-3-2-1 | 5* |
| 1-4-1-1 | 3 |
| 2-1-1-3 | 9* |
| 2-1-2-2 | 2 |
| 2-1-3-1 | 7* |
| 2-2-1-2 | 2* |
| 2-2-2-1 | 1 |
| 2-3-1-1 | 4* |
| 3-1-1-2 | 9 |
| 3-1-2-1 | 8* |
| 3-2-1-1 | 0 |
| 4-1-1-1 | 6* |
Последовательности штрихов упорядочены по возрастанию ширины штрихов. Цифры со знаком звёздочки указывают на L-G схемы кодирования цифр, то есть звёздочки нужны для определения самой первой (13-й) цифры. Геометрически ширина чёрной полоски может быть на единицу больше (по сравнению с шириной пробела) из-за того, что штрихкод иногда печатается на струйном принтере, и краска пропитывает бумагу либо размывается жидкостью.
EAN-8
Использование штрихкодов EAN-13 хотя и удобно, но не всегда возможно. Если товар имеет малые размеры, то для кода EAN-13 может не найтись достаточно места на этикетке. Уменьшение размера кода приводит к уменьшению ширины штрихов. Если штрихи будут слишком узкими, разрешающей способности сканера может оказаться недостаточно для уверенного считывания этого штрихкода. Для маркировки небольших товаров разработан стандарт штрихкода EAN-8, в теле сообщения которого кодируется только 8 цифр вместо 13.
Как показывает практика, кодом EAN-8 часто маркируются и достаточно большие по размеру товары. Причина такой маркировки кроется в минимизации ошибок считывания на высокоскоростных конвейерных линиях при автоматизации логистических задач как производителя, так и компаний, осуществляющих хранение и доставку товаров конечному потребителю.
Каждая цифра в EAN-8, как и в EAN-13, кодируется с помощью четырёх штрихов: двух белых и двух чёрных. Штрихи могут иметь относительную ширину в одну, две, три и четыре единицы. Общая ширина штрихов одной цифры составляет семь единиц. Направление чтения комбинации штрихов значения не имеет.
EAN-128 (GS1-128)

Формат EAN-128 (GS1-128) предназначен для передачи информации о грузе между промышленными предприятиями. В коде регламентирован словарь (Code-128) и группы кодов, но не регламентирована длина. Такой код может содержать различную информацию, например, код товара, сроки годности, размеры, объём, код партии производителя и др.
Региональные коды национальных организаций GS1
| Префикс | Национальная организация GS1 |
|---|---|
| 000—139 | GS1 США |
| 200—299 | Внутренняя нумерация (для свободного использования внутри предприятий) |
| 300—379 | GS1 Франция |
| 380 | GS1 Болгария |
| 383 | GS1 Словения |
| 385 | GS1 Хорватия |
| 387 | GS1 Босния-Герцеговина |
| 400—440 | GS1 Германия |
| 450—459 490—499 | GS1 Япония |
| 460—469 | GS1 Россия |
| 470 | GS1 Киргизия |
| 471 | GS1 Тайвань |
| 474 | GS1 Эстония |
| 475 | GS1 Латвия |
| 476 | GS1 Азербайджан |
| 477 | GS1 Литва |
| 478 | GS1 Узбекистан |
| 479 | GS1 Шри-Ланка |
| 480 | GS1 Филиппины |
| 481 | GS1 Белоруссия |
| 482 | GS1 Украина |
| 484 | GS1 Молдавия |
| 485 | GS1 Армения |
| 486 | GS1 Грузия |
| 487 | GS1 Казахстан |
| 489 | GS1 Гонконг |
| 500—509 | GS1 Великобритания |
| 520 | GS1 Греция |
| 528 | GS1 Ливан |
| 529 | GS1 Кипр |
| 530 | GS1 Албания |
| 531 | GS1 Северная Македония |
| 535 | GS1 Мальта |
| 539 | GS1 Ирландия |
| 540—549 | GS1 Бельгия, Люксембург |
| 560 | GS1 Португалия |
| 569 | GS1 Исландия |
| 570—579 | GS1 Дания |
| 590 | GS1 Польша |
| 594 | GS1 Румыния |
| 599 | GS1 Венгрия |
| 600—601 | GS1 Южная Африка |
| 603 | GS1 Гана |
| 608 | GS1 Бахрейн |
| 609 | GS1 Маврикий |
| 611 | GS1 Марокко |
| 613 | GS1 Алжир |
| 616 | GS1 Кения |
| 618 | GS1 Кот д’Ивуар |
| 619 | GS1 Тунис |
| 621 | GS1 Сирия |
| 622 | GS1 Египет |
| 624 | GS1 Ливия |
| 625 | GS1 Иордания |
| 626 | GS1 Иран |
| 627 | GS1 Кувейт |
| 628 | GS1 Саудовская Аравия |
| 629 | GS1 ОАЭ |
| 640—649 | GS1 Финляндия |
| 690—699 | GS1 Китай |
| 700—709 | GS1 Норвегия |
| 729 | GS1 Израиль |
| 730—739 | GS1 Швеция |
| 740 | GS1 Гватемала |
| 741 | GS1 Сальвадор |
| 742 | GS1 Гондурас |
| 743 | GS1 Никарагуа |
| 744 | GS1 Коста-Рика |
| 745 | GS1 Панама |
| 746 | GS1 Доминиканская республика |
| 750 | GS1 Мексика |
| 754—755 | GS1 Канада |
| 759 | GS1 Венесуэла |
| 760—769 | GS1 Швейцария |
| 770 | GS1 Колумбия |
| 773 | GS1 Уругвай |
| 775 | GS1 Перу |
| 777 | GS1 Боливия |
| 779 | GS1 Аргентина |
| 780 | GS1 Чили |
| 784 | GS1 Парагвай |
| 786 | GS1 Эквадор |
| 789—790 | GS1 Бразилия |
| 800—839 | GS1 Италия |
| 840—849 | GS1 Испания |
| 850 | GS1 Куба |
| 858 | GS1 Словакия |
| 859 | GS1 Чехия |
| 860 | GS1 Сербия и Черногория |
| 865 | GS1 Монголия |
| 867 | GS1 Северная Корея |
| 869 | GS1 Турция |
| 870—879 | GS1 Нидерланды |
| 880 | GS1 Южная Корея |
| 884 | GS1 Камбоджа |
| 885 | GS1 Таиланд |
| 888 | GS1 Сингапур |
| 890 | GS1 Индия |
| 893 | GS1 Вьетнам |
| 899 | GS1 Индонезия |
| 900—919 | GS1 Австрия |
| 930—939 | GS1 Австралия |
| 940—949 | GS1 Новая Зеландия |
| 950 | GS1 Главный офис |
| 955 | GS1 Малайзия |
| 958 | GS1 Макао |
| 977 | Периодические издания, пресса (ISSN) |
| 978—979 | Книги (ISBN) |
| 980 | Возвратные квитанции |
| 981—982 | Валютные купоны |
| 990—999 | Купоны |