Не так давно столкнулся с задачей: Реализовать прогрессивную шкалу начисления НДФЛ (налог на доход физических лиц) в 1С: Предприятие ЗУП 2.5 (Зарплата и управление персоналом). Начиная с 2021 года при доходе более 5 млн рублей ставка налога для резидентов — 15%, для доходов до 5млн включительно — 13%.
Дело в том, что ЗУП 2.5 уже не поддерживается 1С, следовательно, необходимо внести изменения в алгоритмы начислений самостоятельно. Расширения не работают, т.к. совместимость не позволяет, поэтому снимаем конфигурацию с поддержки.
Где в ЗУП 2.5 начисляется НДФЛ?
Основная проблема корректировки алгоритма заключается в том, что документов, где производится расчет НДФЛ несколько. При этом не всегда в каждом документе будет начисление НДФЛ, иногда НДФЛ может быть начислен ранее.
Ниже перечислю основные документы, где начисляется налог на доходы физических лиц:
- Начисление дивидендов организаций
- Начисление зарплаты сотрудникам организаций
- Начисление отпуска сотрудникам организаций
- Начисление по больничному листу
- Перерасчет НДФЛ
- Премии сотрудников организаций
- Регистрация разовых начислений сотрудников организаций
Функция расчета НДФЛ
Основная функция расчета суммы налога на доход физических лиц находится в общем модуле «Проведение расчетов» — «Получить данные НДФЛ по регистратору» (стр. 4389).
Для изменения алгоритма начислений необходимо добавить собственную функцию:
// Описание Исчисляет НДФЛ согласно прогрессивной шкале, начиная с 2021 г. // Возвращает: Число - сумма налога. Функция ПолучитьПрогрессивныйНДФЛ_2021(СуммаДохода, СтавкаДляРезидента, МесяцРасчетов) Если Год(МесяцРасчетов) < 2021 ИЛИ СуммаДохода <= 5000000 Тогда Возврат Окр(СуммаДохода * СтавкаДляРезидента); Иначе Возврат Окр(650000 + (СуммаДохода - 5000000) * 0.15); КонецЕсли; КонецФункции // ПолучитьПрогрессивныйНДФЛ_2021()

Далее в основной процедуре исчисления заменяем:
Окр(ОблагаемыйДоходДляИсчисленияНалога * ВыборкаРасчетов.СтавкаДляРезидента)

на
ПолучитьПрогрессивныйНДФЛ_2021(ОблагаемыйДоходДляИсчисленияНалога, ВыборкаРасчетов.СтавкаДляРезидента, ВыборкаРасчетов.МесяцНалоговогоПериода)
