Каждый бухгалтер, работающий в программе 1С:Зарплата и Управление Персоналом 3.1, рано или поздно сталкивается со странным поведением системы при расчете налога на доходы физических лиц (НДФЛ) и отображении стандартных вычетов. Особую панику вызывают ситуации, когда у вновь принятых сотрудников вычеты (например, код 126 на первого ребенка в размере 1400 рублей) в регистры налогового учета попадают, сам налог рассчитывается верно, но в печатной форме «Расчетный листок» эти данные просто отсутствуют.
В рамках этой статьи мы подробно разберем, почему возникает эта проблема, как с ней бороться, а также проанализируем еще одну смежную и крайне популярную проблему — появление «лишних» или «затраивающихся» вычетов при оформлении переходящих с месяца на месяц отпусков.
Если вы столкнулись с тем, что у сотрудников, принятых на работу посреди года, стандартные вычеты рассчитываются, уменьшают налоговую базу, но упорно не выводятся в расчетных листках за текущий или будущие месяцы — вы столкнулись с зарегистрированной ошибкой конфигурации.
Суть проблемы: В релизах ветки 1С:ЗУП 3.1.9 (в частности, в релизе 3.1.9.187) разработчиками была допущена ошибка в механизме компоновки данных расчетного листка. Система успешно проводила расчет налога нарастающим итогом в документе НачислениеЗарплатыИВзносов, делала корректные записи в регистры накопления, но при формировании печатного отчета блок со стандартными вычетами оставался пустым.
Компанией 1С эта ошибка была зарегистрирована под номером 10209572. Согласно официальной базе ошибок, исправление было выпущено в следующих версиях программ:
Часто пользователи жалуются: «Мы обновили базу до исправленного релиза (например, 3.1.10.36 или выше), но в расчетных листках вычеты по-прежнему отсутствуют!». Давайте разберем по шагам, почему так происходит и как заставить программу работать правильно.
Шаг 1. Очистка локального кэша конфигурации.
Платформа 1С:Предприятие 8 активно кэширует схемы компоновки данных, макеты отчетов и программный код на локальных компьютерах пользователей. После обновления конфигурации старый кэш может блокировать работу обновленных механизмов отчета «Расчетный листок». Чтобы очистить кэш, выполните следующие действия:
/ClearCache в дополнительных параметрах запуска информационной базы.%userprofile%\AppData\Local\1C\1Cv8 и %userprofile%\AppData\Roaming\1C\1Cv8.Шаг 2. Перепроведение документов начисления.
Само по себе обновление программы не меняет уже рассчитанные данные в регистрах. Если документы за проблемный месяц (например, апрель) были рассчитаны и проведены в «дефектном» релизе, их необходимо перепровести. Откройте документ Начисление зарплаты и взносов за нужный период, нажмите кнопку «Еще» — «Пересчитать сотрудника» для тех работников, у которых возникли проблемы, и проведите документ заново.
Шаг 3. Проверка кастомных (внешних) расчетных листков.
Выясните, используется ли в вашей организации типовой расчетный листок или же подключена внешняя печатная форма. Если используется внешняя обработка, обновление типовой конфигурации никак не повлияет на ее работу. В этом случае вам потребуется обратиться к программисту 1С для адаптации кода внешней формы под обновленные механизмы регистров НДФЛ.
Перейдем ко второй распространенной проблеме, которую описывают пользователи в профессиональном сообществе. Рассмотрим типичную ситуацию: сотруднику начисляется переходящий отпуск с марта на апрель. При этом программа применяет три вычета вместо положенных двух, а в последующем документе начисления зарплаты за апрель производит сторнирование налога.
Давайте проанализируем, почему программа ведет себя подобным образом. В основе логики расчета НДФЛ в программе 1С:ЗУП 3.1 лежит понятие «Дата фактического получения дохода»:
Если отпуск начинается в конце марта (или начале апреля), а выплачивается, например, 25 марта, то для целей учета НДФЛ этот доход безоговорочно относится к марту. Если на момент расчета этого отпуска в информационной базе еще не проведено окончательное начисление зарплаты за март, программа видит следующую картину:
Отпуск, выплачиваемый в марте, забирает мартовский вычет на себя.Начисление зарплаты и взносов за март, программа видит, что мартовский вычет уже «съеден» документом Отпуск. Начинается путаница и перекос в регистрах.При расчете зарплаты за апрель программа видит излишне предоставленные вычеты и производит их автоматическую корректировку (сторнирование). С точки зрения налогового законодательства и итогового расчета за год все выровняется, но в моменте расчетные листки выглядят пугающе для сотрудников и вызывают массу вопросов у контролирующих органов.
Чтобы избежать хаоса с вычетами при расчете переходящих отпусков и больничных, мы рекомендуем соблюдать строгий регламент ведения учета.
Правило 1. Соблюдайте жесткую хронологию ввода документов.
Прежде чем рассчитывать и проводить межрасчетные документы (такие как Отпуск или Больничный лист), которые выплачиваются в конце текущего месяца или начале следующего, обязательно проведите предварительный расчет (или окончательное начисление) зарплаты за предыдущий период. Программа должна «знать», что вычет за прошлый месяц уже гарантированно зафиксирован и применен к основной зарплате.
Правило 2. Контролируйте реквизит «Дата выплаты».
В каждом документе типа Отпуск, Материальная помощь или Больничный лист есть критически важное поле — «Дата выплаты». Именно на эту дату ориентируется подсистема НДФЛ при определении налогового периода и права на вычеты. Если вы фактически выплатили отпускные 28 марта, а в документе осталась дата по умолчанию (например, 10 апреля), программа отнесет весь НДФЛ к апрелю и применит апрельские вычеты, нарушив весь учет.
Правило 3. Использование технических отчетов для локализации проблемы.
Если вычеты «поплыли», не пытайтесь править их вручную в документах начисления. Сначала проанализируйте движения регистров накопления. Для этого можно использовать специализированный запрос или стандартный отчет «Подробный анализ НДФЛ по сотруднику».
Ниже представлен пример запроса, с помощью которого технический специалист или продвинутый бухгалтер может оперативно проверить записи в регистре сведений, отвечающем за применение вычетов:
ВЫБРАТЬ
ВычетыПоНДФЛ.Сотрудник КАК Сотрудник,
ВычетыПоНДФЛ.МесяцРегистрации КАК МесяцРегистрации,
ВычетыПоНДФЛ.КодВычета КАК КодВычета,
ВычетыПоНДФЛ.Размер КАК РазмерПримененногоВычета,
ВычетыПоНДФЛ.Регистратор КАК ДокументРегистратор
ИЗ
РегистрНакопления.ПредоставленныеСтандартныеВычетыФизическимЛицамПоНДФЛ КАК ВычетыПоНДФЛ
ГДЕ
ВычетыПоНДФЛ.Сотрудник = &Сотрудник
И ВычетыПоНДФЛ.МесяцРегистрации = &ПроверяемыйМесяц
Анализируя этот регистр, вы сразу увидите, какой именно документ (например, мартовский отпуск или апрельская зарплата) ошибочно забрал себе право на предоставление вычета, и сможете скорректировать хронологию проведения или даты выплаты в этих документах.
Напоследок важно прояснить ключевое различие, которое часто путает начинающих бухгалтеров. Расчетный листок формируется по месяцу начисления (это категория бухгалтерского учета взаиморасчетов с сотрудником). В то же время все налоговые отчеты (такие как 2-НДФЛ, 6-НДФЛ) формируются по налоговому периоду (категория налогового учета, завязанная на дату выплаты дохода).
Из-за этого различия возникает ситуация, когда вычет за один и тот же месяц в расчетном листке может отображаться в одном периоде (например, в марте, так как отпуск был начислен в марте), а в налоговом регистре по НДФЛ он будет проведен апрелем (так как выплата фактически состоялась в апреле). Это не является ошибкой программы — это штатное поведение, обусловленное требованиями Налогового кодекса РФ. Наша задача как специалистов — понимать эти механизмы и уметь объяснять их сотрудникам организации.