Как исправить ошибку «ККТ не зарегистрирована с указанной системой налогообложения» в 1С:Управление торговлей

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

При работе с торговыми решениями от компании 1С пользователи часто сталкиваются со сбоями торгового оборудования при обновлении релизов программы. Одной из наиболее распространенных и неприятных проблем является невозможность пробить чек на фискальном регистраторе (ККТ) с выдачей сообщения: «При печати чека произошла ошибка. Чек не напечатан на фискальном устройстве. Дополнительное описание: ККТ не зарегистрирована с указанной системой налогообложения».

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

Почему возникает ошибка: технический анализ ситуации

Для понимания природы ошибки обратимся к фискальному законодательству (ФЗ-54) и форматам фискальных документов (ФФД). Каждый фискальный накопитель при регистрации кассового аппарата в ФНС программируется на определенный перечень систем налогообложения. При формировании каждого кассового чека программа 1С обязана передавать в ККТ тег 1055 (Применяемая система налогообложения).

Ранее, в более старых релизах «1С:Управление торговлей 11.4» (например, в релизе 11.4.8.73), механизмы взаимодействия с библиотекой подключаемого оборудования (БПО) работали по достаточно мягким алгоритмам. Даже если в настройках учетной политики организации в 1С была указана упрощенная система налогообложения (УСН), а сама касса физически была зарегистрирована на Патент (ПСН) и код патента передавался драйвером по умолчанию, программа успешно закрывала чек. Проверка соответствия СНО между учетной системой и внутренними таблицами ККТ на стороне 1С практически отсутствовала.

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

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

Основная сложность для пользователей УТ 11.4 заключалась в том, что вплоть до релиза 11.4.13 в штатной учетной политике организации ПСН (Патент) попросту отсутствовала в интерфейсе. Разработчики позиционировали программу как оптово-розничное решение для крупных предприятий, где патентный учет не был приоритетным. Предприниматели были вынуждены настраивать кассы на Патент, а в 1С вести учет по УСН. С введением жесткой проверки в БПО эта схема полностью перестала работать.

---

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

Если ваша компания использует типовую конфигурацию «1С:Управление торговлей» и у вас есть активная подписка 1С:КП (ИТС), самым надежным и легитимным решением будет обновление программы до релиза 11.4.13.46 или более поздних версий (включая всю ветку 11.5/12.x), а для автоматизации этого процесса и создания резервных копий можно использовать программу для фонового архивирования и обновления 1С.

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

  1. Перейдем в раздел НСИ и администрирование, далее откроем справочник Организации.
  2. Найдем карточку нашего индивидуального предпринимателя и откроем вкладку Учетная политика и налогообложение.
  3. Нажмем на ссылку создания или изменения параметров учетной политики.
  4. В открывшейся форме настройки налогообложения выберем СНО Патентная система налогообложения (или укажем совмещение УСН и Патента, если это применимо).
  5. Зарегистрируем данные о действующем патенте: укажем его номер, даты действия, а также привяжем патент к конкретным складам или подразделениям (торговым точкам), по которым осуществляются розничные продажи.

После сохранения настроек 1С начнет корректно определять СНО «Патент» при формировании документов продаж и передавать в ККТ соответствующий код СНО (значение 32 в фискальном документе).

---

Способ 2. Использование расширения конфигурации (Для версий ПРОФ)

Если ваша база данных относится к версии ПРОФ, но вы по каким-то причинам не можете оперативно провести обновление на новый релиз (например, из-за большого количества кастомных доработок или сторонних интеграций), выходом станет использование механизма расширений.

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


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

Использование этого метода безопасно для типовой конфигурации, поскольку не требует изменения основной конфигурации на уровне базы данных. Расширение будет корректно работать до момента глобального обновления на релиз со встроенной поддержкой патентов.

---

Способ 3. Прямая модификация кода конфигурации (Для базовых версий или нетиповых баз)

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

Выясним причину проверки СНО в коде модулей БПО. Нам потребуется найти общий модуль, отвечающий за логику работы с подключаемым оборудованием. Обычно это модуль ПодключаемоеОборудованиеУниверсальныйДрайверКлиент или МенеджерОборудованияВызовСервера (названия могут незначительно отличаться в зависимости от версии встроенной БПО).

Рассмотрим алгоритм внесения изменений:

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

// Оригинальный код 1С:
// ВыбраннаяСНО = СтруктураПараметров.СистемаНалогообложенияОрганизации;

// Модифицированный код для принудительного патента:
ВыбраннаяСНО = ПредопределенноеЗначение("Перечисление.ТипыСистемНалогообложенияККТ.Патент");

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

---

Способ 4. Проверка и актуализация параметров ККТ в самой программе 1С

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

Разберем по шагам, как принудительно обновить параметры ККТ внутри 1С:

  1. Перейдем в меню НСИ и администрирование -> Администрирование -> Подключаемое оборудование.
  2. Найдем в списке наш фискальный регистратор и откроем его карточку.
  3. На панели управления нажмите кнопку Параметры подключения (или Тест устройства), убедитесь, что связь с ККТ установлена корректно.
  4. Нажмите на кнопку Операции с фискальным накопителем и выберите пункт Изменение параметров регистрации.
  5. В открывшейся форме утилиты обратите внимание на список флагов СНО. Убедитесь, что галочка напротив пункта Патентная система налогообложения установлена.
  6. Если галочка не установлена, но на физическом уровне касса зарегистрирована под Патент, установите флаг вручную и нажмите кнопку Записать параметры (при этом физической перерегистрации кассы в налоговой не произойдет, но 1С обновит информацию о кассе в своей БД).

После актуализации регистра сведений внутри 1С перезапустите сеанс работы кассира (РМК) и повторите попытку печати чека. Конфликт систем налогообложения будет исчерпан.

← На главную