Почему касса не пробивает маркированный товар через ТС ПИОТ в 1С и как это исправить?

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

Внедрение обязательной маркировки товаров и разрешительного режима создает множество вопросов для участников рынка, особенно для тех, кто работает с системами на базе 1С. Одной из ключевых сложностей становится корректная настройка и взаимодействие с Техническим средством получения информации о товаре (ТС ПИОТ). Мы вместе разберем основные проблемы, с которыми сталкиваются пользователи при попытке пробить маркированный товар через кассу, подключенную к ТС ПИОТ, и выясним, как их эффективно решить.

Что такое ТС ПИОТ и разрешительный режим: Разберемся в понятиях

Прежде чем углубляться в технические детали, давайте проанализируем, что такое ТС ПИОТ и для чего он нужен. Это программное или программно-аппаратное решение, которое выступает связующим звеном между вашей контрольно-кассовой техникой (ККТ) и государственной информационной системой мониторинга товаров (ГИС МТ) «Честный знак». Его основная задача – обеспечить работу так называемого разрешительного режима.

ТС ПИОТ выполняет несколько важных функций:

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

В рамках разрешительного режима касса проверяет множество параметров:

  1. Наличие кода маркировки в системе «Честный знак».
  2. Статус кода маркировки (он должен быть «в обороте», а не выведен, списан или заблокирован).
  3. Принадлежность товара данному участнику оборота.
  4. Отсутствие дублирования кода маркировки (товар не должен быть продан ранее).
  5. Не истек ли срок годности товара (для определенных категорий).
  6. Не заблокирована ли реализация данного товара со стороны федерального органа исполнительной власти (ФОИВ).

Для различных товарных групп разрешительный режим вводится поэтапно. К 2026 году под него подпадают практически все основные категории маркированных товаров. Важно помнить о сроках и возможных штрафах:

  1. С 28 декабря 2025 года использование ТС ПИОТ стало обязательным для продавцов маркированных товаров, указывающих коды маркировки в фискальном чеке для соблюдения разрешительного режима.
  2. С 1 июля 2026 года использование ТС ПИОТ становится обязательным для всех, и старая схема работы с использованием X-API-KEY прекращает действие.
  3. С 1 сентября 2026 года вступают в силу изменения в КоАП РФ (Федеральный закон от 02.05.2026 № 120-ФЗ), которые вводят автоматические штрафы за нарушение запрета продажи маркированных товаров. Постановления будут формироваться системой «Честный знак» автоматически.

Примеры штрафов могут быть весьма существенными:

Настройка ТС ПИОТ и решение проблем с подключением

Давайте рассмотрим подробнее процесс установки и настройки ТС ПИОТ, а также типичные проблемы, с которыми вы можете столкнуться.

Установка ТС ПИОТ обычно происходит по инструкциям производителя. Модуль ТС ПИОТ может быть установлен как на том же компьютере, что и касса (тогда обращение идет к localhost), так и на отдельном сервере, доступном по сети. После установки и настройки связи с ККТ, вы можете проверить работу через утилиты, например, Postman, выполняя запросы к API ТС ПИОТ.

Важный момент, вызывающий затруднения: Флажок "Включено" в тесте драйвера ККМ.

Многие пользователи сталкиваются с тем, что при включенном флажке "Включено" в тесте драйвера ККМ, запросы к ТС ПИОТ работают корректно, но 1С не может подключиться к кассе для пробития чека. И наоборот: без этого флажка 1С подключается, но запросы к ТС ПИОТ выдают ошибку 514 или режим проверки "isCheckedOffline": true.

Выясним причину и найдем решение:

  1. Проблема: Ошибка 514 или "isCheckedOffline": true при выключенном флажке "Включено" в тесте драйвера ККМ.

    Код ошибки 514 обычно означает: "Не удалось получить ответ от ГИС МТ или ЛМ ЧЗ". А "isCheckedOffline": true указывает на то, что проверка кода маркировки произошла без связи с ГИС МТ, что недопустимо для разрешительного режима.

    Решение 1: Перезапуск служб ECM (ESM).

    Модули ECM (ESM: Control Module, ESM: Local Module Controller, ESM: Orchestrator) являются ключевыми компонентами ТС ПИОТ. Проблемы с их работой могут приводить к описанным ошибкам. Попробуйте перезапустить следующие службы:

    • ESM: Control Module
    • ESM: Local Module Controller
    • ESM: Orchestrator

    Перезапуск служб часто помогает восстановить корректное взаимодействие. Мы можем рассмотреть возможность автоматизации перезапуска этих модулей из 1С при возникновении ошибки 514, если это предусмотрено архитектурой вашей системы.

  2. Проблема: Касса не пробивает чек из 1С при включенном флажке "Включено" в тесте драйвера ККМ.

    Ключевой вывод: Флажок "Включено" в тесте драйвера ККМ должен быть выключен для штатной работы вашей учетной системы (1С) с кассой. Включение этого флажка необходимо только для настройки и первичной проверки ТС ПИОТ, но не для повседневной работы.

  3. Решение 2: Обновление прошивки ККТ.

    Для корректной работы с ТС ПИОТ и разрешительным режимом может потребоваться обновление прошивки вашей ККТ. Например, для касс АТОЛ FPrint-22ПТК рекомендуется прошивка версии 5.16 или старше. Пользователи сообщают, что после обновления до версии 5.17 проблемы с "offline" проверкой исчезают, и запросы через Postman или 1С отрабатывают корректно в он-лайн режиме.

    Обратите внимание: Иногда чтение информации по ККТ из драйвера может показывать старую версию прошивки (например, 5.15), в то время как при печати чека выводится новая (5.17). Это нормально, если сервисный инженер подтверждает обновление.

    После обновления прошивки, если вы столкнулись с проблемами фискализации чека (методы открытия/закрытия смены работают, а фискализация нет), может потребоваться удаление, а затем переустановка модуля ECM и драйвера под него. Это помогает синхронизировать работу всех компонентов.

