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

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

При интеграции современного кассового оборудования с устаревшими или сильно доработанными конфигурациями часто возникает ситуация, когда касса отказывается пробивать чек, выдавая специфическую ошибку. Одной из самых распространенных является ошибка «ФН 231». В этой статье мы подробно разберем, почему она возникает при работе ККТ АТОЛ 50ф с конфигурацией «Управление торговлей 10.3», и проанализируем шаги по её устранению.

Что означает ошибка ФН 231?

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

Например, если ваша касса зарегистрирована только на ЕНВД (или Патент), а 1С передает код «Общая СНО», ККТ заблокирует операцию и выдаст ошибку 231. Рассмотрим подробнее маппинг кодов СНО в драйверах АТОЛ 10.х:

Если в логах драйвера вы видите передачу значения TaxationSystem = 1, а ваша организация работает на ЕНВД (код 8), касса закономерно вернет ошибку.

Шаг 1. Обновление компонентов системы

Проанализируем программную среду. Использование старых версий 1С и драйверов — основная причина некорректной передачи тегов. В Платформе 5.0 (прошивки АТОЛ 10-8346 и выше) требования к заполнению тегов стали значительно строже.

  1. Обновим конфигурацию: Для корректной работы с ФФД 1.05 и 1.1 версия «Управление торговлей» должна быть не ниже 10.3.58.1. В более ранних версиях механизмы формирования XML-пакета для кассы могут не учитывать особенности драйверов АТОЛ 10-й серии.
  2. Обновим обработку обслуживания: Проверьте версию файла ATOLkkt.epf. Рекомендуется использовать версию 3.01 и выше. Именно эта обработка отвечает за «перевод» данных из документов 1С в команды понятные драйверу.
  3. Драйвер ККТ: Убедитесь, что установлен актуальный драйвер АТОЛ (рекомендуется версия 10.6.0.0 или новее).

Шаг 2. Настройка системы налогообложения в 1С

Если после обновления ошибка «ККТ не зарегистрирована с указанной СНО» сохраняется, проверим настройки в самой программе. В УТ 10.3 СНО может определяться в нескольких местах. Пройдем по ним по порядку:

  1. Учетная политика: Перейдем в меню «Предприятие» — «Учетная политика» — «Учетная политика (налоговый учет)». Убедимся, что на дату пробития чека установлена корректная система налогообложения (например, стоит галочка «Является плательщиком ЕНВД»).
  2. Справочник «Организации»: Проверим карточку организации. Иногда СНО может подтягиваться из дополнительных свойств, если конфигурация была доработана.
  3. Справочник «Кассы ККМ»: Это критически важный пункт. В 1С УТ 10.3 настройки торгового оборудования часто привязаны к конкретной кассе. Перейдем в справочник «Кассы ККМ», откроем нужную запись и проверим, нет ли там поля «Система налогообложения». Если поле пустое, 1С может отправлять «0» или «1» по умолчанию.
  4. Склад в документе: Если организация использует несколько систем налогообложения одновременно, 1С определяет нужную СНО по складу, указанному в документе (ПКО или Чек ККМ). Проверим настройки склада.

Шаг 3. Проверка через тест драйвера АТОЛ

Выясним, какие именно СНО активны в вашем аппарате. Для этого воспользуемся «Утилитой тест драйвера»:

Если в ККТ прошита только одна СНО, а 1С пытается передать другую — мы получим ошибку 231. Если данные в ККТ не соответствуют реальности, потребуется перерегистрация кассы без замены ФН (смена параметров регистрации).

Шаг 4. Исправление обработки обслуживания (для программиста)

Если все настройки в интерфейсе выполнены верно, но 1С продолжает отправлять некорректный тег 1055, необходимо внести изменения в код обработки ATOLkkt.epf. Рассмотрим пример того, как найти и поправить передачу СНО.

В модуле обработки найдем функцию, которая формирует XML-строку для драйвера (обычно это СформироватьXMLПакетДляЧека). Нам нужно убедиться, что атрибут TaxationSystem заполняется правильно.

Пример кода для принудительной установки СНО (ЕНВД = 8):


// В функции подготовки данных для драйвера АТОЛ 10
Если ПараметрыЧека.СистемаНалогообложения = Перечисления.ТипыСистемНалогообложения.ЕНВД Тогда
    СНО_Для_ККТ = 8;
ИначеЕсли ПараметрыЧека.СистемаНалогообложения = Перечисления.ТипыСистемНалогообложения.ОСН Тогда
    СНО_Для_ККТ = 1;
КонецЕсли;

// Запись в структуру XML
ЗаписатьАтрибут("TaxationSystem", Формат(СНО_Для_ККТ, "ЧГ=0"));

Проанализируем ситуацию: в некоторых случаях 1С передает индекс перечисления (0, 1, 2...), а драйвер ожидает конкретное битовое значение. В Платформе 5.0 малейшее расхождение ведет к отказу в печати. Если вы видите, что 1С передает TaxationSystem="0", это часто интерпретируется драйвером как попытка использовать ОСН, что и вызывает ошибку 231.

Шаг 5. Работа с документами ПКО

В Сообщении 16 автор упоминает, что ошибка возникает при пробитии чека из ПКО (Приходного кассового ордера). Важно понимать, что в УТ 10.3 логика печати из ПКО отличается от «Чека ККМ». ПКО — это финансовый документ, который может не содержать товарного состава. В этом случае 1С пытается определить СНО исходя из настроек учетной политики «по умолчанию».

Рекомендуем проверить процедуру ПодготовитьДанныеДляПечатиЧека в модуле документа ПКО. Убедитесь, что в структуру ПараметрыЧека передается правильное значение СНО. Если оно не заполнено, добавьте инициализацию:


// Пример заполнения СНО для документа ПКО перед вызовом обработки
Если Не ЗначениеЗаполнено(СтруктураПараметров.СистемаНалогообложения) Тогда
    // Получаем СНО из учетной политики организации
    СтруктураПараметров.Вставить("СистемаНалогообложения", ОбщегоНазначения.ПолучитьСНООрганизации(Объект.Организация, Объект.Дата));
КонецЕсли;

Резюме

Для решения проблемы «ФН 231» на АТОЛ 50ф в связке с УТ 10.3 необходимо обеспечить синхронность настроек в трех точках: Параметры регистрации ККТ, Учетная политика в 1С и Код обработки обслуживания. В большинстве случаев помогает обновление конфигурации до версии 10.3.58+ и использование актуального драйвера 10-й серии, который умеет корректно транслировать тег 1055 в фискальный накопитель.

← На главную