Каждый бухгалтер, работающий в программе 1С:Зарплата и управление персоналом (редакция 3.1) или 1С:Зарплата и кадры государственного учреждения, хотя бы раз сталкивался со странным поведением программы при расчете НДФЛ. Типичная ситуация: у сотрудника есть право на стандартные налоговые вычеты (например, на детей), он долгое время находился на больничном или в простое, а после предоставления заявления на вычеты программа начинает хаотично сторнировать ранее примененные льготы в последующих месяцах. Любые ручные корректировки только усугубляют ситуацию, перенося «минусы» на будущие периоды.
В этой статье мы подробно разберем, почему программа ведет себя подобным образом, проанализируем внутренние механизмы учета НДФЛ и предоставим пошаговый алгоритм, который поможет вам исправить ошибки и навести порядок в регистрах налогового учета.
Для того чтобы эффективно бороться с проблемой, необходимо понять физику процесса. Сторнирование вычетов в документе НачислениеЗарплатыИВзносов — это не случайный сбой, а результат работы жестких алгоритмов налогового учета программы, на которые накладываются особенности ведения учета конкретного сотрудника.
Выделим четыре ключевые причины, по которым вычеты за прошлые периоды начинают «минусоваться»:
1. Изменение логики распределения вычетов «задним числом» в новых релизах
В последних версиях программ 1С:ЗУП 3.1 разработчики существенно изменили логику работы со стандартными вычетами, которые заявляются сотрудником не с начала года. Раньше, если заявление на вычет регистрировалось, например, в июле с началом действия в марте, программа распределяла эти вычеты по прошлым месяцам (с марта по июнь). Теперь же вся сумма вычетов, накопившаяся за прошлые месяцы, в налоговом учете относится к текущему месяцу перерасчета (к июлю). Если у сотрудника в этом месяце небольшой доход, сумма вычетов может превысить его. Это приводит к образованию отрицательной налоговой базы и излишне удержанному НДФЛ, который программа пытается скорректировать в следующем месяце (августе), порождая непонятные сторнирующие записи.
2. Сдвиг дат получения доходов из-за межрасчетных выплат
С 2023 года датой фактического получения дохода для целей НДФЛ признается исключительно дата его фактической выплаты. В случае с сотрудниками, которые часто находятся на больничных, имеют простои или получают разовые начисления, критически важным становится поле ПланируемаяДатаВыплаты в этих документах. Если реальная дата выплаты в документе Ведомость отличается от планируемой даты в документе-начислении даже на один день, программа автоматически переопределяет дату получения дохода. Доход «мигрирует» между месяцами налогового периода, увлекая за собой и вычеты. Примечательно, что простая отмена ведомостей не решает проблему: при проведении расчетов без ведомостей программа возвращает даты доходов к «планируемым», что снова запускает автоматический перерасчет вычетов на другие даты.
3. Превышение суммы стандартных вычетов над величиной дохода
Если сотрудник постоянно находится на больничном, его доход крайне мал. В программе зафиксирована особенность (и периодически возникающие программные ошибки), когда размер примененного вычета в конкретном документе начисления превышает сумму самого начисления. 1С:ЗУП пытается применить вычет полностью, из-за чего исчисленный НДФЛ уходит в минус. В следующем месяце при расчете очередной зарплаты программа пытается «выровнять» налоговую базу нарастающим итогом с начала года, из-за чего сторнирует «лишние» вычеты прошлых месяцев и пытается перераспределить их заново.
4. Пересортица по категориям доходов и документам-основаниям
В программе разные виды начислений имеют разные категории доходов для целей налогообложения: оклад относится к категории «Оплата труда», больничный лист — к «Прочим доходам». Программа ведет учет НДФЛ и вычетов обособленно по каждой категории доходов и каждому документу-основанию. Из-за этого при расчете налога вычет может быть сначала полностью применен к одной категории дохода, а затем частично сторнирован по другой, чтобы не допустить отрицательного налога по конкретному коду дохода. В расчетном листке это выглядит как пугающее нагромождение плюсовых и минусовых строк, хотя итоговый налог за месяц может рассчитываться верно.
---
Для того чтобы прекратить бесконечные перерасчеты и сторнирование вычетов, выполним следующие последовательные шаги.
Ни в коем случае не пытайтесь анализировать логику программы по расчетному листку или по вкладке «НДФЛ» в документе начисления зарплаты. Эти формы показывают лишь конечный результат, но не раскрывают причин.
Откроем специализированный отчет:
Проанализируем отчет: обратим внимание на колонки с доходами и примененными вычетами в разрезе дат получения дохода. Здесь мы четко увидим, в каких именно месяцах возникла отрицательная налоговая база и на какие даты программа распределила вычеты. Для детальной проверки служебных данных по сотруднику можно использовать инструмент для просмотра регистров по НДФЛ.
Это самый важный шаг для сотрудников с большим количеством больничных листов и межрасчетных выплат. Выполним следующие действия:
БольничныйЛист, Отпуск, ПростойСотрудников, РазовоеНачисление).Ведомость, которым эта сумма была выплачена сотруднику.ПланируемаяДатаВыплаты в документе начисления так, чтобы оно строго совпадало с датой ведомости.После синхронизации дат доходы сотрудника перестанут хаотично перемещаться между налоговыми периодами, что стабилизирует расчет вычетов.
Когда мы скорректировали даты, нам необходимо прервать цепочку автоматических сторно в ежемесячных документах начисления зарплаты. Для этого зафиксируем правильное состояние налогового учета специальным документом:
ПерерасчетНДФЛ.Программа проанализирует базу нарастающим итогом, самостоятельно определит перекосы в регистрах вычетов и налога, после чего сформирует корректирующие записи. Проведение этого документа «очистит» регистры, и при расчете зарплаты за последующие месяцы (сентябрь и далее) программа больше не будет возвращаться к прошлым периодам и сторнировать вычеты. Для исправления перекосов непосредственно в регистрах можно использовать обработку для корректировки вычетов НДФЛ в регистрах накопления.
Поскольку проблема избыточного применения вычетов при низком доходе сотрудника часто связана с внутренними ошибками релиза платформы и конфигурации, обязательно проверим обновления программы. В частности, разработчиками 1С периодически выпускаются оперативные исправления (патчи) для исправления ошибок расчета НДФЛ при превышении вычетов над доходами (например, патч EF_60020849 или аналогичные). Убедимся, что в базе включена автоматическая загрузка исправлений, либо обновим конфигурацию 1С:ЗУП до актуального релиза.
Систематическое выполнение этих шагов позволит вам раз и навсегда решить проблему некорректного сторнирования вычетов и обеспечит спокойную сдачу отчетности по форме 6-НДФЛ.