При работе в программе 1С:Зарплата и управление персоналом 3.1 многие пользователи сталкиваются с неприятной ситуацией: при окончательном расчете зарплаты за месяц система «перебрасывает» 1 рубль НДФЛ между разными видами дохода (например, с «Оплаты труда» на «Прочие доходы»). Это создает путаницу в отчетах и ведомостях на выплату. Еще более сложный случай — внезапное появление суммы 364 рубля в регистрах НДФЛ. В этой статье мы подробно разберем, почему это происходит и как привести учет в порядок.
Для начала проанализируем, как программа вычисляет налог. Согласно требованиям Налогового кодекса РФ, НДФЛ рассчитывается нарастающим итогом с начала налогового периода. В программном коде модуля учета НДФЛ это выглядит следующим образом:
НалогСДохода = Окр(ОблагаемыйДоходДляИсчисленияНалога * Ставка) - НалогИсчисленныйРанее;
Рассмотрим подробнее ситуацию. Допустим, в середине месяца сотруднику начислили больничный. Программа рассчитала НДФЛ, округлив его по математическим правилам. Однако при расчете зарплаты в конце месяца система видит общую сумму дохода (Зарплата + Больничный) и заново вычисляет налог от этой общей суммы нарастающим итогом. Если из-за копеек общая сумма налога с начала года должна быть на 1 рубль больше или меньше, чем сумма уже исчисленных налогов в этом месяце, программа добавляет или отнимает этот рубль в последнем документе — «Начисление зарплаты и взносов».
Проблема усугубляется тем, что 1С ведет учет в разрезе Категорий дохода. Именно поэтому мы видим в документе две строки: по одной категории +1 рубль, а по другой — -1 рубль. С точки зрения математики за месяц налог верный, но для отчетности 6-НДФЛ такая «пересортица» может привести к заполнению лишних строк в разделе 2.
Если вы увидели в регистрах или ведомостях сумму 364 рубля, это не случайная ошибка округления, а результат работы с налоговыми вычетами. Сумма 364 получается как 2800 руб. (стандартный вычет на двух детей) * 13%.
Выясним причину ее появления. Это происходит, когда доход сотрудника с начала года превышает порог в 350 000 рублей. Рассмотрим пример:
Самый правильный и безопасный метод решения — соблюдение строгой хронологии. Зачастую рубль «вылезает», когда документы правились задним числом. Попробуем решить проблему следующим алгоритмом:
Если перепроведение не помогает или период уже закрыт, воспользуемся специальным инструментом. Рассмотрим, как внести корректировки вручную:
Перейдем в раздел Налоги и взносы -> Операции учета НДФЛ. Этот документ позволяет напрямую вносить записи в регистры накопления, минуя стандартные документы начисления.
В документе необходимо заполнить соответствующие вкладки:
Важно: Этот метод требует внимательности, так как ручные правки могут «потянуть» за собой ошибки в следующих месяцах из-за расчета нарастающим итогом.
Проанализируем ситуацию на уровне данных. Чтобы понять, откуда система берет неверные цифры, сформируйте отчет «Подробный анализ НДФЛ по сотруднику». В нем четко видно:
Если вы видите, что налог «разваливается» из-за разных дат получения дохода (например, больничный выплачен 10-го числа, а зарплата 31-го), посмотрите на вкладку «НДФЛ» в документе начисления. Проверьте поле «Дата получения дохода». Если в разных документах одного месяца для одного и того же вида дохода стоят разные даты, 1С будет пытаться выровнять округление в последнем из них.
Для программистов приведем пример логики распределения налога по категориям. Система старается минимизировать остатки, используя следующий подход:
// Примерная схема распределения округления
ВсегоНДФЛКРаспределению = Окр(ОбщийДоход * 0.13) - РанееИсчисленныйНДФЛ;
Для Каждой СтрокиДохода Из ТаблицаДоходов Цикл
СтрокаНДФЛ.Сумма = РассчитатьПропорционально(СтрокиДохода.Сумма, ВсегоНДФЛКРаспределению);
КонецЦикла;
// Остаток от округления всегда добавляется к последней строке
СтрокаНДФЛ[Последняя].Сумма += (ВсегоНДФЛКРаспределению - ИтогПоСтрокам);
Борьба с «гуляющим рублем» — это не всегда исправление ошибки. Часто это приведение учета к математическому идеалу, которого требует алгоритм 1С. Помните:
Доход * 13%, то наличие +1 и -1 рубля внутри документа в разных строках не является критической ошибкой для налоговой.Рекомендуем регулярно обновлять конфигурацию ЗУП 3.1, так как разработчики 1С постоянно совершенствуют алгоритмы распределения округлений, чтобы минимизировать подобные расхождения.