К статье
Практический материал

Торговля и Склад · 11 мин

Как хранить коды маркировки в 1С

Как организовать хранение кодов маркировки «Честный знак» в 1С: типовые механизмы, регистры, штрихкоды упаковок, типичные ошибки и проверка результата.

Коды маркировки (Data Matrix из системы «Честный знак») нельзя хранить в 1С «как попало»: длинная строка из 83+ символов с разделителями GS ломает обычные механизмы штрихкодирования и приводит к ошибкам при продаже, приёмке и передаче данных в ГИС МТ. В типовых конфигурациях — «1С:Управление торговлей 11», «1С:Розница», «1С:ERP», «1С:Комплексная автоматизация» — для этого предусмотрена подсистема «Маркировка товаров» на базе библиотеки интеграции с ГИС МТ (БГосИС). Если конфигурация старая или самописная, хранение придётся проектировать вручную.

Ключевой принцип: код маркировки — это не штрихкод номенклатуры (EAN-13), а уникальный идентификатор экземпляра товара. Его нельзя записать в стандартный регистр «Штрихкоды номенклатуры» без потерь: там режутся служебные символы и нарушается структура кода. Ниже разберём, где именно хранятся коды в типовых решениях, как настроить учёт и что делать в нетиповых ситуациях.

Где типовые 1С хранят коды маркировки

В конфигурациях с подсистемой ГИС МТ за хранение отвечают несколько объектов. Основной — регистр сведений «Пул кодов маркировки СУЗ»: там фиксируются заказанные и полученные из станции управления заказами коды со статусами (напечатан, эмитирован, в обороте, выбыл). Второй ключевой объект — справочник «Штрихкоды упаковок и товаров»: в него попадают коды при сканировании в документах, и именно на его элементы ссылаются табличные части «Штрихкоды упаковок» в приходных и расходных документах.

Дополнительно используются регистры остатков по кодам в обороте (для контроля остатков маркированного товара на складе) и служебные регистры очередей обмена с «Честным знаком». Прямое редактирование этих объектов вручную не предусмотрено — данные туда попадают через документы: «Заказ на эмиссию кодов маркировки СУЗ», «Маркировка товаров ИС МП», «Приобретение товаров и услуг», «Реализация товаров и услуг», «Отчет о розничных продажах».

Как включить и настроить учёт маркированных товаров

В УТ 11 / КА / ERP перейдите в «НСИ и администрирование» → «Настройка НСИ и разделов» → «Интеграция с ИС МП (обувь, одежда, табак...)» и включите нужные товарные группы: обувь, одежда, табак, молочная продукция, вода, шины и другие. В «1С:Розница» аналогичная настройка находится в разделе «Администрирование» → «Интеграция с ГИС МТ». После включения появятся документы маркировки и регистры для хранения кодов.

Далее настройте обмен с «Честным знаком»: укажите токен доступа (получается через личный кабинет ГИС МТ с использованием УКЭП), настройте подключение к СУЗ для заказа кодов и проверьте, что в карточках номенклатуры заполнены признаки маркируемости и товарная группа. Без корректной товарной группы документы маркировки не подберут нужные коды.

Порядок включения учёта
  1. 1
    Включите функциональность «Маркировка товаров» для нужных товарных групп в настройках интеграции с ИС МП
  2. 2
    Установите УКЭП на рабочее место и получите токен доступа к ГИС МТ
  3. 3
    Заполните в карточках номенклатуры товарную группу и признак маркировки
  4. 4
    Настройте подключение к СУЗ и закажите тестовый блок кодов
  5. 5
    Проведите документ «Маркировка товаров ИС МП» и проверьте, что коды записались в пул

Как коды попадают в базу: основные сценарии

Эмиссия собственных кодов (производство и импорт)

Если вы сами маркируете товар, коды заказываются документом «Заказ на эмиссию кодов маркировки СУЗ», затем документом «Маркировка товаров ИС МП» коды переводятся в статус «эмитирован» и привязываются к конкретным позициям номенклатуры и, при необходимости, сериям. С этого момента коды хранятся в пуле с привязкой к товару и доступны для отгрузки.

Приёмка маркированного товара от поставщика

При приёмке коды сканируются в табличную часть «Штрихкоды упаковок» документа поступления либо загружаются из электронного УПД через ЭДО — это предпочтительный способ, так как исключает расхождения с данными поставщика. Каждый отсканированный код сохраняется как элемент справочника «Штрихкоды упаковок», а ссылка на него — в документе. Если поставщик передаёт коды через УПД, используйте сопоставление: программа сверит отсканированное с данными документа.

Продажа и выбытие

При розничной продаже код сканируется на кассе, записывается в чек ККТ и в документ «Отчет о розничных продажах», после чего передаётся в ОФД и далее в «Честный знак». При оптовой отгрузке коды попадают в «Реализацию товаров и услуг» и в исходящий УПД. В обоих случаях в регистрах 1С фиксируется движение: код получает статус «выбыл».

Хранение кодов в самописной или старой конфигурации

Если подсистемы ГИС МТ в конфигурации нет и внедрять её целиком нет ресурса, минимально корректная схема такая: справочник или регистр сведений «КодыМаркировки» со строковым полем длиной не менее 150 символов (код Data Matrix с криптохвостом может занимать 88–120+ символов), ссылкой на номенклатуру, статусом и ссылкой на документ движения. Индексируйте поле кода — поиск по нему будет выполняться при каждом сканировании.

Не храните код в реквизите типа «строка неограниченной длины» в документе списком: поиск и контроль уникальности станут проблемой, а отчёты по остаткам кодов собрать будет невозможно. Для остатков на складах используйте регистр накопления с измерениями «Склад», «Номенклатура», «КодМаркировки» — это даст корректный партионный учёт по экземплярам.

