В практике работы с конфигурациями на базе 1С:ERP (включая «1С:Комплексная автоматизация 2») часто встречается ситуация, когда при возврате денежных средств покупателю система «забывает» принять к вычету ранее начисленный НДС с аванса. Рассмотрим типичный сценарий: в одном месяце (например, в мае) мы получили оплату через эквайринг и выставили счет-фактуру на аванс, а в следующем месяце (в июне) покупатель отказался от услуги, и мы оформили возврат. При закрытии месяца выясняется, что проводка Дт 68.02 Кт 76.АВ не сформировалась, и запись в книге покупок отсутствует.
Разберем по шагам, почему это происходит, как устроены механизмы НДС в современных конфигурациях и что нужно проверить, чтобы исправить ситуацию.
Проанализируем стандартную последовательность операций, которая приводит к ошибке:
Эквайринговая операция (тип «Приход»). Формируется проводка Дт 57.03 Кт 62.02.Счет-фактура выданный (аванс). Проводка Дт 76.АВ Кт 68.02 на сумму выделенного налога.Эквайринговая операция (вид операции «Возврат оплаты клиенту»). Проводка Дт 62.02 Кт 57.03.Формирование записей книги покупок (в рамках закрытия месяца).Ожидается, что на шаге 4 система увидит возврат аванса и сделает вычет. Если этого не происходит, причина кроется либо в нарушении аналитики расчетов, либо в программных особенностях конкретного релиза.
В 1С:КА 2 и 1С:ERP учет НДС неразрывно связан с регистром накопления Расчеты с клиентами по документам. Вычет НДС при возврате аванса возможен только в том случае, если система «понимает», что июньский возврат относится именно к майскому авансу.
Рассмотрим подробнее: в документе возврата должен быть указан тот же Объект расчетов, что и в документе поступления. Если при получении денег объектом расчетов стал «Заказ клиента», а при возврате вы указали «Договор» или создали новый «Заказ», взаимозачета в регистре расчетов не произойдет. В отчете «Ведомость расчетов с клиентами» вы увидите «раздутое» сальдо: аванс будет висеть на одном объекте, а переплата по возврату — на другом. Для системы НДС это две разные, не связанные между собой операции.
Проанализируем техническую сторону вопроса. Когда мы проводим Счет-фактуру на аванс, система делает запись в регистр сведений Задания к формированию записей книги покупок/продаж. Этот регистр является «двигателем» для регламентных механизмов закрытия месяца.
Выясним причину сбоя через отладку кода. За формирование данных для книги покупок отвечает специализированный программный слой. В частности, стоит обратить внимание на модуль УчетНДСУПСлужебный и функцию СформироватьНДСПредъявленный. В старых релизах ветки 2.4 (например, 2.4.8) была обнаружена ошибка алгоритма: при возврате аванса в месяце, отличном от месяца его получения, система некорректно накладывала фильтр по периоду.
Как это выглядит в коде (схематично):
// Временная таблица НДСЗаписиКнигиПокупокПоАвансамПолученным
// заполняется данными из регистров расчетов.
// Ошибка заключалась в жестком условии на соответствие
// периода возникновения аванса и периода документа возврата.
Если ПериодРегистрации <> МесяцВозникновенияАванса Тогда
// В некоторых релизах такие записи отсекались процедурой сбора данных
КонецЕсли;
Если возврат происходит в мае, данные попадают в выборку. Если в июне — условие отбора (фильтр по дате задания) может игнорировать этот аванс, так как задание было сформировано маем, а фактическое движение произошло в июне.
Разберем по шагам действия, которые помогут восстановить учет НДС без привлечения программиста:
Объекта расчетов. Убедитесь, что суммы «схлопнулись» в ноль. Если нет — используйте документ Взаимозачет задолженности для корректировки аналитики.Задания к формированию записей книги покупок, что может подтолкнуть систему к анализу этого аванса в июне.Отражение НДС к вычету.
Дт 68.02 Кт 76.АВ. Это гарантированный способ закрыть сальдо по счету 76.АВ.Если вы столкнулись с этой проблемой в версии 2.4.8 или ниже, проанализируйте запросы в процедурах формирования записей книги покупок. Обратите внимание на то, как заполняются временные таблицы, связанные с НДС по авансам полученным. Основная сложность заключается в сопоставлении данных регистра накопления НДС Предъявленный и регистра Расчеты с клиентами по документам. При возврате через эквайринг (счет 57.03) система должна четко видеть связь между операцией Поступление оплаты и операцией Возврат оплаты через уникальный ключ аналитики учета номенклатуры или расчетов.
Важный момент: в версиях 2.4.11 и выше логика работы с авансовым НДС была существенно переработана и оптимизирована, поэтому наиболее правильным долгосрочным решением будет обновление конфигурации до актуального релиза. Для автоматизации этого процесса при одновременном обслуживании нескольких контуров можно настроить пакетное обновление баз 1С по расписанию.
Подведем итог: отсутствие вычета по НДС при возврате аванса в 1С:КА 2 чаще всего вызвано либо «рассинхроном» аналитики в расчетах с клиентами, либо недоработкой алгоритмов формирования книги покупок в старых релизах при переходе через границу месяца. Тщательная проверка объектов расчетов и использование документа Отражение НДС к вычету помогут вам корректно сформировать отчетность.