Как организовать работу с кодами маркировки в 1С, чтобы не нарушать закон при хранении данных?

Программист 1С v8.3 (Управляемые формы) 1С:Управление торговлей Управленческий учет Торговля и дистрибуция
← На главную

Вопрос хранения полных кодов маркировки, включающих «криптохвост», является одним из самых обсуждаемых среди разработчиков 1С. Действующие требования Приказа Минпромторга России от 18.04.2023 N 1421 предписывают удалять криптографическую часть кода после завершения производственного цикла. Давайте разберем, как выстроить процессы в учетной системе, чтобы обеспечить удобство работы, не вступая в конфликт с законом.

Понимание производственного цикла

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

Решение 1: Использование внешних файлов (PDF)

Если вам требуется возможность повторной печати, наиболее безопасным подходом является вынос кодов за пределы базы данных 1С. Вместо того чтобы хранить криптохвосты в справочниках или регистрах 1С, что прямо запрещено, поступайте следующим образом:

  1. При генерации кодов в 1С формируйте файлы в формате PDF, содержащие графические образы кодов.
  2. Сохраняйте эти файлы во внешнее хранилище или локальный архив, который не является частью вашей товароучетной системы (ТУС).
  3. После завершения процесса печати и отправки отчета в ЧЗ, удаляйте данные о кодах из самой 1С.
  4. При возникновении необходимости печати дубликата, извлекайте нужный код из архива PDF.

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

Решение 2: Работа с резервными копиями данных

Частый вопрос от системных администраторов: что делать с резервными копиями (бэкапами), в которых физически остаются коды с крипточастью? С точки зрения правоприменительной практики, бэкап — это снимок системы на конкретный момент времени.

Если бэкап не используется для несанкционированного ввода товаров в оборот, его наличие не является нарушением правил работы с СКЗИ. Тем не менее, для минимизации рисков при возможных проверках рекомендуется:

Технические аспекты реализации в 1С

Рассмотрим, как правильно обрабатывать данные перед отправкой в ЧЗ. Типовые конфигурации 1С, такие как Управление торговлей или ERP, используют для обмена API системы маркировки. Основная сложность заключается в том, что коды передаются в формате DataMatrix, который требует специфического кодирования.

Если вы разрабатываете собственные инструменты для автоматизации, помните о следующем:

  1. Разделение данных: Храните отдельно идентификатор кода (GTIN + серийный номер) и отдельно крипточасть (идентификатор ключа + код проверки). Это позволяет в случае аудита доказать, что вы не храните «полный код» в виде единой строки для неправомерного использования.
  2. Автоматическая очистка: Настройте РегламентныеЗадания, которые будут проверять наличие записей в регистрах маркировки и удалять их по истечении установленного законом срока производственного цикла.

Разберем пример логики очистки, которую можно внедрить в обработчик:


Процедура ОчиститьКодыМаркировки(ДатаГраница)
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ СсылкаИЗРегистраКодов
        |ИЗ РегистрСведений.КодыМаркировкиГенерация
        |ГДЕ ДатаСоздания < &ДатаГраница";
    Запрос.УстановитьПараметр("ДатаГраница", ДатаГраница);
    РезультатЗапроса = Запрос.Выполнить();
    // Дальнейшая логика удаления записей
КонецПроцедуры

Заключение: самоконтроль и ответственность

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

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

← На главную