Как протестировать печать чеков на онлайн-ККТ по 54-ФЗ в 1С до регистрации в ОФД?

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

При доработке учетных систем 1С и внедрении требований Федерального закона № 54-ФЗ часто возникает задача проверить корректность формирования фискальных документов. Разработчику необходимо убедиться, что из типовых и доработанных документов (например, ПриходныйКассовыйОрдер, РасходныйКассовыйОрдер или ЧекККМ) корректно выгружаются состав товарных позиций, суммы, ставки НДС, признаки способа и предмета расчета, а также реквизиты организации. При этом кассовый аппарат может быть еще не зарегистрирован в налоговой службе и операторе фискальных данных (ОФД). Разберем доступные варианты тестирования и настройки оборудования.

Вариант 1. Использование штатного программного эмулятора 1С

Если требуется проверить программную логику формирования XML-пакета чека в конфигурациях на базе Библиотеки подключаемого оборудования (БПО), подключать физическую кассу вовсе не обязательно. Рассмотрим, как это работает:

  1. Перейдем в раздел Подключаемое оборудование и создадим новый экземпляр с типом ККТ с передачей данных.
  2. В качестве драйвера оборудования выберем встроенный сертифицированный драйвер 1С:Эмулятор ККТ с передачей данных.
  3. Настроим параметры эмулятора (версию ФФД, ставки налогообложения и реквизиты организации).

При отправке чека на такой эмулятор данные не уходят в ОФД и не расходуют бумагу, а результат операции выводится в виде диалогового окна на экране либо фиксируется в логе БПО. Это позволяет быстро отладить заполнение обязательных тегов формата фискальных данных.

Вариант 2. Печать на реальной кассе в учебном (нефискальном) режиме

Проанализируем ситуацию, когда физический аппарат уже приобретен, подключен к рабочему месту по USB или COM-порту, но фискальный накопитель еще не активирован.

До выполнения процедуры фискализации большинство современных онлайн-касс находятся в учебном режиме. Если отправить команду печати чека из 1С, устройство выполнит вывод на кассовую ленту, однако:

  1. На чеке будет напечатан отличительный признак: Учебный режим, Нефискальный режим или Проба.
  2. Документ не подписывается фискальным признаком (ФПД) и не сохраняется в память как фискальная операция.
  3. Касса не пытается отправить данные на сервер ОФД, так как регистрационные параметры еще не внесены.

Важное предостережение: ни в коем случае нельзя выполнять пробную фискализацию боевого фискального накопителя с тестовыми данными. Память ФН является однократной, изменить записанный ИНН или сбросить боевой накопитель после регистрации невозможно — устройство придет в негодность.

Вариант 3. Использование аппаратного эмулятора ФН (МГЕН)

Когда требуется протестировать сквозной процесс, включая регистрацию кассы, закрытие смен и взаимодействие с тестовыми площадками ОФД, применяют специализированные технологические накопители — эмуляторы ФН (макеты генератора фискальных признаков).

Такое устройство устанавливается в корпус ККТ вместо штатного накопителя. Эмулятор поддерживает многократную перерегистрацию, очистку памяти и работу с тестовыми серверами (песочницами) операторов фискальных данных. Данные с такого накопителя успешно уходят по сети в тестовый личный кабинет ОФД, но не передаются в ФНС.

Вариант 4. Схема «Чек — Возврат» на зарегистрированной кассе

Если касса уже зарегистрирована в налоговой и подключена к боевому ОФД, проверить новую доработку печатной формы или алгоритма расчета можно с помощью реальных операций продажи и последующего возврата:

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

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

Решение проблемы с непечатными символами при обрезке банковского слип-чека

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

Для исправления этой проблемы в случае использования терминалов Сбербанка (и аналогичных банковских решений) необходимо скорректировать конфигурационный файл драйвера терминала pinpad.ini. Разберем требуемую настройку:

Откроем файл pinpad.ini в каталоге обмена терминала и пропишем параметр команды окончания печати:

PrinterEnd=[cut]

Указание явного текстового маркера [cut] вместо передачи сырого непечатного байта позволяет драйверу 1С корректно распарсить текст слип-чека, отправить его в состав фискального чека и выполнить физическую отрезку ленты без сбоев XML-парсера.

← На главную