Для обеспечения стабильной работы также убедитесь, что на сетевом оборудовании разрешен доступ по протоколу TCP по всем необходимым портам с сервера, где установлен драйвер ККТ.

Взаимодействие 1С с API ТС ПИОТ: Формирование запросов и обработка ответов

Теперь рассмотрим, как ваша 1С-система (даже если это нетиповая конфигурация или старая версия, например, 1С 7.7) должна взаимодействовать с API ТС ПИОТ. Все взаимодействие происходит через HTTP-запросы.

URL запроса:

Для проверки кодов маркировки используйте следующий адрес:


https://[IP_АДРЕС_ТС_ПИОТ]:51401/api/v1/codes/check

Где [IP_АДРЕС_ТС_ПИОТ] — это IP-адрес или доменное имя сервера, на котором установлен ТС ПИОТ (например, 10.13.15.15 или localhost).

Структура запроса:

Мы отправляем POST-запрос с телом в формате JSON. В запросе обязательно передаем массив кодов маркировки и информацию о кассовом ПО (client_info). Рассмотрим пример:


{ 
    "codes":[ "MDEwNDY1MDA3MjE0MDg3NDIxNUtkZlhJHTkzMUgzQw==" ], 
    "client_info":
    {
        "name":"ATOП FPrint-22ПТК",
        "version":"1.6.2.1",
        "id":"5af4663c-a113-4b47-b959-079ca6dda199",
        "token":"qGwEgabxDD7OLSN8EH95M8iosQ1N+ziY+wdcfuUOiCI="
    }
}

Давайте проанализируем параметры блока client_info:

Структура ответа:

В ответ на запрос ТС ПИОТ возвращает JSON-объект, содержащий информацию о проверенных кодах маркировки. Рассмотрим пример ответа:


{
    "codesResponse": {
        "codesResponse": [
            {
                "code": 0,
                "description": "ok",
                "codes": [
                    {
                        "cis":"0104650072140874215KdfXI 931H3C",
                        "found": true,
                        "valid": true,
                        "printView": "0104650072140874215KdfXI",
                        "gtin": "04650072140874",
                        "groupIds": [ 35 ],
                        "verified": true,
                        "realizable": true,
                        "utilised": true,
                        "expireDate": "2029-05-29 00:00:00",
                        "productionDate": "2026-05-29 00:00:00",
                        "isOwner": true,
                        "isBlocked": false,
                        "errorCode": 0,
                        "isTracking": false,
                        "sold": false,
                        "grayZone": false,
                        "packageType": "UNIT",
                        "producerInn": "7743568999"
                    }
                ],
                "reqId": "6e2cd931-5789-44e6-9a47-86301388fb9a",
                "reqTimestamp": 1780854353713,
                "isCheckedOffline": false
            }
        ]
    }
}

Анализ ответа и принятие решения о продаже:

Нам необходимо проанализировать полученный ответ и на его основе принять решение: разрешать продажу товара или блокировать ее. Обратите внимание на следующие поля в блоке codesResponse -> codes:

В случае успешной проверки (verified: true, realizable: true, isOwner: true и т.д.), вы можете добавлять коды маркировки в чек. Также обратите внимание на поля reqId и reqTimestamp, которые необходимо передавать в фискальный чек.

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

Формирование XML для ККТ и пробитие чека

После успешной проверки кода маркировки через ТС ПИОТ, следующим шагом является формирование XML-структуры для фискализации чека. В этот XML необходимо включить полученные данные о маркировке.

Ключевые теги для маркировки в XML чека:

Рассмотрим пример XML-структуры для фискального чека:




    
        
    
    
        
            
        
    
    

После формирования XML и пробития чека, необходимо через несколько минут проверить состояние кассы в ОФД и убедиться, что в ГИС МТ отсутствуют ошибки. Также вы можете сделать запрос через ТС ПИОТ на проданную КМ и получить ответ sold=True, подтверждающий успешную реализацию.

Особенности работы с несколькими кассами и общие рекомендации

Часто возникает вопрос: можно ли использовать один экземпляр ТС ПИОТ для нескольких касс, если драйверы ККТ и управление всеми кассами находятся на одном сервере?

Вывод: На текущий момент источники указывают, что для каждой кассы требуется свой драйвер ТС ПИОТ. Это означает, что если вы устанавливаете ТС ПИОТ на сервере, вам, скорее всего, придется поднимать отдельную виртуальную машину (ВМ) для каждой кассы. Использование одной связки ККТ/драйвер/ЕСМ для проверки марок разных ФН может привести к проблемам и санкциям со стороны «Честного знака», так как фиксируется номер ФН.

Дополнительные рекомендации:

Мы рассмотрели основные аспекты работы с ТС ПИОТ в 1С, начиная от базовых понятий и заканчивая конкретными примерами кода и решениями типовых проблем. Помните о важности своевременного обновления прошивок ККТ, корректной настройке служб ТС ПИОТ и внимательном анализе ответов от системы маркировки. Внимательное следование этим рекомендациям поможет вам избежать штрафов и обеспечить бесперебойную работу с маркированными товарами.

← К списку