Как настроить печать чеков по патенту (ПСН) в «1С:Управление торговлей 10.3» на кассах АТОЛ и исправить ошибку ФН 231

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

Переход индивидуальных предпринимателей на патентную систему налогообложения (ПСН) часто сопровождается техническими трудностями при интеграции торгового оборудования с устаревшими учетными системами. Типичный пример такой проблемы — совместная работа конфигурации «1С:Управление торговлей 10.3» (УТ 10.3) старых релизов и онлайн-касс популярной линейки АТОЛ (например, АТОЛ 30Ф). При попытке пробить чек пользователи сталкиваются с аннулированием документа на ККТ и получением критической Ошибки ФН 231 в системе 1С.

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

Выясняем причину: почему возникает Ошибка ФН 231

Для начала разберем физический смысл ошибки. Ошибка фискального накопителя с кодом 231 означает: «Некорректное значение параметров команды ФН». В контексте работы с онлайн-кассами по формату фискальных данных (ФФД) 1.05 или 1.2 это чаще всего связано с передачей некорректного тега 1055 (Система налогообложения).

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

В старых версиях конфигурации «1С:Управление торговлей 10.3» (в частности, в релизе 10.3.47.3 и более ранних) в интерфейсе настроек учетной политики налогового учета ПСН попросту отсутствовала. Пользователь мог выбрать только «Общую» или «Упрощенную» системы, а также включить ЕНВД. В результате:

  1. Программа 1С при формировании XML-пакета для кассового драйвера передавала СНО по умолчанию (ОСНО или УСН) либо отправляла пустое значение.
  2. Кассовый аппарат АТОЛ сравнивал полученный тег 1055 со списком СНО в фискальном накопителе.
  3. Обнаружив несовпадение, ККТ блокировала печать, аннулировала чек и возвращала в 1С ошибку ФН 231 с сообщением «Возможны расхождения ИБ и ленты ФР».

Способ 1. Официальное решение от фирмы «1С» (Обновление конфигурации)

Если у вас есть возможность обновить вашу конфигурацию, настоятельно рекомендуем сделать это. Фирма «1С» официально решила проблему поддержки ПСН в рамках масштабного обновления, связанного с отменой ЕНВД.

Начиная с релиза УТ 10.3.67, разработчики полностью переработали форму учетной политики:

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

Способ 2. Точечная доработка кода обработки обслуживания АТОЛ

Рассмотрим по шагам, как решить проблему для конфигурации «1С:Управление торговлей 10.3.47.3» путем модификации внешней или встроенной обработки обслуживания ККТ. Нам потребуется внести изменения в обработку ATOLkkt.epf (или аналогичную обработку обслуживания «АТОЛ: ККТ с передачей данных»).

Наша задача — принудительно передавать СНО «Патент» в структуру параметров чека перед отправкой команды фискализации. Разберем программную реализацию.

Откроем обработку обслуживания в конфигураторе и найдем экспортную функцию ФискализироватьЧек. Внедряем установку патентной системы налогообложения непосредственно перед передачей параметров в драйвер ККТ.

Рассмотрим пример модифицированного кода функции:


Функция ФискализироватьЧек(Объект, ПараметрыЧека) Экспорт
    
    ПолучитьПараметрыККТ(Объект);
    
    мПараметрыПодключения.Вставить("ПараметрыРегистрации", Объект.ВыходныеПараметры);
    
    // Принудительная установка патентной системы налогообложения для ИП
    ПараметрыЧека.СистемаНалогообложения = Перечисления.ТипыСистемНалогообложенияККТ.Патент;
    
    мВходныеПараметры.Очистить();
    мВходныеПараметры.Добавить(ПараметрыЧека);
    
    // Далее следует штатный код фискализации чека драйвером...
    ...
КонецФункции

Давайте проанализируем, что происходит в этой строке кода. Перечисление Перечисления.ТипыСистемНалогообложенияККТ.Патент присутствует в метаданных конфигурации УТ 10.3.47.3. Присваивая это значение свойству ПараметрыЧека.СистемаНалогообложения, мы гарантируем, что драйвер АТОЛ получит корректный тег 1055, соответствующий настройкам фискального накопителя.

Важные нюансы и ограничения «быстрого» метода

Хотя предложенный программный код полностью решает проблему печати чеков для ИП, работающих исключительно на патенте, у этого решения есть важные ограничения, которые необходимо учитывать:

Перспективы использования УТ 10.3 в современных реалиях

Внедрение подобных исправлений помогает продлить жизнь старым информационным базам, однако важно помнить о глобальной картине. Фирма «1С» официально прекратила поддержку конфигурации «Управление торговлей 10.3» в апреле 2024 года.

В условиях динамично меняющегося законодательства РФ (введение новых правил маркировки «Честный Знак», разрешительного режима на кассах, обязательных переходов на новые форматы фискальных документов ФФД 1.2) ручная поддержка устаревшей конфигурации становится крайне трудоемкой и рискованной задачей для бизнеса. Если ваше предприятие планирует работать с маркированными или подакцизными товарами, мы настоятельно рекомендуем рассмотреть планомерный переход на современные конфигурации, такие как «1С:Управление торговлей 11» или «1С:Розница 3.0», где все актуальные требования законодательства поддерживаются «из коробки» и регулярно обновляются разработчиками.

← На главную