Как исправить проблему с двойным удержанием НДФЛ при сторнировании дохода в 1С:ЗУП 3.1

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

Ситуации, когда начисления одного месяца перекрываются исправлениями в другом, являются одними из самых сложных для учета НДФЛ в программе «1С:Зарплата и управление персоналом 8». Типичный пример: сотруднику начислили зарплату за полный июнь, а в июле он приносит больничный, который сторнирует несколько дней июня. В этом случае программа автоматически пересчитывает НДФЛ, и зачастую возникает ситуация, когда сумма удержанного налога не совпадает с исчисленным. Разберем подробно, почему так происходит и как привести учет в порядок.

Почему возникает разрыв между исчисленным и удержанным НДФЛ

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

  1. Отрицательное исчисление НДФЛ по дате получения дохода из июня (период сторно).
  2. Положительное исчисление НДФЛ с самого больничного по дате его выплаты в июле.

Проблема «двойного сторно» в ведомостях возникает из-за того, что алгоритм заполнения документа Ведомость на выплату не всегда корректно «схлопывает» отрицательный налог прошлого периода с текущими начислениями. В результате при выплате больничного налог уменьшается на сумму сторно, но при последующей выплате зарплаты за июль программа снова видит этот «незачтенный» отрицательный остаток и повторно уменьшает сумму удержания. Выясним, как это исправить.

Способ 1. Ручная корректировка расшифровки НДФЛ в Ведомости

Рассмотрим самый оперативный способ решения, который не требует перепроведения документов. Если мы видим, что в Ведомости сумма к выплате завышена, а НДФЛ занижен, необходимо проверить расшифровку налога.

Разберем по шагам:

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

Важный момент: итоговая сумма удержанного НДФЛ в ведомости должна строго соответствовать сумме налога, который фактически должен быть удержан из выплачиваемого дохода.

Способ 2. Использование документа «Пересчет НДФЛ»

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

Проанализируем ситуацию в этом документе:

  1. Перейдем в раздел «Налоги и взносы» — «Пересчеты НДФЛ».
  2. Создадим новый документ, указав налоговый период (год) и месяц, в котором возникла проблема.
  3. Нажмем кнопку «Заполнить». Если в регистрах есть «перекос» между исчисленным и удержанным налогом, программа подтянет сотрудника и рассчитает разницу.
  4. Проведение этого документа позволяет системе «увидеть» излишне удержанный или излишне исчисленный налог и учесть его при заполнении следующей Ведомости.

Способ 3. Оформление документа «Возврат НДФЛ»

Согласно статье 231 НК РФ, если у сотрудника образовался излишне удержанный налог (что часто и происходит при сторнировании дохода), мы должны его вернуть на основании заявления сотрудника. В 1С:ЗУП 3.1 это единственный «законный» способ обнулить висящее в регистрах отрицательное сальдо.

Посмотрим на пример реализации:

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

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

Если вы обладаете навыками работы с регистрами, стоит проверить записи в регистре накопления Расчеты налогоплательщиков с бюджетом по НДФЛ. Выясним причину расхождения через универсальный отчет.

Обратите внимание на поле ВариантУдержания и ДокументОснование. Часто ошибка кроется в том, что сторно дохода привязано к Документу-исправлению (больничному), а исходное исчисление — к Начислению зарплаты. Программа не всегда может автоматически сопоставить эти записи, если они разнесены по разным датам выплаты дохода.

Рассмотрим пример кода, который часто используется в типовых запросах конфигурации для получения остатков по НДФЛ (упрощенно):


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

Как отмечают участники обсуждения, в старых релизах ЗУП (например, 3.1.6) в запросах формирования ведомости существовали жесткие условия, которые не учитывали перерасчеты прошлого периода в рамках одной ведомости. Если обновление на актуальный релиз невозможно, единственным выходом остается ручной контроль строк в расшифровке НДФЛ каждой ведомости.

Рекомендации по предотвращению ошибки

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

Таким образом, мы выяснили, что проблема не в ошибке пользователя, а в особенностях работы алгоритмов распределения налога. Применяя вышеописанные методы корректировки, вы сможете добиться идеального соответствия между исчисленным и удержанным НДФЛ.

← На главную