Настройка и особенности работы с маркировкой "Честный знак" на B2B портале

С введением обязательной маркировки товаров у продавцов автомобильных шин появилась обязанность идентификации товаров в системе «Честный знак». Это означает, что любой покупатель в праве получить цифровой код, в котором будет содержаться основная информация о товаре и его характеристики. С этой задачей столкнулась компания "Шинные решения". Compo Soft изучила технические особенности и реализовала на портале необходимый функционал работы с маркировкой "Честный знак".

Настройка и особенности работы с маркировкой "Честный знак" на B2B портале

О системе “Честный знак”

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

Как это работает?

Настройка и особенности работы с маркировкой "Честный знак" на B2B портале

Как происходит это? Процесс включает в себя следующие шаги:

  • Лицо, участвующее в обороте товара, регистрируется в Государственной системе мониторинга товаров (ГИС МТ).
  • Производитель или импортер заказывают цифровой код в ГИС МТ и применяют уникальный код на товар.
  • С использованием цифрового кода маркировки фиксируется вся логистическая цепь передвижения товара от завода до конечного потребителя, начиная с ввода в оборот и заканчивая выбытием из оборота.
  • При продаже на кассе код сканируется и информация о выбытии продукции из оборота передается в систему.
  • Кроме того, потребитель может проверить легальность товара, используя мобильное приложение для цифровой маркировки.

Работа с “Честным знаком” на портале "Шинные решения"

Задача

При подтверждении заказа покупателю необходимо передать информацию о уникальной маркировке каждой позиции товара в заказе.

Пример реализации

Клиент заказал 1 позицию (например, какую-то шину) в количестве 10 шт. При подтверждении заказа уникальный код маркировки будет присвоен каждой штуке.

Изначально все коды маркировки хранятся в учетной системе (в данном проекте это 1С).

То есть для данного заказа к данной позиции будет передано из внешней системы 1С 10 маркировочных кодов. B2B портал получает данные коды в формате base64, производит декодировку в UTF8.

Для реализации необходимо сформировать файл для скачивания с DataMatrix для каждой позиции или общий, в зависимости от требований системы. Для этого на портал была импортирована библиотека для генерации подобных файлов (картинок с кодами - DataMatrix) из цифровых кодов.

Настройка и особенности работы с маркировкой "Честный знак" на B2B портале

Альтернативное техническое решение

Возможно организовать выгрузку из 1С сразу сгенерированных файлов с DataMatrix (например, в формате pdf).

С точки зрения пользователя это выглядит как кнопка скачивания у каждой позиции заказа.

Настройка и особенности работы с маркировкой "Честный знак" на B2B портале

Скачивается файл с кодом вида:

Настройка и особенности работы с маркировкой "Честный знак" на B2B портале

Пользователь, считывая DataMatrix коды приложением “Честный знак”, получает в результате сканирования информацию о товаре.

Настройка и особенности работы с маркировкой "Честный знак" на B2B портале

Технические особенности реализации (генерации DataMatrix)

Технические особенности:

Необходима установка и настройка программного обеспечения для GS1 DataMatrix

Структура

Для идентификации товаров используется штрих-код GS1 DataMatrix. Этот код позволяет закодировать ключевую информацию о продукте, такую как идентификационные номера системы GS1, а также дополнительные данные, например, вес, срок годности, номер серии, номер партии и дату изготовления.

С установлением обязательного требования маркировки товаров, необходимо научиться создавать, печатать и проверять коды GS1 DataMatrix в практически каждой компании.

Как правильно сформировать GS1 DataMatrix:

Настройка и особенности работы с маркировкой "Честный знак" на B2B портале
  • GS1 DataMatrix
  • ASCII 232 (FNC1).
  • Код продукта (GTIN).
  • (21) Серийный номер.
  • Разделитель групп данных ASCII 29 (GS).
  • (91) Ключ проверки, предоставляемый оператором системы в составе кода проверки;
  • Разделитель групп данных ASCII 29 (GS).
  • Электронную подпись, предоставляемую оператором системы в составе кода проверки, 88 символов (цифры, строчные и прописные буквы латинского алфавита, а также специальные символы) — криптохвост.

