Каждый бухгалтер по расчету заработной платы рано или поздно сталкивается с ситуацией, когда программа 1С:Зарплата и Управление Персоналом 3.1 начинает вести себя непредсказуемо в части расчета НДФЛ. Один из наиболее распространенных и пугающих сценариев — это повторное появление стандартных налоговых вычетов на детей у сотрудников, чей доход нарастающим итогом с начала года уже заведомо превысил установленный законодательством лимит.
Вы открываете расчетный листок или документ начисления, видите превышение лимита, но программа упорно продолжает предоставлять льготу, а в некоторых случаях даже сторнирует налог за прошлые периоды и "возвращает" вычет за уже закрытые месяцы. Давайте вместе подробно разберем эту проблему, выясним ее скрытые причины, проанализируем поведение регистров программы и найдем надежные способы исправления ситуации как для прошлых периодов, так и в современных реалиях учета.
Для начала проанализируем ситуацию, которая часто описывается на профессиональных форумах. У сотрудника в марте доход превышает установленный лимит (ранее он составлял 350 000 рублей, а с 2025 года увеличен до 450 000 рублей). При расчете зарплаты за март программа, как и положено, прекращает предоставлять вычет на детей. Однако при расчете зарплаты за следующий месяц (апрель) или при проведении документов выплаты программа внезапно делает сторнирующие записи в регистре накопления Учет доходов для исчисления НДФЛ.
В результате этого сторнирования доход сотрудника за март "на бумаге" (в базе данных НДФЛ) уменьшается и становится меньше лимита. Программа видит, что в марте лимит якобы не был превышен, и автоматически доначисляет мартовский вычет в расчете за апрель. Расчетчик в шоке, налоги "поплыли", а ручные корректировки только усугубляют проблему при последующих выплатах. Выясним, почему программа совершает эти "скачки".
Если мы рассматриваем учет за периоды до 2023 года, то главной причиной проблемы являлось несовпадение даты начисления дохода и даты его фактического получения для целей НДФЛ. Согласно старому законодательству, дата получения дохода для оплаты труда (код дохода 2000) определялась как последний день месяца начисления, независимо от даты выплаты. Для прочих же доходов (премии с кодом 2002, отпуска, больничные) датой получения всегда признавался день их фактической выплаты.
Если в настройках начисления или в самом справочнике кодов доходов НДФЛ для премии или даже оклада была неверно указана категория дохода (например, вместо "Оплата труда" стояло "Прочие доходы от трудовой деятельности"), программа вела себя следующим образом:
Начисление зарплаты и взносов 31 марта программа условно считала, что весь доход относится к марту. Лимит превышен, вычет не предоставляется.Ведомость в банк или Ведомость в кассу на выплату этой зарплаты в апреле программа видела, что выплата фактически происходит, например, 10 апреля.Для исправления этой проблемы в прошлых периодах требовалось настроить соответствие кода дохода оплате труда. Рассмотрим подробнее, как это сделать по шагам.
Шаг 1. Перейдите в меню Налоги и взносы и откройте справочник Виды доходов НДФЛ.
Шаг 2. Найдите необходимый код дохода (например, код 2000 или специализированный код премии, который должен относиться к оплате труда).
Шаг 3. В карточке кода дохода установите флажок Соответствует оплате труда. Это критически важная настройка: именно она указывает программе, что датой получения данного дохода должен считаться последний день месяца начисления, а не дата фактической выплаты по ведомости.
Шаг 4. Нажмите кнопку Записать и закрыть.
После изменения настроек справочника просто перепровести документы начисления и выплаты обычно недостаточно, так как движения в регистрах уже зафиксированы по старой логике. Чтобы исправить накопленные ошибки в базе данных, выполните следующие действия:
Ведомость в банк, Ведомость в кассу и Ведомость через раздатчика за проблемный период (начиная с месяца, где пошли нестыковки).Начисление зарплаты и взносов за те же периоды.С 1 января 2023 года законодательство по НДФЛ изменилось кардинально. Понятие даты получения дохода "как последний день месяца" для оплаты труда было полностью упразднено (пункт 2 статьи 223 НК РФ утратил силу). Теперь для абсолютно всех видов доходов — будь то оклад, премия, материальная помощь, отпускные или больничные — датой фактического получения признается исключительно день выплаты денег сотруднику.
Это означает, что теперь поведение программы, которое в 2018 году считалось ошибкой и требовало настройки "Соответствует оплате труда", стало законным механизмом работы по умолчанию. Настройка "Соответствует оплате труда" в современных релизах 1С:ЗУП 3.1 больше не управляет датой получения дохода для целей НДФЛ. Весь ваш доход теперь привязывается исключительно к ведомостям.
Рассмотрим, как этот механизм работает сейчас и почему у бухгалтеров продолжают возникать вопросы к детским вычетам при приближении к новому лимиту (который с 2025 года составляет 450 000 рублей).
Представим практическую ситуацию. В документе Начисление зарплаты и взносов за март плановая дата выплаты установлена как 10 апреля. При расчете этого документа программа ориентируется на плановую дату и предварительно определяет доходы и исчисляет налог.
Однако реальная выплата по ведомости происходит, например, 8 апреля. Если даты не совпадают, или если вы выплачиваете межрасчетные доходы (отпускные, больничные) в день, отличный от указанного в исходном документе-начислении, программа при проведении документа Ведомость в банк выполняет автоматическое "перемещение" доходов в регистре Учет доходов для исчисления НДФЛ.
Проанализируем этот процесс на примере:
// Пример движений в регистре "Учет доходов для исчисления НДФЛ" при проведении ведомости:
Запись 1: Сторно дохода | Дата получения: 10.04.2024 | Сумма: -50 000 руб. (по плановой дате)
Запись 2: Новое начисление | Дата получения: 08.04.2024 | Сумма: +50 000 руб. (по фактической дате выплаты)
Из-за таких смещений дат внутри налоговых периодов доходы сотрудника нарастающим итогом могут постоянно пересчитываться. Если фактическая выплата переносит доход на стыке месяцев (например, зарплату за март выплатили не в апреле, а досрочно в марте, или наоборот), совокупный доход сотрудника за конкретный месяц может внезапно уменьшиться или увеличиться.
Если в результате такого переноса доход нарастающим итогом за месяц уменьшается и становится меньше 450 000 рублей, программа при очередном расчете (например, при расчете аванса или зарплаты за следующий месяц) автоматически доначислит вычет за прошлый месяц. Бухгалтеру может показаться, что программа ошиблась, но на самом деле она строго следует нормам Налогового кодекса и распределяет доходы по фактическим датам выплат.
Еще одна частая жалоба расчетчиков: "В расчетном листке за один месяц я вижу сразу два вычета на одного и того же ребенка!". Разберемся, почему так происходит.
По новым правилам стандартный вычет предоставляется налоговым агентом при первой же выплате дохода в течение календарного месяца. На стыке месяцев может возникнуть следующая ситуация:
Поскольку обе выплаты физически произошли в феврале, в расчетном листке за февраль или в налоговых регистрах за февраль отразятся сразу два вычета. Это абсолютно корректно с точки зрения налогового учета, так как вычеты привязаны к месяцам налогового периода, в которых выплачен доход, а не к месяцам, за которые этот доход был начислен.
С 1 января 2025 года законодатели преподнесли еще один важный сюрприз для регионов, где применяются северные надбавки и районные коэффициенты. Согласно новой редакции статьи 210 НК РФ (пункт 6.2), доходы в виде районных коэффициентов и процентных надбавок за стаж работы в районах Крайнего Севера теперь выделены в отдельную налоговую базу.
Это коренным образом влияет на расчет лимита для предоставления стандартных детских вычетов:
Рассмотрим пример. Общий начисленный доход сотрудника на Севере нарастающим итогом с начала года составил 500 000 рублей. Из них 380 000 рублей — это оклад и премии (основная база), а 120 000 рублей — районный коэффициент и полярная надбавка (северная база).
Программа 1С:ЗУП 3.1 проверит лимит только по основной базе (380 000 рублей). Так как эта сумма меньше 450 000 рублей, программа продолжит предоставлять сотруднику стандартные вычеты на детей, несмотря на то, что его общая начисленная сумма превысила установленный порог. Это не является ошибкой программы — это прямое требование законодательства с 2025 года.
Чтобы быстро находить причины "скачущих" вычетов и проверять корректность работы программы, используйте следующие аналитические инструменты:
Это самый важный инструмент для проверки НДФЛ. Не пытайтесь анализировать НДФЛ по расчетным листкам или сводам — они показывают бухгалтерский учет (по месяцам начисления), в то время как НДФЛ живет по правилам налогового учета (по датам выплаты). Откройте данный отчет (раздел Налоги и взносы — Отчеты по налогам и взносам), установите флажок Вычеты по кодам и проанализируйте, к каким конкретно датам выплат привязался доход и вычеты сотрудника.
Во всех межрасчетных документах (Отпуск, Больничный лист, Разовое начисление, Премия) всегда проверяйте поле Планируемая дата выплаты. Она должна строго совпадать с реальной датой, которая будет указана в документе Ведомость... при выплате этих денег.
Если в документе начисления отпуска указана плановая дата 15 число, а ведомость вы провели 12 числом, программа будет вынуждена делать сторнирующие записи в регистрах, сдвигать доходы и пересчитывать вычеты. Старайтесь поддерживать строгую дисциплину в датах документов.
Если в прошлых периодах текущего года у вас накопились серьезные ошибки в расчете вычетов, которые не удается исправить перепроведением ведомостей (например, периоды уже закрыты для редактирования), воспользуйтесь документом Перерасчет НДФЛ (раздел Налоги и взносы). Создайте документ, укажите налоговый период (год) и месяц, с которого нужно пересчитать налог. Программа автоматически проанализирует все доходы и вычеты сотрудника нарастающим итогом и зафиксирует корректные итоговые суммы НДФЛ без необходимости открывать и перепроводить старые документы начислений.