Your QRToolkit

Что такое контрольная цифра штрихкода и как её проверить

Каждый штрихкод EAN и UPC заканчивается контрольной цифрой, которая обнаруживает ошибки сканирования.

Что такое контрольная цифра?

Контрольная цифра — последняя цифра номера штрихкода. Она не случайна: она вычисляется из всех остальных цифр по фиксированному алгоритму. Когда сканер считывает штрихкод, он пересчитывает, какой должна быть контрольная цифра на основе считанных им цифр, а затем сравнивает это значение с фактически считанной цифрой. Если они совпадают — считывание принято. Если нет — сканер отклоняет его как возможную ошибку чтения.

Это простой, но эффективный механизм обнаружения ошибок. Большинство ошибок считывания дают одну неверную цифру, а неверная цифра почти всегда даёт неверный расчёт контрольной цифры, который сканер улавливает.

Какие форматы штрихкодов используют контрольные цифры?

Семейство штрихкодов GS1 — EAN-13, UPC-A, EAN-8, ISBN-13 и GTIN-14 — все используют один и тот же алгоритм контрольной цифры. Это сделано намеренно: единый сканер может проверять штрихкоды любого формата GS1.

Code 128 и Code 39 также имеют механизмы контрольной цифры, хотя в Code 39 они необязательны и используют другие алгоритмы.

Алгоритм контрольной цифры GS1

Алгоритм GS1 по модулю 10 работает следующим образом:

  1. Возьмите все цифры, кроме контрольной (последней).
  2. Назначьте каждой цифре попеременные веса 1 и 3, начиная с крайней правой (позиция 1 справа получает вес 3, позиция 2 — вес 1, позиция 3 — вес 3 и так далее).
  3. Умножьте каждую цифру на её вес и сложите все результаты.
  4. Разделите сумму на 10. Контрольная цифра равна 10 минус остаток. Если остаток равен 0, контрольная цифра равна 0.

Пример с базой EAN-13: 400638133393

| Позиция справа | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | |---|---|---|---|---|---|---|---|---|---|---|---|---| | Цифра | 4 | 0 | 0 | 6 | 3 | 8 | 1 | 3 | 3 | 3 | 9 | 3 | | Вес | 1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 | | Произведение | 4 | 0 | 0 | 18 | 3 | 24 | 1 | 9 | 3 | 9 | 9 | 9 |

Сумма: 4+0+0+18+3+24+1+9+3+9+9+9 = 89

Остаток: 89 mod 10 = 9

Контрольная цифра: 10 − 9 = 1

Полный EAN-13: 4006381333931

Проверка контрольной цифры без программ

Если у вас есть 13-значный EAN-13 и вы хотите убедиться в его корректности:

  1. Отделите последнюю цифру (контрольную).
  2. Примените алгоритм к первым 12 цифрам.
  3. Сравните вычисленную контрольную цифру с последней цифрой. Если они совпадают — номер верен.

Использование инструмента проверки контрольной цифры

Проверщик контрольной цифры на этом сайте делает это автоматически. Введите номер штрихкода, выберите формат (EAN-13, UPC-A, EAN-8, ISBN-13 или GTIN-14), и инструмент покажет:

  • Если введён полный номер (13 цифр для EAN-13): проверит контрольную цифру и сообщит, верна ли она.
  • Если введён основной номер без контрольной цифры (12 цифр для EAN-13): вычислит и отобразит правильную контрольную цифру.

Инструмент также показывает пошаговый расчёт, чтобы вы могли проверить работу.

Типичные ситуации, где это важно

Ошибки при переписывании. У вас есть номер товара, написанный на бумаге, но вы не уверены, скопирован ли он правильно. Введите его в проверщик, чтобы убедиться в соответствии контрольной цифры остальным.

Проверка базы данных. У вас есть таблица с артикулами, импортированными от поставщика. Проверка контрольной цифры выявит любые с опечаткой.

Создание штрихкода из артикула. У вас есть 12-значный базовый номер, и вам нужен полный 13-значный EAN-13. Проверщик вычислит контрольную цифру. Это также полезно при использовании генератора случайных номеров штрихкодов для тестирования — структурно верная контрольная цифра всё равно нужна, чтобы штрихкод сканировался без ошибок.

Проверка перед печатью. Если вы создаёте собственные штрихкоды с префиксом компании GS1, убедитесь в правильности контрольной цифры перед тиражом. Штрихкод с неверной контрольной цифрой будет отклонён каждым сканером, который её проверяет. После подтверждения корректности номера вы можете создать и просмотреть готовый штрихкод с помощью генератора EAN-13 или генератора UPC-A.

Когда верная контрольная цифра не означает регистрацию

Верная контрольная цифра означает, что номер структурно корректен. Она не означает, что номер зарегистрирован в GS1, присвоен реальному товару или признан базой данных какого-либо ретейлера. Это совершенно отдельные системы.

Поддельный штрихкод — созданный с произвольным или случайным номером вместо зарегистрированного префикса GS1 — пройдёт проверку контрольной цифры и будет сканироваться корректно. Он просто вернёт «неизвестный товар» в любой базе данных ретейлера при поиске по штрихкоду.

Похожие инструменты