Проверка корректности хранения

После настройки выполните контрольный цикл на тестовом товаре: закажите коды, промаркируйте, примите на склад, продайте. Затем сверьте три точки: пул кодов в 1С, остатки в личном кабинете «Честного знака» и данные чека в ОФД. Статусы должны быть согласованы: проданный код — «выбыл» и в 1С, и в ГИС МТ.

Дополнительно проверьте, что при повторном сканировании одного и того же кода программа находит существующий элемент справочника, а не создаёт дубль. Дубли — признак того, что код сохраняется в разных представлениях (с GS и без, с обрезанным хвостом).

Контрольные точки

Как проверить результат

Повторное сканирование кода
Норма

Программа находит существующий элемент справочника штрихкодов упаковок

Тревожный признак

Создаётся новый элемент — код хранится в разных форматах

Статус кода после продажи
Норма

В 1С и в «Честном знаке» статус «выбыл из оборота»

Тревожный признак

В 1С продан, в ГИС МТ «в обороте» — чек не ушёл или код искажён

Длина сохранённого кода
Норма

Сохранён полный код включая криптохвост

Тревожный признак

Код обрезан до 31 символа — утеряна криптографическая часть

Типичные ошибки и риски

Самая частая проблема — обрезание кода при переносе через Excel, CSV или обмены: криптохвост после разделителя теряется, и код становится недействительным для вывода из оборота. Вторая ошибка — хранение кодов только в документах без централизованного справочника: при перепроведении или отмене документа теряется связь кода с товаром, и остатки по маркировке расходятся с фактическими.

Третья группа ошибок связана с обменами: при синхронизации между УТ и Розницей или при выгрузке на кассу убедитесь, что формат обмена поддерживает штрихкоды упаковок. Старые форматы EnterpriseData и обмены через планы обмена без обновления могут не переносить коды маркировки вообще — товар на кассе будет продаваться как немаркированный.

Типичные ошибки
01
Хранение кода в строке 50 символов — криптохвост обрезается, код не принимается «Честным знаком» при выбытии
02
Сохранение кода с символами GS «как есть» со сканера — дубли элементов и сбои поиска при продаже
03
Перенос кодов через Excel — потеря ведущих нулей GTIN и разделителей, порча всей партии данных
04
Отсутствие контроля статусов — продажа уже выбывшего или неэмитированного кода, риск штрафа
05
Обмен между базами без проверки переноса штрихкодов упаковок — на кассе товар уходит без маркировки

Выбор подхода под вашу ситуацию

Если у вас актуальная типовая конфигурация на поддержке — используйте только штатную подсистему ГИС МТ и регулярно обновляйтесь: форматы обмена с «Честным знаком» меняются, и старые релизы перестают корректно передавать данные. Дорабатывать типовые регистры напрямую не стоит — при обновлении изменения затрутся.

Для самописных решений начинайте с минимальной схемы: справочник кодов + регистр остатков + нормализация при сканировании. Интеграцию с ГИС МТ (заказ кодов, передача выбытия) проще реализовать через внешние сервисы ЭДО/ОФД и загрузку файлов, чем через прямые API-запросы, если нет ресурсов на поддержку обмена.

Сравнение вариантов хранения

Типовая подсистема ГИС МТ

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

Собственный справочник + регистр остатков

Подходит для старых и самописных конфигураций. Ограничение — обмен с ГИС МТ и печать этикеток придётся реализовывать отдельно.

Хранение только в документах

Минимальные затраты на старте, но нет контроля остатков и уникальности кодов. Приемлемо лишь как временное решение для малых объёмов.

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

Можно ли хранить код маркировки в регистре «Штрихкоды номенклатуры»?

Технически запись туда возможна, но делать этого не стоит: этот регистр предназначен для EAN-кодов товара, а не для уникальных кодов экземпляров. Коды маркировки будут мешать подбору товара по обычному штрихкоду, а служебные символы могут исказиться. Используйте справочник «Штрихкоды упаковок и товаров» или собственный регистр.

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

Полный код Data Matrix с криптографической частью обычно занимает от 83 до 120 с лишним символов. Закладывайте строковое поле длиной не менее 150 символов, чтобы не обрезать код при сохранении — обрезанный код невозможно вывести из оборота.

Что делать, если один и тот же код сохранился дважды?

Причина почти всегда в разном представлении: один раз код сохранён с разделителями GS, второй — без. Найдите дубли в справочнике штрихкодов упаковок, оставьте элемент, на который ссылаются документы, а второй пометьте на удаление, предварительно перенеся ссылки. Затем исправьте обработку сканирования, добавив нормализацию кода.

Нужно ли хранить коды выбывших товаров?

Да, удалять их нельзя: коды нужны для сверки с «Честным знаком», разбора претензий и проверок. Выбывший код просто получает соответствующий статус и перестаёт участвовать в остатках, но история его движения должна сохраняться в базе.

Переносятся ли коды маркировки при обмене УТ с Розницей?

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

Как загрузить коды от поставщика без сканирования каждой коробки?

Принимайте электронный УПД через ЭДО: коды маркировки из документа поставщика загрузятся в поступление автоматически. Сканирование при этом можно использовать выборочно — для контроля соответствия фактического товара данным документа.

Итог

Что важно запомнить

Коды маркировки храните в специализированных объектах: в типовых 1С — пул кодов СУЗ и справочник штрихкодов упаковок, в самописных — отдельный регистр со строкой от 150 символов. Всегда нормализуйте код при сканировании (убирайте GS), контролируйте статусы в разрезе 1С и «Честного знака» и проверяйте перенос кодов при обменах между базами.