Почему в 1С:Управление торговлей при печати чека из ПКО не выводится СНО ЕНВД и как это исправить?

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

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

Разберем причину проблемы: логика разделения опта и розницы

Для начала выясним причину такого поведения системы. Разработчики фирмы 1С заложили в архитектуру программ четкое разделение торговых операций на два контура:

  1. Розничная торговля: Оформляется через специализированные документы Чек ККМ или Отчет о розничных продажах. Здесь СНО определяется по настройкам склада (розничного магазина) или по признаку «Номенклатура облагается ЕНВД». Это именно тот контур, где применение ЕНВД/Патента является целевым и штатным.
  2. Оптовая торговля и расчеты с контрагентами: Оформляется документами Реализация товаров и услуг и Приходный кассовый ордер. В этой схеме ПКО выступает как инструмент взаиморасчетов с конкретным контрагентом по договору. Методически считается, что если вы ведете учет по контрагентам, выписываете накладные и счета-фактуры, то эта деятельность относится к общей (ОСН) или упрощенной (УСН) системе налогообложения.

Проблема возникает в ситуациях «классики жанра»: когда предприятие позиционирует себя как оптово-розничное, но фактически хочет проводить через оптовый блок (РТУ + ПКО) розничные операции, чтобы сохранять историю взаиморасчетов с клиентами и использовать разные типы цен. Проанализируем ситуацию: в коде типовых конфигураций механизм формирования XML-пакета для кассового аппарата при печати из ПКО просто «не заглядывает» в настройки ЕНВД, считая операцию априори облагаемой по основной системе.

Решение 1: Использование Заказов клиентов (для УТ 11 и КА 2)

Если мы работаем в 1С:Управление торговлей 11 или Комплексной автоматизации 2, существует штатный способ заставить ПКО «увидеть» нужную систему налогообложения без правки кода. Посмотрим на алгоритм действий:

Проанализируем связку документов. Программа определяет СНО для чека ПКО на основании документа-основания. Если этим основанием является Заказ клиента, то настройки будут подтянуты оттуда. Выполним следующие шаги:

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

В этом случае при нажатии кнопки «Чек» система увидит в основании явное указание спецрежима и передаст соответствующий код СНО в драйвер ККТ. Важно помнить, что если ПКО создан без привязки к заказу или реализации, он по умолчанию предложит основную СНО из учетной политики организации.

Решение 2: Настройка договора и реализации (для УТ 10.3)

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

Важный нюанс: В учетной политике организации ЕНВД часто представлен не как самостоятельная СНО, а как «галочка» совмещения с ОСН или УСН. Это соответствует Налоговому кодексу РФ, так как организация не может быть «только на ЕНВД», она всегда имеет основной режим. Поэтому программа ищет первичную привязку именно к нему.

Решение 3: Программная доработка для УТ 11.4 / КА 2.4 / ERP

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

Найдем функцию ПолучитьXMLПакетДляФискализацияЧека в общем модуле МенеджерОборудованияВызовСервера. Нам нужно принудительно установить код системы налогообложения, если выполняется наше условие (например, если склад или документ помечен как относящийся к спецрежиму). Разберем пример кода:


// Вставим условие для подмены СНО
ТипРасчета = МенеджерОборудованияКлиентСервер.ПолучитьКодТипаРасчетаДенежнымиСредствами(ОбщиеПараметры.ТипРасчета);

// Проверяем, нужно ли нам принудительно установить ЕНВД (код 3 в терминах 54-ФЗ)
Если ОбщиеПараметры.ДокументОснование.Налогообложение = Перечисления.ТипыНалогообложенияНДС.По ENVD Тогда
    СистемаНалогообложения = 3; // 3 — это код ЕНВД для ККТ
Иначе
    СистемаНалогообложения = МенеджерОборудованияКлиентСервер.ПолучитьКодТипаСистемыНалогообложенияККТ(ОбщиеПараметры.СистемаНалогообложения);
КонецЕсли;

Использование этого метода позволяет «жестко» прописать логику передачи данных на кассу. Обратите внимание, что коды СНО для кассовых аппаратов обычно следующие: 0 — ОСН, 1 — УСН доход, 2 — УСН доход-расход, 3 — ЕНВД, 4 — ЕСХН, 5 — Патент.

Решение 4: Программная правка для УТ 10.3 (Обычные формы)

В конфигурациях на обычных формах (УТ 10.3) логика формирования чека зашита в общие модули работы с торговым оборудованием. Проанализируем функцию СистемаНалогообложения в модуле МенеджерОборудованияКлиентСервер. Здесь можно переопределить возвращаемое значение.

Рассмотрим пример кода, который позволит всегда возвращать ЕНВД при печати из ПКО, если это необходимо пользователю:


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

Внимание: Такая правка является радикальной («костылем»), так как она повлияет на все чеки в системе. Если у вас совмещение режимов (и ОСН, и ЕНВД), необходимо добавить проверку документа-основания или склада, чтобы разделять потоки платежей.

Важные требования 54-ФЗ: Аванс и Предоплата

При печати чеков из ПКО важно учитывать понятия Аванса и Предоплаты. Согласно законодательству:

  1. Предоплата: Если в момент приема денег список товаров известен (ПКО привязан к заказу с товарами), в чеке должны быть перечислены позиции. В этом случае СНО определяется по позициям номенклатуры.
  2. Аванс: Если список товаров не определен (просто «прием денег по договору»), в чеке печатается одна строка «Аванс». В этом случае программа часто теряет связь со спецрежимом и подставляет ОСН.

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

Проверка настроек самого кассового аппарата (ККТ)

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

Итоги и рекомендации

Мы выяснили, что невозможность печати ЕНВД из ПКО — это не случайная ошибка, а следствие методического разделения опта и розницы в логике 1С. Для решения проблемы мы рекомендуем:

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

← На главную