Распределение и контроль перечисленного НДФЛ в ЗиК 7.7


Исправленный алгоритм распределения сумм уплаченного НДФЛ для конфигурации "Зарплата+Кадры" релизов 7.70.321-322
Предлагаемый алгоритм учитывает следующие ситуации, возникающие у налоговых агентов:
1. Корректное распределение уплаты по НДФЛ в разрезе ставок и ОКАТО/КПП
2. Правильное распределение сумм уплаченного НДФЛ по сотрудникам, для которых за расчётный месяц были ведены промежуточные документы уплаты (уволенные, отпускники, и т.п.)
3. Возможность отражения отрицательного исчисленного НДФЛ (опционально, настраивается интерактивно и автоматически)
4. Возможность контроля наличия излишней уплаты по НДФЛ, а также возможность распределения данной излишней уплаты по сотрудникам (опционально, настраивается интерактивно и автоматически)

Наверное, многие уже читали про некорректность работы штатного алгоритма рспределения уплаченного НДФЛ в ЗиК (по состоянию на 322-й релиз), про "кривизну" и "красноту" в регистрах учёта НДФЛ, также, наверняка многие столкнулись с этим лично.
Исследование проблемы и варианты исправленных алгоритмов предлагаются, например, в публикации http://avprog.ru/public/118152/ и комментариях к ней, а также в некторых других публикациях.
Однако не все моменты, с которыми сталкиваются налоговые агенты, учтены в предлагаемых там вариантах алгоритма распределения.
В частности, спорный момент с возвратом НДФЛ (т.е. когда НДФЛ исчисленный по сотруднику за месяц отрицательный).

В новой редакции НК РФ говорится:
Статья 231. Порядок взыскания и возврата налога
1. Излишне удержанная налоговым агентом из дохода налогоплательщика сумма налога подлежит возврату налоговым агентом на основании письменного заявления налогоплательщика.
Налоговый агент обязан сообщить налогоплательщику о каждом ставшем известным ему факте излишнего удержания налога и сумме излишне удержанного налога в течение 10 дней со дня обнаружения такого факта.
Возврат налогоплательщику излишне удержанной суммы налога производится налоговым агентом за счет сумм этого налога, подлежащих перечислению в бюджетную систему Российской Федерации в счет предстоящих платежей как по указанному налогоплательщику, так и по иным налогоплательщикам, с доходов которых налоговый агент производит удержание такого налога, в течение трех месяцев со дня получения налоговым агентом соответствующего заявления налогоплательщика.

некоторые разъяснения были найдены здесь:
http://www.belgarant.ru/articles/as210311/
http://www.buhonline.ru/pub/comments/2010/12/4082

Исходя из этого, я посчитал возможным в данных случаях отражать "отрицательную уплату" по НДФЛ. По крайней мере, это позволяет свести регистры по НДФЛ целиком за налоговый период (год) и корректно сдать отчётность.

Предлагаемый мной алгоритм распределения подразумевает следующую методологию ввода документов "Перечисление НДФЛ в бюджет РФ":
в течение месяца вводятся документы на уволенных сотрудников, отпускников и т.п., где распределение по ФИО и суммам указываются вручную.
После полного расчёта за месяц и произведённой сводной уплаты НДФЛ, вводится документ "Перечисление НДФЛ в бюджет РФ" на данную сводную уплату, где уже и применяется автоматическое распределение сумм НДФЛ по сотрудникам (причём учитываются как "промежуточные" документы уплаты за расчётный месяц, так и целиком ситуация по каждому сотруднику за налоговый период (год) по состоянию на позицию вводимого документа уплаты).

Во вложенном текстовом файле находится целиком изменённый модуль формы документа для Документ.ПеречислениеНДФЛвБюджет, т.о. для установки "патча" необходимо полностью заменить модуль формы на предлагаемый (во вложенном файле - выделить всё, скопировать, в Конфигураторе 1С в модуле формы документа - выделить всё, удалить, вставить из буфера обмена).
Основные изменения произведены в Процедура ЗаполнитьТаблицуНалогов()  (штатная процедура переименована в Процедура ЗаполнитьТаблицуНалогов1())

Для отключения интерактивного выбора варианта распределения для пунктов 3 и 4 нужно в самом начале Процедура ЗаполнитьТаблицуНалогов() произвести минимальные изменения:

    УведомлятьПроОтрицНачНДФЛ=0; // Уведомлять про наличие сотрудников с отрицательным исчисленным/удержанным НДФЛ в текущем месяце
    ОтражатьОтрицУплНДФЛ=0 или 1; // Отражать таких сотрудников (учитывается только при УведомлятьПроОтрицНачНДФЛ=0, иначе спрашивается у пользователя)
    УведомлятьПроПереплатуНДФЛ=0; // Уведомлять про наличие переплаты по НДФЛ в текущем месяце
    ОтражатьПереплатуНДФЛ=0 или 1; // Отражать переплаты пропорционально по сотрудникам (учитывается только при УведомлятьПроПереплатуНДФЛ=0, иначе спрашивается у пользователя)

 

Обн. от 10.03.2012:

1) Улучшено распределение излишне перечисленных сумм НДФЛ, теперь излишняя уплата не распределяется на уволенных и временно неработающих сотрудников (опционально, можно  отключить, установив РаспределятьПереплатуНДФЛНаНеработающих=1)

2) Проверка документа на записанность

3) мелкие изменения в выводимых сообщениях

 

Обн. 14.03.2012:

1) Корректное распределение при перемещениях сотрудника в течение года между подразделениями с разными ОКАТО/КПП

2) Учёт ручных корректировок в регистре учёта НДФЛ (опционально, по умолчанию отключено во избежание недоразумений, чтобы включить, нужно установить переменную УчитыватьПревышениеУдержНДФЛ=1 в начале процедуры ЗаполнитьТаблицуНалогов() )

3) Прочие незначительные изменения и улучшения

4) Для контроля за исчисленным, удержанным и перечисленным НДФЛ приложена модификация разработки http://avprog.ru/public/94188/ (мной было произведено некоторое улучшение функционала, а также исправлено несколько ошибок, в т.ч. неправильное отражение НДФЛ исчисленного по некоторым сотрудникам, автору разработки поставил жирный плюс)

 

Обн. 18.03.2012:

1) Немного улучшен алгоритм распределения для некоторых случаев (например, когда остались "хвосты" неперечисленного НДФЛ с предыдущих месяцев налогового периода, теперь они учитываются).

2) Исправлены мелкие ошибки

3) Переменная УчитыватьПревышениеУдержНДФЛ теперь установлена в 1 по умолчанию

4) В некоторых ситуациях (например, если сотрудник принят на работу в текущем году) неправильно выводятся суммы удержанного НДФЛ в отчёте АнализНДФЛ, и неправильно происходит распределение по удержанному НДФЛ. Ошибка таится не в алгоритмах, используемых в данной публикации, а непосредственно в глобальном модуле ЗиК. Описание и исправление ошибки выложил здесь: http://avprog.ru/public/121237/

5) Расчитываю, что это финальный релиз. За это время было разобрано и учтено множество нестандартных ситуаций, и, если не найдётся явных ошибок, изменять алгоритм распределения в обозримой перспективе больше не планирую.

Файлы обработки:

-