Почему в чеках 1С печатается «Без НДС» при оплате вчерашней отгрузки и как это исправить

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

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

В данной статье мы подробно разберем, почему программа ведет себя именно так, насколько это критично с точки зрения законодательства и какие шаги необходимо предпринять, чтобы привести кассовые чеки в порядок.

Разбор технической причины: логика признаков способа расчета

Для начала проанализируем, как система 1С формирует данные для передачи в фискальный накопитель. Согласно форматам фискальных данных (ФФД 1.05, 1.1, 1.2), каждый расчет должен иметь определенный «Признак способа расчета». Основная проблема кроется в автоматическом определении этого признака программой:

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

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

Анализ требований законодательства (54-ФЗ) и позиции ФНС

Рассмотрим ситуацию с позиции закона. Согласно ст. 4.7 Федерального закона № 54-ФЗ, налоговая ставка является обязательным реквизитом чека. Главный бухгалтер в этой ситуации прав: если организация находится на ОСНО и продает товары с НДС, то появление в чеке надписи «Без НДС» формально является предоставлением недостоверных сведений.

Однако здесь есть важный нюанс, разделяющий расчеты между юридическими и физическими лицами:

Конфликт возникает из-за того, что в массовой практике многие компании не бьют чек на отгрузку (в момент РТУ), а бьют только один чек в момент реального получения денег. Программа 1С, видя разрыв дат, честно пытается выполнить требования ФФД для «Оплаты кредита», что и приводит к исчезновению НДС.

Вариант решения №1: Настройка цепочки документов

Если ваша учетная политика требует строгого соответствия ФФД, необходимо обеспечить пробитие двух чеков. Рассмотрим, как это должно работать в идеале:

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

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

Вариант решения №2: Изменение момента оформления документов

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

Рассмотрим по шагам, как это реализовать, если документы готовятся заранее:

  1. Документ Реализация товаров и услуг создается заранее для складского учета (ордерная схема).
  2. Статус реализации остается «К предоплате» или «В работе».
  3. В день фактического прихода клиента и оплаты, дата реализации меняется на текущую.
  4. На основании реализации создается ПКО, и пробивается чек.

Вариант решения №3: Проверка объектов расчетов в 1С

Иногда ставка НДС «теряется» из-за того, что программа не может однозначно связать платеж с документом отгрузки. Проверим настройки детализации расчетов в договоре или соглашении с клиентом:

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

Техническая корректировка через расширения (для программистов)

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

Разберем примерный алгоритм, который можно внедрить через расширение:


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

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

Аргументы для диалога с проверяющими и бухгалтерией

Чтобы успокоить главбуха и подготовить позицию для налоговой, следует опираться на следующие факты:

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

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

Подведем итог нашему анализу. Чтобы избавиться от «Без НДС» в чеках при работе в «1С:Комплексная автоматизация 2», выберите один из путей:

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

← На главную