С введением обязательной маркировки товаров легкой промышленности, обуви и других категорий, владельцы интернет-магазинов столкнулись с серьезной проблемой: как передать код маркировки (DataMatrix) в кассовый чек, если в момент оплаты на сайте мы еще не знаем, какой именно экземпляр товара будет отправлен покупателю? Рассмотрим подробно, как решается этот вопрос технически и методологически в связке 1С:Управление торговлей 10.3, 1С-Битрикс и облачных касс.
Согласно 54-ФЗ, при продаже маркированного товара код идентификации должен быть записан в фискальный документ. В классической рознице все просто: сканируем код на кассе — он попадает в чек. В интернет-торговле оплата и передача товара разнесены во времени. Разберем ситуацию: покупатель оплатил товар на сайте. В этот момент мы обязаны пробить чек в течение 24 часов. Но товар еще лежит на складе, и какой именно DataMatrix попадет в заказ — неизвестно.
Для решения этой задачи в законодательстве и технической реализации предусмотрена схема «двух чеков». Проанализируем ее этапы:
ПРЕДОПЛАТА 100%. В этом чеке код маркировки не указывается, так как единица товара еще не физически не отобрана.ПОЛНЫЙ РАСЧЕТ, зачитывается аванс (предоплата), и обязательно добавляется код маркировки.Многие пользователи ошибочно пытаются найти коды маркировки в справочнике Штрихкоды. Выясним причину, почему их там нет: обычный штрихкод (EAN-13) идентифицирует товарную позицию (артикул) в целом, а код маркировки — каждую конкретную единицу товара. Поэтому для одной карточки товара может существовать тысячи кодов маркировки.
В актуальных релизах УТ 10.3 (начиная с 10.3.66.2 и выше) поддержка маркировки реализована через механизм серий или специальные регистры сведений. Рассмотрим, как подготовить систему:
Для начала убедимся, что в настройках параметров учета включена поддержка маркировки нужной категории (например, «Товары легкой промышленности и одежда»). После этого в документах отгрузки (например, Реализация товаров и услуг или Чек ККМ) появится возможность сканирования кодов DataMatrix. При сканировании система проверяет код через сервис «Честный Знак» (если настроена интеграция) и сохраняет его в привязке к документу. Для поддержки актуальных протоколов работы с Честным Знаком в системе можно применить комплект обновления конфигурации УТ 10.3 под маркировку.
Рассмотрим пример кода, который может использоваться во внешней обработке для передачи данных в облачный сервис печати чеков (например, через API Business.ru или Атол Онлайн):
// Пример формирования структуры позиции для маркированного товара
Позиция = Новый Структура;
Позиция.Вставить("наименование", СтрокаТовара.Номенклатура.Наименование);
Позиция.Вставить("цена", СтрокаТовара.Цена);
Позиция.Вставить("количество", СтрокаТовара.Количество);
// Если код маркировки считан, добавляем его в структуру
Если ЗначениеЗаполнено(СтрокаТовара.КодМаркировки) Тогда
// Для ФФД 1.2 код передается в очищенном виде без криптохвоста
Позиция.Вставить("mark_code", ОбработатьКодМаркировки(СтрокаТовара.КодМаркировки));
КонецЕсли;
Посмотрим на процесс со стороны сайта. Если вы используете сервис Online-check (Business.ru) или аналоги, у вас есть два пути:
Вариант А: Ручное внесение кодов. Как отмечалось в обсуждении, некоторые сервисы позволяют зайти в личный кабинет и вручную «добить» код маркировки во второй чек, когда кладовщик отобрал товар. Это подходит для очень малого объема заказов.
Вариант Б: Автоматизация через 1С. Схема выглядит так:
DataMatrix с упаковки.Проанализируем ситуацию, когда доставку осуществляет сторонняя служба (СДЭК, Почта России и др.). Здесь есть критически важный нюанс, связанный с правилами «Дистанционной торговли».
Если курьерская служба не является вашим платежным агентом (вы уже приняли деньги на сайте), вы можете вывести товар из оборота самостоятельно до передачи курьеру. В этом случае в системе «Честный Знак» создается документ «Вывод из оборота» с причиной «Дистанционная продажа». В кассовом чеке, который бьется на сайте в момент оплаты, код маркировки при такой схеме указывать не обязательно (согласно Постановлению Правительства №222, которое ввело упрощения для дистанционной торговли).
Однако, если оплата происходит при получении (наложенный платеж), курьерская служба обязана сама отсканировать код и пробить его в чеке. В этом случае вы должны передать коды маркировки курьерской службе в электронном виде (через API или в накладных), чтобы они знали, что именно сканировать.
С 2021-2022 годов большинство маркированных товаров перешли на формат фискальных данных ФФД 1.2. Разберем ключевые отличия:
1162 теперь используется тег 1163.Для успешной работы рекомендуем придерживаться следующего плана:
DataMatrix в документах.Таким образом, даже в старых конфигурациях типа УТ 10.3 возможна корректная работа с маркировкой при условии правильной настройки бизнес-процесса «заказ — предоплата — сканирование — отгрузка». При адаптации устаревших и нетиповых баз можно изучить практический опыт внедрения маркировки в старых версиях УТ 10.3.