LabelGen
Разделители GS в кодах маркировки пропали: как найти причину и всё починить

Разделители GS в кодах маркировки пропали: как найти причину и всё починить

Когда касса, 1С или система маркировки сообщает, что в структуре кода отсутствуют разделители GS, это значит одно: DataMatrix потерял служебные символы, по которым считывается его логика. Система видит набор знаков, но не понимает, где заканчивается один блок данных и начинается другой. Итог — продажа не проходит, приёмка на маркетплейсе зависает.

Если коротко
GS — скрытый управляющий символ ASCII 29 (0x1D). Его потеря почти всегда связана с тем, как код считывают или прогоняют через программы. Чаще всего виноват сканер, работающий в режиме клавиатуры, либо Excel, RDP и устаревшая 1С. Настройка оборудования закрывает большинство таких сбоев.

Зачем в DataMatrix нужен GS и где он стоит

GS (Group Separator) — разделитель из мира GS1. Внутри кода он выполняет роль границы: показывает, что поле переменной длины закончилось. Символ относится к управляющим, поэтому на этикетке его не видно и в текстовых редакторах он не отображается. Но сканер обязан передать его вместе с остальными данными.

Как выглядит типовой код «Честного знака»: [FNC1] 01 + GTIN(14) 21 + серийник(13) [GS] 91 + ключ(4) [GS] 92 + криптохвост(88).

Что за блокЧто хранитСколько знаковПример
FNC1 (ASCII 232)Метка формата GS11 байт—
AI (01) + GTINНомер товара14 цифр04607034376471
AI (21) + серийникID конкретной единицы13 символовsQ!s6FE82pOHk
GS (ASCII 29)Разделитель1 байтне отображается
AI (91) + ключПроверочный ключ4 символаAB12
GS (ASCII 29)Разделитель1 байтне отображается
AI (92) + криптохвостПодпись ЦРПТ88 символов…

Точные позиции разделителей

GS появляется только там, где завершается поле переменной длины и следом идёт ещё одно поле. В коде маркировки таких мест два:

  • Между серийным номером (AI 21) и ключом проверки (AI 91)
  • Между ключом проверки (AI 91) и криптохвостом (AI 92)
Не ставьте лишний GS
После криптохвоста (AI 92) разделитель не нужен: это финальный блок. А вот в самом начале кода должен стоять FNC1 — другой служебный символ. Если на его место по ошибке встанет GS, «ЧЗ Бизнес» отклонит код.

Пять сценариев, при которых GS исчезает

Где чаще всего теряется разделитель
⌨️
Сканер в режиме клавиатуры
HID-режим передаёт данные как нажатия клавиш, а клавиши для ASCII 29 не существует. Символ молча выпадает.
🌐
Удалённый рабочий стол
RDP и Citrix не всегда пропускают управляющие байты между локальной машиной и сервером.
📗
Excel и CSV
Двойной клик по CSV заставляет Excel вычистить непечатаемые символы — GS исчезает без предупреждения.
🧾
Старая 1С
Отдельные конфигурации и драйверы оборудования просто не умеют принимать GS от сканера.
🛠️
Скрипт или API
При программной сборке кодов разработчик мог не добавить разделитель между полями.
🔎
Как поймать проблему
Отсканируйте код в Notepad++ с включённым показом спецсимволов или откройте его в hex-редакторе и поищите байт 1D.

Чем оборачивается потеря GS

Без разделителей логика DataMatrix рассыпается. Система больше не понимает, где искать границы полей, и выдаёт ошибки:

Что видит пользовательЧто стоит за сообщением
«Криптохвост не найден»Неясно, где заканчивается серийный номер
«Код маркировки не распознан»Весь код читается как бесструктурная строка
Блокировка продажи на кассеКасса не может проверить подлинность
Сбой приёмки на маркетплейсеКод не привязывается к товару
Код ошибки 126Нарушение структуры кода маркировки
Риск не только технический
Продажа немаркированного товара попадает под ч. 2 ст. 15.12 КоАП РФ. Штраф идёт вместе с конфискацией партии: для ИП — 5 000–10 000 ₽, для юрлиц — 50 000–300 000 ₽. Алкоголь и табак — отдельные, куда более крупные суммы.

Как убедиться, что GS на месте

  1. 1
    Проверка через Notepad++

    Включите «Вид → Показ символов → Показать все символы», отсканируйте код в документ и поищите GS или \x1D между блоками данных.

  2. 2
    Проверка через hex-редактор

    Откройте считанный код и найдите байт 1D. Он должен стоять между AI(21) и AI(91), а затем между AI(91) и AI(92).

  3. 3
    Проверка на портале «Честного знака»

    Загрузите или отсканируйте код на честныйзнак.рф. Если система его не принимает — скорее всего, разделители потеряны.

Пять рабочих решений

Сканер: перевести в правильный режим

Это самый результативный шаг — закрывает порядка 80% обращений.

  1. 1
    Включите Virtual COM Port

    В режиме COM-порта управляющие символы уходят в систему без потерь, в отличие от эмуляции клавиатуры.

  2. 2
    Настройте передачу GS как клавиши

    Если COM-режим недоступен, откройте инструкцию сканера, раздел «Control Character Settings», и назначьте GS на F8 или Ctrl+] — в зависимости от модели.

  3. 3
    Активируйте GS1 DataMatrix

    Найдите в мануале «Enable GS1 mode» или «GS1 DataBar» и отсканируйте штрихкод активации из инструкции.

  4. 4
    Обновите прошивку

    Установите последнюю версию ПО сканера — в старых сборках бывают ошибки передачи спецсимволов.

