При переходе на обязательную маркировку упакованной воды многие организации сталкиваются со специфической схемой работы: подтверждение накладных и кодов маркировки (УПД) происходит во внешней системе (например, в Контур.Диадок), а фактическая розничная продажа должна осуществляться через 1С:Бухгалтерия 3.0. Возникает закономерный вопрос: как программа «узнает», какую марку списать, если в базе 1С этих марок нет на остатках? Рассмотрим подробно, как настроить этот процесс и обеспечить корректную передачу данных в систему «Честный ЗНАК».
Разберем главный миф: для того чтобы продать маркированный товар через кассу (ККТ), программе 1С не обязательно предварительно «загружать» конкретные коды маркировки в свои регистры. Система маркировки (ИС МП) работает по принципу прослеживаемости через ОФД. Когда вы сканируете DataMatrix код на кассе, происходит следующее:
Таким образом, 1С выступает лишь «транспортом» для передачи кода от сканера к кассе. Главное — правильно настроить саму конфигурацию и оборудование.
Проанализируем необходимые настройки внутри программы. Даже если вы не ведете учет марок в 1С, функционал маркировки должен быть активирован.
Номенклатура для каждой позиции воды необходимо в поле «Маркировка и контроль» выбрать значение «Упакованная вода». Это критически важно, так как именно этот признак заставляет 1С запрашивать сканирование кода при продаже.Для корректного выбытия в фискальном документе должен быть заполнен тег 1163 (код товара). В 1С:Бухгалтерии за формирование этого блока данных отвечает встроенная логика работы с торговым оборудованием. Посмотрим на фрагмент кода, который иллюстрирует, как 1С формирует данные для ККТ при продаже маркированного товара под ФФД 1.2:
// Фрагмент формирования структуры для ККТ (примерная логика БПО)
Если ВедетсяОбъемноСортовойУчет И Позиция.ОбъемноСортовойУчет Тогда
ЗаписьXML.ЗаписатьАтрибут("GTIN", XMLСтрока(ДанныеКодаТовара.GTIN));
ИначеЕсли ТипыИдентификаторов.Найти(ДанныеКодаТовара.ТипИдентификатораТовара) <> Неопределено Тогда
ЗаписьXML.ЗаписатьНачалоЭлемента("GoodCodeData");
ШтрихкодBase64 = ШтрихкодДляТега1163Base64(ДанныеКодаТовара);
ЗаписьXML.ЗаписатьАтрибут(ДанныеКодаТовара.НаименованиеРеквизита, XMLСтрока(ШтрихкодBase64));
ЗаписьXML.ЗаписатьКонецЭлемента();
КонецЕсли;
Выясним причину, по которой тег 1163 может не появляться в чеке. Чаще всего это связано не с отсутствием марок в базе 1С, а с настройками оборудования:
Поскольку приемка идет в Контур.Диадок, в 1С нет записи в регистре ШтрихкодыУпаковокТоваров. Рассмотрим, как программа ведет себя при сканировании «незнакомой» марки. В современных релизах 1С БП 3.0 реализован механизм автоматического распознавания кода. При сканировании система извлекает GTIN из DataMatrix-кода и ищет его в справочнике ШтрихкодыНоменклатуры. Если соответствие найдено, позиция добавляется в чек, а считанная марка привязывается к строке чека для передачи в ККТ.
Важный момент: проверьте настройки сканера. Он должен работать в режиме эмуляции клавиатуры или COM-порта, но обязательно с поддержкой передачи спецсимволов GS1 (FNC1). Если сканер «съедает» префиксы, 1С не сможет корректно разобрать код маркировки воды.
Проанализируем текущие требования законодательства. На данный момент для упакованной воды действует режим объемно-сортового учета. Это означает, что при приемке через ЭДО Контур вы видите только GTIN и общее количество бутылок. Поэкземплярно (каждую бутылку отдельно) проверять при приемке пока не обязательно (до 1 марта 2025 года).
Однако при продаже через розничную кассу поэкземплярный учет обязателен уже сейчас. Это значит, что вы обязаны сканировать каждый DataMatrix. Ваша схема «Приемка в Контуре по ОСУ — Продажа в 1С по кодам» абсолютно законна и технически реализуема. Система «Честный ЗНАК» автоматически сопоставит проданный экземпляр с общей партией, которая пришла вам на баланс через Диадок.
Рассмотрим краткий список действий для проверки готовности вашей системы:
Если все пункты выполнены, то при сканировании марки в документе Розничная продажа (чек) в 1С, код будет успешно передан в ККТ, а в печатной форме чека напротив позиции воды появится символ [M+], что подтверждает успешную проверку и выбытие марки.