Многие пользователи и администраторы систем 1С:Управление торговлей (УТ) версии 11.5 после перехода с более старых релизов (например, 11.4 или ранних 11.5) сталкиваются с неожиданным поведением программы: при пробитии чека из документа Приходный кассовый ордер (ПКО) или Эквайринговая операция, введенных на основании Реализации товаров и услуг, в печатной форме чека ставка НДС заменяется на «Без НДС». При этом в самой реализации налог указан корректно. Проанализируем ситуацию, выясним причины такого поведения системы и разберем способы решения данной проблемы.
Первым делом нам необходимо понять, что данное поведение не является ошибкой программного кода 1С. Это реализация методических рекомендаций ФНС и положений Федерального закона № 54-ФЗ. Согласно позиции налоговых органов (письмо от 04.08.2020 № АБ-4-20/12420@), процесс продажи товара в кредит (с отсрочкой платежа) разделяется на два этапа с точки зрения фискализации:
Проанализируем ситуацию: программа 1С жестко следует этому правилу. Если на момент пробития чека в системе уже зафиксирована отгрузка товара (документ РеализацияТоваровУслуг проведен), то любой последующий входящий платеж программа классифицирует как Погашение кредита (Тег 1214, значение 7). В таком чеке по закону НДС быть не должно, а вместо этого указывается «НДС не облагается».
Выясним причину, по которой 1С принимает решение не печатать НДС. Для этого система анализирует движения по регистрам накопления, в частности по регистру РасчетыСКлиентами. Рассмотрим этот механизм по шагам:
Многие программисты пытаются «допилить» код, чтобы НДС выводился всегда, однако мы крайне не рекомендуем этого делать. В современных форматах фискальных данных (особенно ФФД 1.2) существует жесткая логическая проверка. Если вы укажете способ расчета «Погашение кредита» и при этом выделите НДС, такая операция может быть признана ошибочной при проверке в ФНС.
Если ваша бизнес-логика требует, чтобы клиент получил чек с полной номенклатурой и выделенным НДС 20% в момент отгрузки, следует изменить порядок действий. Рассмотрим правильную последовательность:
Вместо того чтобы бить чек из ПКО, сформируйте его непосредственно из документа Реализация товаров и услуг. В этом случае:
Для того чтобы в чеке из реализации сразу отразилась и оплата (чтобы сумма к оплате была 0, а сумма наличными/безналичными была равна сумме документа), необходимо обеспечить наличие связанных платежных документов, проведенных в ту же дату.
В актуальных релизах УТ 11.5 (начиная с 11.5.12) разработчики добавили возможность пробития одного чека, объединяющего отгрузку и оплату. Проанализируем условия, при которых это возможно:
При соблюдении этих условий при пробитии чека из ПКО система может «увидеть» связанную реализацию и сформировать чек с признаком «Полный расчет», в котором будет и номенклатура, и НДС.
Посмотрим на ситуацию с маркировкой. Это критически важный момент. При продаже маркированного товара (через систему «Честный ЗНАК») код маркировки (КМ) должен быть передан в ОФД именно в момент передачи товара покупателю. Если вы пробиваете чек только из ПКО на «Погашение кредита», вы не сможете передать туда код маркировки, так как этот документ не содержит товарного состава с кодами. Следовательно, товар не выйдет из оборота.
Для маркировки схема всегда должна быть такой:
Если вы все же решили исследовать код формирования чека, обратите внимание на общий модуль МенеджерОфлайнОборудования (или аналогичные модули в зависимости от версии БСП). В нем подготавливаются данные для ФН. Основная логика по определению ставок НДС заложена в функции подготовки таблицы товаров для фискализации.
Система формирует таблицу ТаблицаТоваровЧека. В ней для каждого товара определяется тег 1199 (Ставка НДС). Если алгоритм определяет способ расчета как ПогашениеКредита, он принудительно устанавливает значение, соответствующее «Без НДС».
Рассмотрим пример того, как в коде может выглядеть проверка способа расчета (упрощенно):
Если СпособРасчета = Перечисления.СпособыРасчетаСКлиентами.ПогашениеКредита Тогда
// Согласно методологии 1С и ФНС, НДС не выделяется
СтрокаТовара.СтавкаНДС = Перечисления.СтавкиНДС.БезНДС;
СтрокаТовара.ПризнакПредметаРасчета = Перечисления.ПризнакиПредметаРасчета.Платеж;
КонецЕсли;
Эта логика защищает организацию от некорректного заполнения фискальных признаков. Важно донести до бухгалтерии, что общая сумма уплаченного НДС в любом случае будет верной: налог будет зафиксирован в момент отгрузки (в первом чеке или в книге продаж по документу реализации), а второй чек лишь подтверждает факт движения денежных средств.
Подводя итог нашему анализу, можно дать следующие рекомендации для работы в УТ 11.5:
Таким образом, для исправления ситуации «отсутствия НДС» нужно не менять программный код, а корректировать административные процессы работы кассиров и настройки ведения взаиморасчетов в 1С.