Изначально данная публикация позиционировалась как заготовка для программистов, и я не ждал, что она будет хоть немного востребована.
Однако, ситуация с типовыми механизмами формирования 6-НДФЛ в ЗУП 2.5 (УПП 1.3) очень печальна, я и сам всё это затеял от отчаяния. Наверное поэтому и было получено столько откликов в комментариях и ЛС. Именно замечания / пожелания сообщества сделали эту обработку гораздо более универсальной и функциональной, чем первая версия.
================================
Вроде и выровняли всю первичку в первом квартале, сформировали 6-НДФЛ, отправили.
Но спустя пару обновлений и перепроведений базы - всё снова расползлось, и первый квартал и полугодие соответственно не идёт никак.
Психанул... решено было делать свою обработку по формированию 6-НДФЛ.
Все данные декларации собираются не по регистрам, а по первичным документам. Исключение составляет сумма налоговых вычетов (Строка 030 Раздела 1).
В расчете принимают участие следующие документы:
- НачислениеЗарплатыРаботникамОрганизаций
- ОплатаПоСреднемуЗаработку
- ПремииРаботниковОрганизаций
- РегистрацияРазовыхНачисленийРаботниковОрганизаций
- ДоговорНаВыполнениеРаботСФизЛицом
- НачислениеПоБольничномуЛисту
- НачислениеОтпускаРаботникамОрганизаций
- РасчетПриУвольненииРаботникаОрганизаций
- НачислениеДивидендовОрганизаций
- Оплата праздничных и выходных дней организаций (//UPD 10.10.2016)
Прочие документы, которые могут повлиять на НДФЛ, в нашем учете в 1-ом полугодии не использовались, поэтому и в алгоритме заполнения декларации их нет.
Нет в нашем учёте и ставок НДФЛ отличных от 13%, поэтому в Разделе 1 автоматически не может быть заполнено более 1 строки.
//UPD 27.10.2016 - Обработка обучена заполнению Раздела 1 по разным ставкам НДФЛ.
Дебаты о том, как же правильно (с точки зрения законодательства) заполнять строки декларации 6-НДФЛ не утихают. Истина уже где-то рядом, но абсолютной пока не является.
Далее содержится информация о той «истине» к которой пришли в нашей организации.
Спорными моментами могут являться:
- Заполнение строки 070 (мы разбили так, как посчитали наиболее правильно - об этом далее)
Расчёт строк 100 по ДГПХ аналогично ЗП (последним днем месяца), а не аналогично межрасчётным выплатам (датой выплаты). Такое решение было принято, тк ДГПХ у нас оплачиваются вместе с ЗП, да и удержание НДФЛ с ДГПХ в ЗУП 2.5 происходит документом начисления ЗП. //UPD 07.11.2016 Начиная с версии 3.1.2 в строка 100 по ДГПХ заполняется Датой выплаты, однако если кому-то требуется видеть там конец месяца начисления - в обработке просто нужно снять галочку "Заполнять строку 100 по ДГПХ Датой выплаты". Обсуждалось в (85), (89).
Раздел 1 – заполняется нарастающим итогом с начала года по конец текущего квартала
010 – Ставка налога % (13%)
020 – Сумма начисленного дохода
025 – В ТОМ ЧИСЛЕ сумма начисленного дохода в виде дивидендов
030 – Сумма налоговых вычетов //UPD 07.11.2016 - Доработан алгоритм заполнения строки 030 Раздела1. Обсуждалось в (72), (73), (79), (80).
040 – Сумма исчисленного налога
045 – В ТОМ ЧИСЛЕ сумма исчисленного налога на доходы в виде дивидендов
050 – Сумма фикс аванс платежа (не заполняем)
Итоги:
060 – Количество физлиц, получивших доход
070 – Сумма удержанного налога
080 – Сумма налога, не удержанная налоговым агентом (не заполняем)
090 – Сумма налога, возвращенная налоговым агентом (не заполняем)
Погодовая разбивка Раздела 1 осуществляется по дате начисления, за исключением строки 070!
Строка 070 – это сумма строк 140 раздела 2, погодовая разбивка по строке 120, но строка 100 должна быть больше 31.12.2015г
Раздел 2 – заполняется данными за текущий квартал
100 – Дата факт получения дохода
110 – Дата удержания налога
120 – Срок перечисления налога
130 – Сумма факт полученного дохода
140 – Сумма удержанного налога
Вид Дохода |
Дата факт получения дохода (100) |
Дата удержания налога (110) |
Срок перечисления налога (120) |
Начисление ЗП работникам организации |
Последний день месяца |
Дата выплаты ЗП (Окончательный расчет, авансы не учитваются) |
Дата выплаты ЗП + 1 день + перенос выходных дней |
ДГПХ | Дата выплаты / Последний день месяца (если убрать галочку "Заполнять строку 100 по ДГПХ Датой выплаты") | Дата выплаты |
Дата выплаты + 1 день + перенос выходных дней |
Оплата по среднему / Оплата праздничных и выходных |
Последний день месяца |
*ДатаВыплаты |
*ДатаВыплаты + 1 день + перенос выходных дней |
Премии | Последний день месяца (если код дохода 2000) / *ДатаВыплаты (иной код дохода) | *ДатаВыплаты | *ДатаВыплаты + 1 день + перенос выходных дней |
Больничные / Отпускные |
Дата выплаты |
Дата выплаты |
Конец месяца от ДАТЫ ВЫПЛАТЫ + перенос выходных дней |
Расчёт при увольнении |
Последний рабочий день работника |
Дата выплаты |
Дата выплаты + 1 день + перенос выходных дней |
Дивиденды |
Дата выплаты |
Дата выплаты |
Дата выплаты + 1 день + перенос выходных дней |
*В ЗУП 2.5 в документах ОплатаПоСреднемуЗаработку, ПремииРаботниковОрганизаций и ОплатаПраздничныхИВыходныхДнейОрганизаций нет реквизита "ДатаВыплатыДохода".
ИСПОЛЬЗУЙТЕ ДОПОЛНИТЕЛЬНЫЙ РЕКВИЗИТ - (раскройте спойлер для отображения).
В документах Оплата по среднему / Премии (начисление НДФЛ) / Оплата праздничных и выходных для указания даты выплаты дохода необходимо использовать дополнительный реквизит
Поквартальная разбивка Раздела 2 осуществляется по строке «110 – Дата удержания налога».
Поквартальная разбивка Раздела 2 осуществляется по строке «110 – Дата удержания налога» или строке «120 – Срок перечисления налога». Настраивается переуключателем на титульной странице обработки. //UPD 24.04.2017 - 3.2.3
ФУНКЦИОНАЛЬНЫЕ ВОЗМОЖНОСТИ И ИНТЕРФЕЙС ОБРАБОТКИ
1. Автоматическое заполнение декларации по организации за период
2. Вывод всех возможных расшифрок, как расширенных (по физлицам), так и сводно (по документам) + удобная расшифровка любой строки Раздела 2
3. Возможность ручной корректировки данных в Разделе 1 и Разделе 2. После редактирования дат в Разделе 2 есть возможность автоматически сгруппировать строки с равными датами.
4. Проверка контрольных соотношений (4 обязательных и 2 дополнительных, для проверки раздела 2 после ручных корректировок)
5. Выгрузка итогового файла для отправки декларации
6. Выгрузка данных в типовой регламентный отчет 6-НДФЛ - Перед печатью, выгрузкой или проверкой типового отчета необходимо его СОХРАНИТЬ, иначе лезут ошибки. //UPD 24.10.2016.
Обработка автоматически НЕ ЗАПОЛНЯЕТ строки 050, 080 и 090 Раздела 1 - в моём частном случае это просто не требуется.
Кнопка "Заполнить" становится активной только когда заполнены реквизиты:
- Организация
- КодПоОКТМО
- КодИФНСПолучателя
- КодИФНС
Кнопка "Сохранить" становится активной только когда заполнены реквизиты:
- Организация
- КодПоОКТМО
- КодИФНСПолучателя
- КодИФНС
- Подпись
- ДатаПодписи
- Телефон
- КодМестаПредставленияРасчета
- Раздел 1 (хотя бы 1 строка в таблице)
- Раздел 2 (хотя бы 1 строка в таблице)
ЕСЛИ ИСПОЛЬЗУЕТЕ ДЛЯ ОТПРАВКИ ОТЧЕТНОСТИ В ИФНС – ПРОВЕРЯЙТЕ КОРРЕКТНОСТЬ ПОДАВАЕМЫХ ДАННЫХ.
Информация об обновлениях (раскройте спойлер для отображения)
//UPD 28.07.2016 - Исправлена ошибка: При сворачивания/разворачивании расшифровок по физлицам в соответствующем разделе затирались ручные корректировки декларации.
//UPD 28.07.2016 - Исправлена ошибка: В элементах формы на закладке Раздел 1 ранее было отключено свойство "Редактирование текста", что не позволяло корректировать данные раздела вручную
//UPD 28.07.2016 - Исправлена ошибка: Нехватка разрядности в числовых полях
//UPD 28.07.2016 - Добавлен отбор по подразделениям. К сожалению не имею возможности его полноценно протестировать - так что это пока ТЕСТОВЫЙ режим. Отбор не по ОКТМО, а по иерархии подразделений. Мне уже собщили, что такой подход ошибочен, тк подразделения с одинаковым ОКТМО могут быть в разной иерархии. Постараюсь доработать в ближайшее время.
//UPD 29.07.2016 - Исправлена ошибка: Ранее программа не брала в расчет доп начисления из документа "Разовые начисления".
//UPD 29.07.2016 - Отбор по подразделениям переписан. Он больше не основан на иерархии справочника "Подразделения организации". Отбор осуществляется по полям "Код по ОКТМО" и "КПП". То есть, в случае если у вас несколько обособленных подразделений с одинаковыми КПП и ОКТМО - выбирайте ЛЮБОЁ из них и получится декларация по ВСЕМ подразделения имеющих такие же коды. Что касается дивидендов - они начисляются не в разрезе подразделений, поэтому они попадут в декларацию, только когда КПП и ОКТМО организации соответствуют отбору по этим полям (подразделение не заполнено, либо коды ОКТМО и КПП подразделения совпадают с ОКТМО и КПП организации).
//UPD 29.07.2016 - Проверка соотношений вынесена на отдельную страницу.
//UPD 29.07.2016 - На титульную страницу вынесены: КПП, ОКТМО, Код ИФНС-получателя, Код ИФНС, Телефон , Код места представления расчета. Что позволяет отредактировать их вручную и сформировать файл выгрузки с нужными параметрами
//UPD 12.09.2016 - Из расчета исключены пособия по уходу за ребенком до 1.5 лет
//UPD 10.10.2016 - В расчет добавлен документ ОплатаПраздничныхИВыходныхДнейОрганизаций
//UPD 10.10.2016 - Для определения даты выплаты в документах Оплата по среднему / Премии (начисление НДФЛ) / Оплата праздничных и выходных теперь используется дополнительный реквизит.
//UPD 13.10.2016 - пользователь Anna_Valenty помогла обнаружить ошибку, при которой данные о начислениях из документов "ПремииРаботниковОрганизаций" и "РасчетПриУвольненииРаботникаОрганизаций" не попадали в декларацию в случаях, когда в карточке сотрудника в закладке "трудовой договор" не было заполнено подразделение.
//UPD 14.10.2016 - пользователь Бирюков Артем (artemb) обнаружил ошибку - в декларацию попадали данные из документа "НачислениеЗарплатыРаботникамОрганизаций", с Периодом начисления "ПерваяПоловинаТекущегоМесяца", что неправильно (я убедился в этом, ознакомившись с этой статьёй на ИТС)
//UPD 14.10.2016 - пользователь Бакулева Марина помогла обнаружить ошибку, при которой начисления по ДГПХ не попадали в декларацию в случае, когда в документе не заполнено подразделение. Да и вообще с незаполненным подразделение в любом документе была беда - всем рекомендую обновиться
//UPD 19.10.2016 - благодаря пользователю den_vladimir обнаружена ошибка, при которой в декларацию попадали начисления "Отпуск по беременности и родам" и "Пособие за счет ФСС при постановке на учет в ранние сроки беременности". Ошибка исправлена, доступна версия 2.2.3.
//UPD 20.10.2016 - Утомился исключать поочередно все начисления, не облагаемые НДФЛ. Наконец решил исключить их ВСЕ по общему признаку, что следовало сделать с самого начала, а не идти по методу "Костыли и велосипеды".
Тем более, что это оказалось очень просто - ВСЕ начисления без кода дохода по НДФЛ исключены из расчета. Доступна версия 2.2.4.//UPD 24.10.2016 - Появилась возможность выгрузки данных в типовой регламентный отчет 6-НДФЛ. Перед печатью, выгрузкой или проверкой типового отчета необходимо его СОХРАНИТЬ, иначе лезут ошибки.
//UPD 27.10.2016 - Обработка обучена заполнению Раздела 1 по разным ставкам НДФЛ.
//UPD 31.10.2016 - благодаря пользователю den_vladimir обнаружена ошибка, из-за которой в расшифровку раздела 2 не попадали начисления по документу "Оплата праздничных и выходных дней организаций". Сам раздел 2 при этом формировался правильно, ошибка была исключительно в расшифровке. Доступна версия 3.1.1.
//UPD 07.11.2016 - 3.1.2:
1. Доработан алгоритм заполнения строки 030 Раздела1. Обсуждалось в (72), (73), (79), (80).
2. Строка 100 Раздела2 по ДГПХ теперь заполняется Датой выплаты, однако если кому-то требуется видеть там конец месяца начисления - в обработке просто нужно снять галочку "Заполнять строку 100 по ДГПХ Датой выплаты". Обсуждалось в (85), (89).
3. Если в документе "ПремииРаботниковОрганизаций" в графе "Вид премии" стоит начисление с кодом отличным от "2000", то в строку 100 Раздела2 пойдет Дата выплаты, в противном случае - последний день месяца начисления. Обсуждалось в (86), (88), (89), (90), (91), (92), (93), (94), (95), (96).
4. Из расчета исключены документы НачислениеЗарплатыРаботникамОрганизаций с типом расчета "За вторую половину месяца". Замечание от пользователя artemb (Бирюков Артем).Выражаю благодарность за участие в улучшении обработки пользователям: Бирюков Артем (artemb), Артём Артёмов (TeMochkiN), Александр Чесноков (chesnokov-a-v).
//UPD 22.11.2016 - 3.1.3: Декларация обучена собирать доходы по ставке 35% с закладки "Погашение займов" документа НачислениеЗП.
//UPD 16.12.2016 - 3.1.5:Исправлена ошибка из-за которой в строку 025 попадали оплаты праздничных и выходных.
Добавлена возможность настройки поквартального разбития строки 070 (по 110 или по 120). Кому как нравится, по 110 возможно правильнее, но у ИФНС могут возникнуть вопросы, поэтому по умолчанию оставил 120.//UPD 10.02.2017 - 3.2.0:
Добавлена возможность сохранения и восстановления промежуточного итога, в случаях когда данные декларации правятся вручную в обработке.
Добавил дополнительный реквизит "Дата выплаты дохода" для документа "Расчет при увольнении" (по умолчанию заполняется датой увольнения)
Поправил доплату до среднего заработка в больничных
Поправил премии (внес коды доходов, прописал удержание НДФЛ из соответствующей вкладки документа).
//UPD 22.02.2017 - 3.2.1:
1. Строка 030 по регистру "Стандартные вычеты по НДФЛ" теперь заполняется не по дате, а по месяцу налогового периода
2. Строки 020 , 025, 040, 045 раздела 1 теперь разбиваются по периодам не по дате начисления, а по дате фактического получения дохода (по строке 100 раздела 2)//UPD 06.03.2017 - 3.2.2:
Исправил ошибки, обнаруженные пользователем Виктор Бредихин (brodya)
//UPD 24.04.2017 - 3.2.3:
Добавлен переключатель для настройки поквартальной разбивки раздела 2 - по строке 110 или 120.
//UPD 01.11.2017 - 3.3:
Maxim Kolkin (the) - доработал версию 3.2.3 для корректной работы в ЗиКБУ. От себя лично и от имени сообщества выражаю ему благодарность за участие в жизни проекта.