С выходом обновлений конфигурации 1С:Розница, поддерживающих изменения налогового законодательства 2025 года, многие пользователи столкнулись с проблемой: при попытке пробить чек со ставкой НДС 5% или 7%, налог в чеке либо не отображается вовсе, либо заменяется на значение «Без НДС». Это происходит даже в тех случаях, когда в карточке номенклатуры и виде цен ставка указана верно. В рамках данной статьи мы подробно разберем, почему программа ведет себя подобным образом, и какие шаги необходимо предпринять для корректной настройки системы.
Первое, на что нам следует обратить внимание — это жесткая привязка алгоритмов 1С к дате вступления закона в силу. Законодательно новые ставки НДС для упрощенной системы налогообложения (УСН) начинают действовать с 01.01.2025. Проанализируем программный код модулей, отвечающих за расчет налогов. В конфигурации 1С:Розница 2.3.22.30 внедрена проверка, которая блокирует передачу ставок 5% и 7% в драйвер ККТ, если текущая дата документа меньше 1 января 2025 года.
Рассмотрим ситуацию, когда мы пытаемся протестировать функционал заранее. Если системная дата компьютера или дата документа ЧекККМ установлена в 2024 году, программные механизмы автоматически подменяют ставку. Программа «считает», что до наступления 2025 года таких ставок не существует. Чтобы не портить фискальную отчетность при экспериментах, часто используются нефискальные чеки на Кассе ККМ для обучения персонала, которые позволяют безопасно проверить работу интерфейса.
Для исправления этой ситуации в целях тестирования программисту необходимо найти фрагмент кода, где выполняется проверка даты. Обычно это выглядит следующим образом:
// Пример проверки применимости ставок НДС для УСН
ДатаНачалаРеформы = '20250101';
Если ТекущаяДата() < ДатаНачалаРеформы Тогда
// Программа принудительно устанавливает Без НДС
СтруктураНДС.Ставка = Справочники.СтавкиНДС.БезНДС;
КонецЕсли;
Чтобы обойти это ограничение для отладки, мы можем временно изменить константу даты или добавить условие, позволяющее игнорировать проверку для определенных пользователей.
Выясним причину, по которой НДС может пропадать даже при корректной дате. Программа 1С опирается на данные справочника Организации и связанные с ним регистры сведений. Нам необходимо проверить «Историю регистрации в налоговых органах». Если в истории есть записи с перекрывающимися периодами или если для текущего периода не указана применяемая ставка НДС (5% или 7%), система по умолчанию выберет наиболее «безопасный» вариант — отсутствие налога.
Разберем по шагам, что нужно проверить в интерфейсе:
Даже если в 1С данные сформированы правильно, чек может выйти некорректным из-за аппаратных ограничений. Для работы с новыми ставками НДС 5% и 7% кассовый аппарат должен поддерживать актуальные теги фискальных данных. Разработчикам, планирующим интеграцию кастомных решений, может пригодиться пример работы с принтером чеков на свежайшей БПО 3.2, где наглядно показаны механизмы взаимодействия с оборудованием.
Во-первых, прошивка ККТ (Атол, Штрих-М, Эвотор и др.) должна быть обновлена до версии, поддерживающей изменения 2025 года. В старых версиях внутреннего ПО кассы просто нет описания этих налоговых групп.
Во-вторых, версия драйвера ККТ в самой 1С должна быть не ниже актуальной. Проверим это в разделе «Администрирование» — «Подключаемое оборудование». Нажмем кнопку «Параметры подключения» и убедимся, что тест устройства проходит успешно.
Рассмотрим подробнее механизм работы Рабочего места кассира (РМК). В релизе 2.3.22 были изменены алгоритмы обработки корзины товаров. Если в используемом виде цены не установлена галочка «Цена включает НДС», но при этом в карточке номенклатуры стоит ставка 5%, возникает конфликт логики. Для розничной торговли правильным решением будет установка флага включения НДС в стоимость, чтобы избежать математических погрешностей.
В современных реалиях, если требуется сэкономить ресурсы, можно настроить электронные чеки по умолчанию для РМК, а если покупатель настаивает на бумажном документе до завершения продажи, поможет печать товарного чека из РМК.
Выясним, почему в одном и том же чеке у части товаров НДС есть, а у части — нет. Часто это касается маркированной продукции (Честный Знак). Если в настройках интеграции с ИС МП указаны неверные параметры, система может «сбоить» при определении налогового режима. В некоторых случаях для проверки корректности формирования документа без его реальной отправки в налоговую может потребоваться проведение Чека ККМ в РМК без фискализации.
Если все настройки верны, но проблема сохраняется, проанализируем код формирования фискальных строк чека. В некоторых случаях требуется внести изменения в функцию СформироватьДанныеЧека. Посмотрим на пример доработки, которая помогает программе корректно идентифицировать ставку 5%:
// В модуле МенеджерОборудованияВызовСервераПереопределяемый
// Находим процедуру подготовки структуры фискальных строк
Для Каждого СтрокаТЧ Из ДанныеЧека.Товары Цикл
Если СтрокаТЧ.СтавкаНДС = Перечисления.СтавкиНДС.НДС5 Тогда
// Принудительно передаем правильный индекс ставки для драйвера
СтрокаТЧ.НалогТип = 5;
КонецЕсли;
КонецЦикла;
Такая доработка позволяет гарантированно передать нужный идентификатор налога в драйвер ККТ, минуя некоторые промежуточные проверки конфигурации.
Подводя итог, для восстановления отображения НДС 5% в чеках, мы должны выполнить следующие действия:
Если же из-за программных сбоев часть документов уже была пробита с некорректным налогом, следует использовать чеки коррекции за период для 1С:Розница 2.3 для исправления отчетности. Соблюдение этих шагов обеспечит корректную работу магазина в условиях меняющегося законодательства.