Совет эксперта
Сканеры Zebra, Honeywell и Datalogic корректно передают GS, но только после переключения из HID в COM-режим. Заводские настройки по умолчанию часто этому мешают.

1С: обновить и включить служебные символы

Для 1С:Управление торговлей 11.5+ проверьте три вещи:

  1. Конфигурация обновлена до 11.5.8.267 или более свежей
  2. Драйвер сканера в настройках подключаемого оборудования актуален
  3. В параметрах драйвера включена «Передача служебных символов»
Патч от марта 2026
С 1 марта 2026 года изменился разрешительный режим маркировки. Для 1С:Розница и 1С:Управление торговлей нужен патч, продлевающий срок действия токена X-API-KEY — до 1 июля 2026 года. Без него проверка кодов на кассе может отключиться. Обновление лежит на портале 1С:ИТС.

Пока настраиваете оборудование, можно временно отключить проверку структуры кода в настройках — работа не остановится.

Excel и CSV: не давать таблице съесть символ

  1. Не открывайте CSV с кодами двойным кликом
  2. Импортируйте через «Данные → Получить данные → Из текста/CSV»
  3. Сохраняйте файлы в UTF-8
  4. При генерации кодов программно вставляйте GS функцией CHAR(29)

RDP: пробросить порт или уйти в веб

  1. Подключите сканер напрямую к терминальному серверу
  2. Либо включите перенаправление COM-портов в параметрах RDP-подключения
  3. Либо работайте в веб-версии программы вместо терминального клиента

Генератор с валидацией: убрать причину заранее

Надёжнее не чинить уже испорченные коды, а не допускать потерь. LabelGen проверяет структуру DataMatrix прямо при создании этикеток:

  • Сверяет наличие GS-разделителей в загруженных кодах
  • Проверяет GTIN, серийный номер и криптохвост
  • Сообщает о проблеме до печати, а не после приёмки
Валидация кодов GS1
Загрузите коды в LabelGen и проверьте структуру DataMatrix до печати

Мобильное приложение принимает код, а «ЧЗ Бизнес» — нет. Почему

Знакомая картина: телефон в приложении «Честный знак» читает код без нареканий, а «Честный знак Бизнес» на тот же DataMatrix отвечает «КМ не валиден» и ссылается на несоответствие постановлению Правительства РФ.

Разгадка в глубине проверки. Мобильное приложение чаще ограничивается считыванием данных. «ЧЗ Бизнес» разбирает код по частям: проверяет GS между полями и обязательно ищет лидирующий символ FNC1.

FNC1 — не то же самое, что GS
FNC1 открывает код и сообщает системе, что перед ней формат GS1. Его проставляет кодировщик при генерации. Если в начало подставить обычный GS (0x1D), «ЧЗ Бизнес» увидит лишний разделитель и отклонит код с формулировкой про отсутствующий FNC1.

Такой код может выглядеть рабочим, печататься и даже читаться телефоном - и всё равно не пройти приёмку, если FNC1 не на месте или GS потерялись между AI 21, 91 и 92. Ориентируйтесь на проверку в «ЧЗ Бизнес», а не на мобильное приложение.

Чек-лист: что проверить при ошибке

  • Режим сканера - COM-порт или клавиатура
  • Передача спецсимволов включена в настройках сканера
  • Прошивка сканера обновлена
  • Подключение идёт не через RDP
  • Коды не проходили через Excel
  • 1С обновлена до актуальной версии
  • В Notepad++ виден символ GS

GS и криптохвост ругаются одновременно

Если 1С или касса выдаёт сразу две ошибки - по разделителям и по криптохвосту, - начинайте с проверки структуры DataMatrix и передачи служебных символов сканером. Без GS система не находит границу между серийным номером и ключом проверки, поэтому криптохвост (AI 92) для неё просто не существует.

Частые вопросы

Что будет, если продать товар с кодом без GS?

Касса не проверит подлинность кода, и продажа заблокируется. Продажа немаркированного товара по ч. 2 ст. 15.12 КоАП РФ грозит штрафом с конфискацией: ИП - 5 000–10 000 ₽, юрлица - 50 000–300 000 ₽. Для алкоголя и табака суммы значительно выше.

Можно ли дописать GS в код вручную?

Технически символ GS (ASCII 29) вставляется программно. Но надёжнее настроить сканер или использовать ПО с автоматической валидацией - ручная правка легко приводит к новым ошибкам.

Почему GS не видно в Excel?

Это непечатаемый управляющий символ. Excel его не показывает и часто удаляет при открытии файла. Для проверки нужен Notepad++ или hex-редактор.

Какие сканеры правильно передают GS?

Современные 2D-модели Zebra, Honeywell, Datalogic умеют это делать. Условие одно — переключить устройство из HID-режима в режим COM-порта.

Ошибка «криптохвост не найден» связана с GS?

Да. Без разделителя система не понимает, где заканчивается серийный номер, и не может выделить криптохвост (AI 92).

Соберите этикетки без ошибок структуры

Загрузите Excel из маркетплейса или PDF с кодами из «Честного знака» - на выходе получите этикетки с выверенными DataMatrix. Генератор сам вставит корректный FNC1, поэтому коды спокойно проходят проверку в «ЧЗ Бизнес».

Проверьте коды «Честного Знака» на правильность структуры
Сгенерируйте и распечатайте коды «Честного Знака» на своём оборудовании