Почему счет-фактура на полученный аванс не попадает в книгу покупок в 1С:Бухгалтерии?

Бухгалтер 1С v8.3 (Управляемые формы) 1C:Бухгалтерия Налоговый учет
← На главную

При ведении учета НДС в программе 1С:Бухгалтерия 8 ред. 3.0 нередко возникает неприятная ситуация: поступила предоплата от покупателя, был выписан счет-фактура на аванс, затем произошла отгрузка и зачет аванса, но при заполнении регламентного документа Формирование записей книги покупок на вкладке Полученные авансы нужные строки не появляются. В результате сумма НДС начисляется к уплате дважды (с аванса и с отгрузки), а положенный вычет не принимается. Разберем по шагам, при каких условиях формируется запись в книге покупок, какие ошибки в данных мешают автоматическому заполнению и как их исправить.

Условия для автоматического вычета НДС с полученных авансов

Для того чтобы программа 1С автоматически включила выданный авансовый счет-фактуру в регламентный документ вычетов, должен соблюдаться строгий набор условий:

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

Причина 1: Незаполненный договор в счете-фактуре на аванс (ошибка конфигурации)

Одной из частых причин сбоя является отсутствие договора в шапке документа СчетФактураВыданный. В некоторых релизах конфигурации при автоматической регистрации счетов-фактур на аванс реквизит ДоговорКонтрагента оставался пустым. При этом в регистре НДСсАвансов остаток числится с пустой аналитикой, а при проведении реализации зачет происходит по конкретному договору. Из-за этого запрос к остаткам регистра не находит соответствия.

Проанализируем структуру запроса, с помощью которого система отбирает данные для вкладки «Полученные авансы»:


ВЫБРАТЬ
    НДСсАвансовОстатки.СчетФактура КАК СчетФактура,
    НДСсАвансовОстатки.СтавкаНДС,
    НДСсАвансовОстатки.Покупатель,
    НДСсАвансовОстатки.ДоговорКонтрагента,
    СУММА(НДСсАвансовОстатки.СуммаБезНДСОстаток) КАК СуммаБезНДС,
    СУММА(НДСсАвансовОстатки.НДСОстаток) КАК НДС
ИЗ
    РегистрНакопления.НДСсАвансов.Остатки(&ДатаГраница,
        Организация = &Организация
        И ВидЦенности = ЗНАЧЕНИЕ(Перечисление.ВидыЦенностей.АвансыПолученные)) КАК НДСсАвансовОстатки
СГРУППИРОВАТЬ ПО
    НДСсАвансовОстатки.СчетФактура,
    НДСсАвансовОстатки.СтавкаНДС,
    НДСсАвансовОстатки.Покупатель,
    НДСсАвансовОстатки.ДоговорКонтрагента

Если договор не совпадает, запись не формируется. Чтобы быстро исправить такие документы в базе, можно воспользоваться штатной обработкой Групповое изменение реквизитов либо выполнить программную обработку документов, подставив договор из документа-основания:


Запрос = Новый Запрос;
Запрос.Текст = 
    "ВЫБРАТЬ
    |   СчетФактураВыданный.Ссылка КАК Ссылка,
    |   СчетФактураВыданный.ДокументОснование.ДоговорКонтрагента КАК Дог
    |ИЗ
    |   Документ.СчетФактураВыданный КАК СчетФактураВыданный
    |ГДЕ
    |   СчетФактураВыданный.ВидСчетаФактуры = &ВидСчетаФактуры
    |   И СчетФактураВыданный.Дата >= &Дата
    |   И СчетФактураВыданный.ДоговорКонтрагента = &ПустойДоговор";

Запрос.УстановитьПараметр("Дата", НачалоПериода);
Запрос.УстановитьПараметр("ВидСчетаФактуры", Перечисления.ВидСчетаФактурыВыставленного.НаАванс);
Запрос.УстановитьПараметр("ПустойДоговор", Справочники.ДоговорыКонтрагентов.ПустаяСсылка());

Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
    СФОбъект = Выборка.Ссылка.ПолучитьОбъект();
    СФОбъект.ДоговорКонтрагента = Выборка.Дог;
    СФОбъект.Записать(РежимЗаписиДокумента.Проведение);
КонецЦикла;

Причина 2: Смешанные платежи с НДС и без НДС в одном документе поступления

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

Способ решения: оформлять поступления предоплаты по договорам с НДС и без НДС строго отдельными расчетно-платежными документами. Это гарантирует изолированный учет движений по регистрам НДС.

Причина 3: Нарушение хронологической последовательности и ошибки зачета

Если документы реализации или банковские выписки вводились задним числом, последовательность партий и взаиморасчетов нарушается. В проводке Дт 62.02 Кт 62.01 третьим субконто выступает документ расчетов. Если это субконто не заполнилось или ссылается на другой платеж, автоматический вычет не произойдет.

Разберем последовательность действий для восстановления учета:

  1. Выполним перепроведение документов: перейдем в раздел Операции → Закрытие месяца и выполним перепроведение за весь квартал.
  2. Проверим документ реализации: в поле Расчеты должно стоять значение Зачитывать авансы автоматически. Если выбрано По документу, убедимся, что указан корректный платежный документ.
  3. Сверим счета 62.02 и 76.АВ с помощью оборотно-сальдовой ведомости: сальдо по счету 76.АВ в разрезе контрагента и договора должно строго соответствовать расчетной ставке НДС (20/120) от остатка аванса на счете 62.02.
  4. Запустим отчет Экспресс-проверка ведения учета (раздел Отчеты) и проанализируем раздел Книга покупок на предмет полноты вычета НДС по авансам полученным.

Как отладить заполнение книги покупок в фоновом задании

В современных версиях 1С:Бухгалтерии заполнение регламентных документов по учету НДС выполняется в асинхронном режиме через длительные серверные задания. Обычная точка останова в модуле менеджера или объекта при этом не срабатывает.

Чтобы отследить выполнение запроса отладчиком, выполним следующие настройки:

  1. В конфигураторе откроем меню Отладка → Подключение.
  2. Нажмем кнопку Настройка автоматического подключения.
  3. Установим флаг Фоновые задания.
  4. Убедимся, что служба сервера 1С:Предприятия запущена с ключом отладки (параметр -debug).
  5. Поставим точку останова в общем модуле формирования движений НДС перед вызовом Запрос.Выполнить() и нажмем Заполнить в документе книги покупок. После остановки выполнения скопируем текст запроса и параметры в Табло для детального анализа остатков по регистрам.

После выравнивания договоров, разделения оплат по ставкам НДС и восстановления хронологической последовательности взаиморасчетов табличная часть Полученные авансы будет заполняться автоматически в полном объеме.

← На главную