*При формировании используется таблица символов Base64

Согласно рекомендациям GS1 DataMatrix Guideline, перед обработкой строки кода необходимо вставить символ ASCII232 (FNC1) в ее начало.

Символ FNC1 является специальным символом, который указывает на то, что закодированная последовательность является штрихкодом GS1. Если этот символ отсутствует, технические устройства не смогут правильно распознать код и обработать его. Для обозначения конца полей переменной длины важно использовать специальные разделители GS1. Эти символы необходимы для идентификации отдельных блоков штрихкода. Можно использовать символ ASCII 29 (GS) в качестве разделителя.

Для обозначения конца полей переменной длины в штрихкодах рекомендуется применять специальные символы GS1-разделители. Они помогают выделять отдельные блоки информации в коде. Для этой цели можно использовать символ ASCII 29 (GS).

Важно помнить, что не следует использовать символ FNC1 в качестве разделителя, поскольку это может нарушить порядок полей.

Отметим, что GS1-разделители не отображаются визуально в подписи DataMatrix кода.

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

Оператор ЦРПТ выпустил пояснение по правильной генерации кодов. Из-за большого количества кодов с ошибками они решили признать коды без FNC1 валидными, но все же рекомендуют использовать GS1 DataMatrix. К сожалению, значительная часть DataMatrix кодов, получаемых от субъектов, содержит ошибки.

Когда Коды Маркировки заказаны и сгенерированы. Их можно забрать через API в текстовом виде, в формате ТХТ (как файл с текстом).

Если открыть файл в notepad++(блокнот) можно увидеть строки такого вида. Серым цветом выделены скрытые символы разделители ASCII 29 в виде <0x1d>. В последующем эти символы при печати должны быть преобразованы в разделители строк формата GS1 DataMatrix.

Настройка и особенности работы с маркировкой "Честный знак" на B2B портале

При получении информации в формате TXT никогда не следует открывать и сохранять ее в формате Excel. В процессе автоматического сохранения Excel может изменить ваши коды в самом непредсказуемом виде. Рекомендуется использовать Notepad++ (блокнот) для просмотра кодов.

При преобразовании полученные коды маркировки могут выглядеть следующим образом:

Настройка и особенности работы с маркировкой "Честный знак" на B2B портале

Третий код является невалидным (не содержит разделителей GS).

При подготовке файла к печати или генерации GS1 DataMatrix для работы с системой через личный кабинет или API используется оригинальный Код Маркировки, содержащий скрытые символы разделители ASCII 29 в виде <0x1d>.

Генерация (преобразование) кода маркировки в Средство Идентификации

В постановлении правительства РФ 860 указан ГОСТ, согласно которому необходимо формировать DataMatrix. Так же в ППР 860 указано обязательное использование идентификаторов применения. Обратите внимание, что в стандарте DataMatrix нет понятия «идентификаторы применения». Они есть только в стандарте GS1 DataMatrix.

Основное различие: в GS1 DataMatrix первый символ должен быть FNC1. Символ GS не должен стоять на первом месте в DataMatrix, только FNC1.

FNC1 нельзя просто взять и добавить в строку как GS. Его должна добавлять программа, генерирующая DataMatrix.

Основные ошибки при создании GS1 DataMatrix:

  • Не вставлен специальный символ FNC1 в начале (1 символ);
  • Вместо FNC1 в начале добавлен текст "FNC1" (4 символа);
  • Вместо FNC1 в начале добавлен GS;
  • Пропущены разделители групп данных GS после полей переменной длины (например, после серийного номера);
  • Разделители групп данных добавлены в неправильном месте (например, после поля (01) GTIN, где они не нужны);
  • Вместо GS вставлен текст "GS";
  • Использование программ или алгоритмов печати, которые искажают информацию (например, удаляют символы из кода, считая их лишними, такие как арифметические символы или скобки).
Начать дискуссию