Главная → Блог → Неверный формат кода маркировки: код должен содержать полный код маркировки, включая код проверки

Неверный формат кода маркировки: код должен содержать полный код маркировки, включая код проверки

Неверный формат кода маркировки: код маркировки товара должен содержать полный код маркировки, включая код проверки

Такое сообщение Честный ЗНАК показывает, когда в отчёт о нанесении попадает код без кода проверки — «криптохвоста» — или код, в котором система не смогла этот хвост найти. Чаще всего с ним сталкиваются, когда вносят коды в личном кабинете вручную: копируют из таблицы или считывают сканером прямо в форму.

Причина почти всегда одна из трёх: вместо полного кода вставлен код идентификации, потерялись невидимые разделители или код испортился по дороге — в Excel, из-за раскладки клавиатуры или регистра. Разберём, как отличить одно от другого и что делать.

Коротко: что не так с кодом

Посмотрите на код, который не приняла система, и найдите свой случай в таблице.

Как выглядит кодВ чём делоЧто делать
Заканчивается на серийном номере, дальше ничего нетЭто код идентификации — без кода проверкиВзять полный код из файла заказа или считать с этикетки
«Хвост» есть, но код всё равно не принятПри сканировании или вставке потерялся разделитель GSЗагрузить коды файлом CSV или настроить сканер
Вместо латинских букв — русские, заглавные и строчные перепутаныСканер работал в русской раскладке или с включённым Caps LockСчитать код заново в английской раскладке
Пропал ведущий ноль, цифры превратились в запись вида 1,05E+30Код испортил ExcelОткрыть исходный файл в текстовом редакторе
Вокруг 01 и 21 стоят скобки, между частями пробелыКод записан в «читаемом» видеУбрать скобки и пробелы
В Трумарке отчёт о нанесении подаётся без ручного ввода кодов

Полные коды с кодом проверки сервис получает из заказа и сам передаёт их в отчёте о нанесении. Копировать коды в личный кабинет, сканировать их в форму и готовить файл CSV не нужно — ошибке формата неоткуда взяться.

Попробовать Трумарк бесплатно →Полный функционал на 7 дней, без обязательств

Что такое полный код маркировки и код проверки

Код, который напечатан на этикетке в виде Data Matrix, состоит из двух частей.

  • Код идентификации — «имя» конкретной единицы товара: идентификатор 01 и код товара (GTIN, 14 цифр), затем идентификатор 21 и серийный номер.
  • Код проверки — «криптохвост», которым система подтверждает подлинность кода.

Вместе они и есть полный код маркировки. Честный ЗНАК описывает два его вида:

Вид кодаИз чего состоит
Стандартный01 + GTIN + 21 + серийный номер + GS + 91 + 4 символа + GS + 92 + 44 символа
Укороченный01 + GTIN + 21 + серийный номер + GS + 93 + 4 символа

У обуви код проверки длиннее: после идентификатора 92 идут 88 символов.

GS — служебный символ-разделитель, двадцать девятый в таблице ASCII. На экране его не видно, но для системы он обязателен: по нему она понимает, где кончился серийный номер и начался код проверки.

Код идентификации: 01 04601234567890 21 5aBcDe
Полный код маркировки: 01 04601234567890 21 5aBcDe [GS] 93 AbC1

Пробелы в примере поставлены для наглядности — в настоящем коде их нет, а [GS] — один невидимый символ. Длина серийного номера зависит от товарной группы. Подробно структура разобрана в статье о кодах маркировки и кодах идентификации, а собрать и проверить Data Matrix можно в генераторе GS1 DataMatrix.

Где возникает ошибка

Сообщение появляется там, где системе нужен именно полный код, а она получает что-то другое.

  • Отчёт о нанесении в личном кабинете — самый частый случай. Отчёт подаётся в разделе «Управление заказами» → «Документы» → вкладка «Отчёты». На втором шаге коды добавляют вручную в поле или загружают файлом CSV — и именно здесь код проверяется на формат.
  • Отчёт о нанесении из учётной программы. Проверку выполняет Честный ЗНАК, программа только передаёт ответ, поэтому текст будет тем же.
  • Чеки и другие документы. У похожих проверок там свои формулировки — «Неверный код маркировки», «Криптохвост не найден или некорректен». Они собраны в таблице ниже.

