Почему в чеках на аванс в 1С:УТ 11.4 печатается ставка НДС 20% вместо 20/120 и как это исправить

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

В процессе работы с торговыми операциями в 1С:Управление торговлей 11.4 (особенно на релизах ветки 11.4.6) пользователи часто сталкиваются с ситуацией, когда при оформлении прихода денежных средств в качестве аванса в фискальном чеке печатается ставка НДС 20%, хотя согласно Налоговому кодексу РФ и требованиям ФФД 1.05 должна указываться расчетная ставка 20/120. Проанализируем, почему возникает это расхождение, кто прав в споре между бухгалтером и программой, и какие шаги необходимо предпринять для корректного формирования чеков.

Законодательная база: почему бухгалтер прав

Прежде всего, разберем правовую сторону вопроса. Согласно пункту 4 статьи 164 НК РФ, при получении оплаты или частичной оплаты в счет предстоящих поставок товаров (выполнения работ, оказания услуг) сумма налога должна определяться расчетным методом. Это означает, что налоговая ставка должна выглядеть как 20/120 (или 10/110 для льготных категорий товаров).

В формате фискальных данных (ФФД) версии 1.05 и выше для чека предусмотрен специальный тег 1199 (Ставка НДС), который для авансовых платежей должен принимать значение расчетной ставки. Если в чеке на аванс указано просто "20%", это является нарушением правил ведения кассовых операций и может повлечь за собой штрафные санкции со стороны налоговых органов, так как искажается суть операции: 20% — это налог "сверху", а 20/120 — это налог "внутри" поступившей суммы.

Особенности реализации в 1С:Управление торговлей 11.4

Рассмотрим, как устроена логика работы программы в документах Приходный кассовый ордер (ПКО) или Эквайринговая операция. Часто программисты и пользователи ищут расчетную ставку 20/120 непосредственно в выпадающем списке выбора ставок в табличной части документа. Однако в типовых конфигурациях 1С (включая УТ 11.4.6) выбор ставки 20/120 в интерфейсе ПКО может быть заблокирован или отсутствовать вовсе.

Важный технический нюанс: система 1С проектировалась таким образом, чтобы автоматически конвертировать ставку 20% в расчетную 20/120 в момент передачи данных на ККТ, если документ признан авансовым. То есть в самом документе 1С вы можете видеть 20%, но в печатной форме чека и в данных, уходящих в ОФД, должна появиться расчетная ставка.

Почему автоматическая подстановка ставки не срабатывает?

Разберем основные причины, по которым в чеке все равно печатается базовая ставка 20%:

  1. Неправильное определение признака способа расчета. Это самая частая причина. Если система не считает данный платеж авансом, она ставит признак "Полный расчет" или "Частичный расчет", что влечет за собой ставку 20%. Чтобы платеж был признан авансом, в документе ПКО должен быть корректно заполнен объект расчетов (Заказ клиента или Договор), по которому на момент пробития чека нет отгрузки.
  2. Ошибки в механизме распределения взаиморасчетов. В УТ 11.4 используется сложный механизм фонового распределения взаиморасчетов. Если по конкретному контрагенту есть висящая дебиторская задолженность, программа может автоматически "схлопнуть" новый платеж с этой задолженностью. В этом случае платеж перестает быть авансом с точки зрения программы и становится оплатой за уже отгруженный товар.
  3. Версия конфигурации. В релизах 11.4.6.207 и близких к нему действительно фиксировались ошибки в коде формирования XML-пакета для драйвера ККТ. Исправления вносились в последующих патчах и релизах (например, в 11.4.6.230).
  4. Драйвер и прошивка ККТ. Иногда 1С передает верные данные, но устаревший драйвер кассового аппарата некорректно обрабатывает теги ФФД 1.05.

Пошаговое решение проблемы

Рассмотрим последовательность действий для исправления ситуации.

Шаг 1: Проверка распределения взаиморасчетов

Прежде чем править код, проанализируем состояние взаиморасчетов. Перейдем в отчет "Задолженность клиентов" или "Ведомость расчетов с клиентами". Выясним, нет ли по данному партнеру старых неоплаченных заказов. Если программа видит долг, она не подставит признак "Аванс" в чек.

Проанализируем поле Объект расчетов в ПКО. Если там выбрано "Без заказа" или указан договор с порядком расчетов "По накладным", система может испытывать трудности с автоматическим определением аванса в момент пробития чека. Рекомендуется указывать конкретный Заказ клиента в качестве основания.

Шаг 2: Обновление конфигурации и проверка патчей

Посмотрим на версию программы. Если вы используете релиз 11.4.6.207, крайне рекомендуется обновиться до версии 11.4.6.230 или выше (в идеале — на актуальную версию ветки 11.4.13 или 11.5). В релизе 11.4.6.230 от 20.02.2019 были внесены существенные правки в механизмы работы с ККТ в части НДС 20%.

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


Если ПризнакСпособаРасчета = Перечисления.ПризнакиСпособаРасчета.Аванс Тогда
    ДанныеЧека.СтавкаНДС = "20/120"; // Утрированный пример логики подмены
КонецЕсли;

Шаг 3: Проверка настроек учетной политики и номенклатуры

Выясним, откуда система берет ставку НДС для чека. Если чек пробивается не "по объекту расчетов" (одной строкой "Аванс по заказу..."), а со списком конкретных товаров, то ставка НДС берется из карточки номенклатуры. Убедимся, что в карточке товара установлена ставка 20%.

Также проверим настройку Налогообложение в документе-основании (Заказе или Счете). Если там по ошибке указано "Продажа не облагается НДС", расчетная ставка в чек не попадет.

Шаг 4: Анализ работы драйвера ККТ

Иногда полезно посмотреть лог драйвера ККТ. В логах можно увидеть реальную XML-структуру, которую 1С отправляет на кассу. Поищем тег AmountWithVAT20120 или аналогичный (в зависимости от модели ККТ). Если 1С отправляет правильное значение, а касса печатает 20%, проблема в прошивке кассы или настройках таблиц налогов в самой ККТ. В этом случае необходимо обновить драйвер в 1С (раздел Администрирование — Подключаемое оборудование) и, возможно, обновить прошивку кассового аппарата у обслуживающей организации.

Как проверить результат без реальной печати чека?

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

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

В данной ситуации бухгалтер однозначно прав — ставка 20/120 обязательна для авансов. Основная проблема в 1С:УТ 11.4.6.207 заключается либо в программной ошибке релиза, которая лечится обновлением, либо в некорректном указании объекта расчетов в ПКО, из-за чего система "не понимает", что это аванс.

Краткий алгоритм действий для исправления:

  1. Убедиться, что в ПКО выбран Заказ клиента, по которому еще не было отгрузок.
  2. Проверить, что в Заказе клиента установлена ставка НДС 20%.
  3. Выполнить обновление конфигурации до версии не ниже 11.4.6.230.
  4. Обновить драйвер ККТ до актуальной версии, поддерживающей ФФД 1.05 и изменения НДС 2019 года.
  5. Проверить результат в личном кабинете ОФД.

Помните, что интерфейсное отображение в документе ПКО (где написано просто 20%) может быть обманчивым — реальное значение формируется программным кодом непосредственно перед отправкой на печать на основе анализа всей цепочки документов.

← На главную