При работе с маркированным товаром, особенно с табачной продукцией, точность учета имеет критическое значение. Любое расхождение между ценой продажи и МРЦ (Максимальной Розничной Ценой), зашитой в коде маркировки (DataMatrix), приводит к ошибкам в системе «Честный Знак» (кстати, для стабильной работы обмена данными не забывайте про автоматическое обновление токенов Честного Знака). Одной из неочевидных проблем, с которой мы можем столкнуться при переходе на редакцию 1С:Розница 3.0 (или 1С:УНФ), является ситуация, когда при продаже двух пачек одинаковых сигарет, но из разных партий (с разной МРЦ), программа меняет их цены местами в фискальном чеке.
Давайте подробно разберем эту ситуацию, выясним причины такого поведения программы и рассмотрим пошаговые методы устранения ошибки.
Прежде чем приступать к лечению, давайте убедимся, что мы имеем дело именно с этой проблемой. Ситуация выглядит следующим образом:
В результате сумма чека сходится, покупатель не имеет претензий, но в личном кабинете «Честного Знака» начинают копиться ошибки: «Цена реализации отличается от МРЦ». Это происходит потому, что конкретный код маркировки (уникальный идентификатор пачки) ушел в ОФД с привязкой к цене соседней пачки. Если таких ошибок накопилось много, может потребоваться запрос остатков из системы «Честный знак» для выравнивания учета.
Чтобы понять, как исправить ошибку, разберем механику процесса. Конфигурация 1С:Розница 3.0 построена на базе 1С:УНФ и имеет отличающиеся от редакции 2.3 механизмы работы с торговым оборудованием и формирования чека.
Главная причина кроется в механизме свертки (группировки) строк в чеке. Когда мы добавляем товары в табличную часть, система для удобства визуального восприятия может пытаться сгруппировать одинаковые номенклатурные позиции. Однако для маркированного товара каждая единица уникальна благодаря коду маркировки.
При формировании пакета данных для фискального регистратора (ККТ) программа передает массив товарных позиций. Если в настройках включена свертка строк, может произойти рассинхронизация списков: список кодов маркировки и список цен могут быть отсортированы по-разному или привязаны некорректно в момент разбивки сгруппированной строки обратно на единичные позиции перед печатью.
Также влияние оказывают настройки самого драйвера торгового оборудования, который может самостоятельно пытаться «оптимизировать» чек, объединяя позиции с одинаковым названием, игнорируя разницу в привязанных к ним тегах маркировки. Если ошибка уже допущена и чеки ушли с неверными данными, для исправления ситуации может понадобиться пакетное создание и пробитие чеков коррекции.
Самый надежный способ устранить путаницу — это принудительно запретить программе объединять строки в чеке. Это заставит 1С обрабатывать каждую пачку сигарет как отдельную, независимую сущность с жесткой связкой «Код маркировки — Цена».
Рассмотрим, как это сделать в настройках программы:
После отключения свертки каждая сканируемая пачка будет добавляться в чек новой строкой, даже если их наименования совпадают. Визуально чек станет длиннее, но логическая связь между конкретной маркой и её ценой не будет нарушаться при передаче в драйвер ККТ.
Иногда проблема кроется не только в 1С, но и в «интеллекте» самого кассового аппарата. В рассматриваемом случае используется ККТ ШТРИХ-М (для устаревших моделей которых может быть актуален драйвер миШтрих-М с эмуляцией ФФД 1.2), у которого в драйвере есть собственные настройки группировки — для решения этой задачи подойдёт драйвер ККТ Штрих-М с эмуляцией ФФД 1.2.
Давайте проверим настройки драйвера:
Это действие исключит ситуацию, когда 1С отправляет данные корректно (разными строками), а касса сама решает объединить их в одну строку с количеством "2", теряя привязку разных цен к разным маркам.
Важно проконтролировать, как именно кассиры добавляют товар в чек. В теме обсуждения упоминается, что цены берутся из DM-кода (DataMatrix). Это правильный подход, но давайте уточним детали.
Если кассир сначала сканирует линейный штрихкод (EAN-13), программа подбирает товар и устанавливает цену из прайс-листа (вида цен). Затем, при попытке сканирования марки для этой позиции, может возникнуть конфликт, если МРЦ в марке отличается от цены в прайсе. Чтобы избежать ручных проблем на этом этапе, можно заранее выполнить сканирование и сопоставление марок табачной продукции с позицией номенклатуры — для этого подойдёт рабочее место проверки и сопоставления кодов маркировки. В момент продажи нескольких пачек этот механизм «уточнения цены» может сработать некорректно.
Рекомендация: Настройте сканеры и обучите персонал сканировать только DataMatrix код (квадратный код на дне пачки). При этом:
Это снижает вероятность программной ошибки при расчете итоговых сумм строк.
Если по каким-то причинам (например, отсутствие прав на настройку или ожидание специалиста) вы не можете применить вышеописанные решения немедленно, существует проверенный "рабочий" метод, который позволяет избежать штрафов от Честного Знака.
Суть метода проста: Одна партия (одна цена) — Один чек.
Рассмотрим алгоритм действий кассира в проблемной ситуации:
В этом случае путанице просто негде возникнуть, так как в буфере драйвера ККТ находится только один маркированный товар. Да, это замедляет обслуживание и увеличивает расход чековой ленты, но гарантирует корректную передачу данных в ОФД до момента исправления настроек программы.
Если отключение свертки строк и настройка драйвера не помогли, стоит обратить внимание на версию платформы и библиотек интеграции.
1С:Розница 3.0 активно развивается, и ошибки работы с маркировкой часто исправляются в патчах. Убедитесь, что у вас установлены:
Проблема перепутанных цен МРЦ в 1С:Розница 3.0 является технической особенностью обработки табличной части чека при взаимодействии с драйвером ККТ. Она не связана с ошибкой кассира или неисправностью сканера.
Для гарантированного решения проблемы выполните следующие действия:
Выполнение этих рекомендаций обеспечит строгое соответствие продаваемой марки и её цены в фискальном документе, что избавит вас от ошибок в системе маркировки.