Важно. Честный ЗНАК отдельно предупреждает: разделитель GS — специальный символ, и если внести его текстом с клавиатуры, код будет обработан с ошибкой. Набрать полный код маркировки на клавиатуре не получится.

Причина 1. Вставлен код идентификации вместо кода маркировки

Самая частая причина. Код скопировали оттуда, где кода проверки нет:

  • из раздела «Коды маркировки» личного кабинета или выгрузки из него;
  • из УПД, накладной или другого документа;
  • из учётной системы, которая хранит только коды идентификации.

Честный ЗНАК хранит и показывает коды идентификации — без криптохвоста. Этого хватает для отгрузки и вывода из оборота, но не для отчёта о нанесении. Восстановить код проверки по коду идентификации нельзя: он формируется криптографически при выпуске кода.

Полный код есть в трёх местах:

  • в файле, который вы получили из заказа кодов;
  • в программе, через которую заказывали и печатали коды;
  • на самой этикетке — в Data Matrix.

Если коды получены из заказа в виде PDF или напечатаны в типографии, файла с символьной записью у вас нет. Честный ЗНАК в этом случае советует считать Data Matrix сканером или мобильным приложением — «Чекмарк» либо «Честный ЗНАК.Бизнес». Запрашивать файл у типографии бесполезно: передавать полные коды с кодом проверки она не вправе.

Тот же приём работает, когда этикетка есть, а исходный файл потерян, — как при повторной печати кода маркировки.

Причина 2. Потерялся разделитель GS

Вторая причина коварнее: код считан с этикетки целиком, криптохвост на месте, а система его всё равно не видит.

Дело в символе GS. Сканер, работающий как клавиатура, «печатает» символы в поле ввода. GS — не буква и не цифра, а управляющий символ, и клавиши для него нет. В зависимости от настроек сканер его пропускает, заменяет другим знаком или отправляет сочетанием клавиш, которое браузер не воспринимает. В форму попадает код, склеенный без разделителей.

Без GS система читает серийный номер «до упора»: к нему прилипают идентификатор 93 или 91 и всё, что идёт дальше. Серийный номер получается длиннее положенного, а кода проверки как будто нет. В классификации Честного ЗНАКа у этих ситуаций есть свои названия — «Без разделителя GS» и «Серийный номер больше ожидаемой длины».

Что делать

  • Загружать коды файлом, а не вставлять в поле. На втором шаге отчёта о нанесении коды можно добавить файлом CSV — до 30 000 в одном отчёте. Образцы таких файлов для стандартного и укороченного кода есть в базе знаний Честного ЗНАКа.
  • Брать коды из файла заказа. В нём разделители сохранены. Открывайте файл в текстовом редакторе, а не в Excel.
  • Настроить сканер. В настройках большинства сканеров можно включить передачу GS — в инструкциях он называется GS, FNC1 или «групповой разделитель». Результат проверяйте в редакторе, который показывает служебные символы, например в Notepad++.

В Трумарке. Отчёт о нанесении сервис отправляет сам — с полными кодами из заказа, в которых все разделители на месте. Сканер и форма личного кабинета в этом не участвуют.

Причина 3. Код повреждён: раскладка, регистр, Excel

Третья группа причин — код дошёл до системы не таким, каким был напечатан. Серийный номер и код проверки чувствительны к каждому символу и к регистру букв.

Что случилосьКак это выглядитКак избежать
Русская раскладка при сканированииЛатинские буквы заменены русскими, знаки препинания — другимиПеред сканированием переключить раскладку на английскую
Включён Caps LockЗаглавные и строчные буквы поменялись местамиВыключить Caps Lock; в классификации Честного ЗНАКа это «инверсия регистра»
Файл открыт в ExcelПропал ведущий ноль, длинные числа записаны как 1,05E+30Работать с кодами в текстовом редакторе; в Excel — только текстовый формат столбца
Код обрезанКриптохвост короче положенного или отсутствуетКопировать код целиком, не ограничивать ширину столбца и длину поля
Несколько кодов подрядДва кода в одной строке без разделителяОдин код — одна строка файла
Скобки и пробелыКод записан как (01)…(21)…Указывать код без скобок вокруг идентификаторов и без пробелов

Проще всего такие повреждения ловить на глаз в текстовом редакторе: правильный код начинается с 01, за ним идут 14 цифр кода товара, затем 21 и серийный номер, в котором встречаются только латинские буквы, цифры и знаки.

Как проверить код перед отправкой

Проверка занимает минуту и экономит повторную подачу отчёта.

  1. Начало кода. Первые два символа — 01, следом 14 цифр кода товара. Если код начинается с другой цифры или в нём 13 цифр вместо 14, пропал ведущий ноль.
  2. Серийный номер. После кода товара идёт 21 и серийный номер. Русских букв в нём быть не может.
  3. Код проверки. После серийного номера должно идти продолжение: 93 и ещё 4 символа либо 91 и 92 с длинной последовательностью. Если код заканчивается серийным номером — это код идентификации.
  4. Разделители. В текстовом редакторе с показом служебных символов перед 93, 91 и 92 должен стоять GS.

Быстрее — проверить код сервисом. Бесплатная проверка кода маркировки на нашем сайте подсветит части кода и покажет, если у него нет кода проверки или нарушена структура. Код можно вставить строкой или отсканировать камерой телефона.

Как исправить ошибку: порядок действий

  1. Определите, откуда взяты коды. Если из раздела «Коды маркировки», из УПД или из выгрузки — это коды идентификации, и нужен другой источник.
  2. Найдите полные коды. Файл из заказа кодов или программа, через которую вы их получали. Если есть только этикетки — считайте с них Data Matrix сканером или приложением.
  3. Проверьте один код. Убедитесь, что в нём есть код проверки и разделители, — по шагам из предыдущего раздела.
  4. Подготовьте файл CSV с полными кодами и загрузите его в отчёт вместо ручного ввода.
  5. Отправьте отчёт и подпишите его. После этого проверьте результат: отчёт может быть обработан частично — тогда статус «Нанесён» получат только коды без ошибок, а по остальным понадобится новый отчёт.

Что происходит с кодом после отчёта о нанесении и какой шаг следующий — в статье о статусах кодов маркировки.

Где нужен полный код, а где — код идентификации

Обратная ошибка встречается не реже: полный код с криптохвостом вставляют туда, где нужен код идентификации. Например, в УПД — и документ отклоняется.

ГдеКакой код нужен
Печать этикетокПолный код маркировки
Отчёт о нанесенииПолный код маркировки
Продажа через кассуПолный код маркировки — касса считывает его с этикетки
УПД и другие документы ЭДОКод идентификации, без кода проверки
Ввод в оборот, вывод из оборота, списаниеКод идентификации
Формирование упаковок и наборовКод идентификации

В XML-файле УПД у кодов есть и своя особенность: символы «меньше», «больше», амперсанд, апостроф и кавычки нужно экранировать, а скобки вокруг идентификаторов ставить нельзя. Примеры — в статье с образцами УПД.

Похожие ошибки: «Неверный код маркировки» и другие

У проверок формата в разных документах свои коды и тексты. Причина у всех общая — код записан не так, как его ждёт система.

СообщениеГде встречаетсяЧто проверяется
79: Неверный код маркировкиУПД, чеки, формирование упаковки, списаниеДлина кода и допустимые символы
03: Недопустимо указывать скобки для идентификаторов применения AI 01, 21, 8005УПДКод записан со скобками
79: Идентификаторы применения должны быть указаны без обрамляющих скобокФормирование упаковкиСкобки в коде транспортной упаковки
126: Криптохвост не найден или некорректенЧекиКасса передала код без кода проверки или с повреждённым
22: Коды маркировки не найденыУПД, чеки, формирование упаковкиКод записан правильно по форме, но в системе такого нет — разбор ошибки 22

Полный список — на странице «Коды ошибок Честного ЗНАКа».

Как Трумарк избавляет от ошибок формата

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

  • Заказ и печать. Коды заказываются в сервисе и сразу уходят в печать — полные, с кодом проверки.
  • Отчёт о нанесении. Сервис подаёт его сам: полные коды берутся из заказа, а не из буфера обмена.
  • Ввод в оборот и УПД. В эти документы сервис подставляет коды идентификации — без кода проверки, как и требует Честный ЗНАК. Перепутать, где какой код нужен, не получится.

А перед каждым шагом сервис сверяет коды с Честным ЗНАКом.

ШагЧто Трумарк проверяет до отправкиЧто вы видите
Отчёт о нанесенииСтатус каждого кода в Честном ЗНАКеУже нанесённые коды повторно не отправляются. Списанные исключаются с пометкой «Код списан в Честном ЗНАКе. Нанесение невозможно»
Ввод в оборотСтатус и владельца: код должен быть «Нанесён» и числиться за вашей компанией«Все коды в корректном статусе» либо «Кодов в некорректном статусе» с числом и причиной по каждому коду
АгрегацияСтатус, владельца и то, не лежит ли код уже в другой упаковкеПричину по каждому коду: чужой код, неподходящий статус, «Код уже находится в составе упаковки»
УПДСтатус «В обороте» и владельца каждого кодаПричину по каждому коду — до того, как документ ушёл покупателю

Как устроен процесс целиком — на странице для производителей.

Попробовать Трумарк бесплатно →Полный функционал на 7 дней, без обязательств

Частые вопросы о формате кода маркировки

Не нашли ответ — напишите нам через форму на странице «Контакты» или оставьте заявку прямо здесь.

Что значит «Неверный формат кода маркировки»?

Система ждала полный код маркировки, а получила код без кода проверки или код, в котором не смогла его найти. Обычно причина одна из трёх: вставлен код идентификации без «криптохвоста», при вводе потерялся разделитель GS, или код испорчен — раскладкой клавиатуры, регистром либо Excel.

Что такое код проверки в коде маркировки?

Это последняя часть кода — «криптохвост», который подтверждает подлинность кода. Он бывает коротким: идентификатор 93 и 4 символа. И длинным: идентификатор 91 с четырьмя символами и идентификатор 92 с 44 символами, у обуви — с 88. Перед кодом проверки стоит невидимый разделитель GS.

Чем код маркировки отличается от кода идентификации?

Код идентификации — это код товара (GTIN) и серийный номер: по нему единица товара числится в Честном ЗНАКе. Код маркировки — это код идентификации плюс код проверки. Полный код нужен для печати этикеток, отчёта о нанесении и продажи через кассу, в остальных документах указывают код идентификации.

Где взять полный код маркировки с кодом проверки?

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

Можно ли восстановить код проверки по коду идентификации?

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

Почему сканер считывает код без разделителей GS?

Сканер в режиме клавиатуры «печатает» символы в поле ввода, а GS — управляющий символ, для которого клавиши нет. В зависимости от настроек сканер его пропускает или заменяет. Честный ЗНАК прямо предупреждает: если внести GS текстом с клавиатуры, код обработается с ошибкой.

Почему код из Excel не принимается?

Excel считает код числом: убирает ведущий ноль, превращает длинную последовательность цифр в запись вида 1,05E+30 и теряет служебные символы. Открывайте файл с кодами в текстовом редакторе, а в Excel храните столбец с кодами в текстовом формате.

Что значит ошибка 79 «Неверный код маркировки»?

Это проверка формата кода в документах и чеках: длина или символы кода не соответствуют правилам. Причины те же — код обрезан, испорчен при копировании или записан со скобками и пробелами. Исправляется заменой кода на корректный и отправкой нового документа.

Сколько кодов можно указать в одном отчёте о нанесении?

В личном кабинете Честного ЗНАКа — от 1 до 30 000 кодов в одном отчёте. Коды добавляют в поле вручную или загружают файлом в формате CSV.

Как подать отчёт о нанесении без ошибки формата?

Загружать коды файлом из заказа, а не вводить их в поле вручную или сканером. В Трумарке отчёт о нанесении сервис подаёт сам: полные коды с кодом проверки берутся из заказа, поэтому разделители и криптохвост не теряются.

Прокрутить вверх