В процессе работы с программой 1С:Зарплата и управление персоналом, редакция 3.1 бухгалтеры и технические специалисты часто сталкиваются с неприятной ситуацией: суммы начислений в расчетном листке и своде полностью корректны, однако в регистре накопления Учет доходов для исчисления страховых взносов (и, как следствие, в отчете РСВ) отражаются искаженные данные. Эти расхождения могут выражаться в «фантомных» копейках, странных сторно-записях или полном несовпадении базы взносов с начисленным доходом. Рассмотрим подробно причины возникновения этой проблемы и разберем по шагам методы ее решения.
Для начала разберем, как программа формирует данные для отчетности по взносам. В отличие от бухгалтерского учета, где важна только сумма начисления, учет взносов опирается на регистр накопления УчетДоходовДляИсчисленияСтраховыхВзносов. Проанализируем два ключевых поля этого регистра:
Проанализируем ситуацию, когда возникают расхождения. Часто это связано с автоматическими перерасчетами. Если сотрудник заболел в текущем месяце, находясь в отпуске в прошлом, программа автоматически делает сторно дохода. В регистре взносов это отражается как отрицательная сумма по Дате получения дохода прошлого месяца. Бухгалтеры часто сверяют РСВ с полным сводом, но из-за таких перерасчетов данные никогда не сойдутся «в лоб», так как РСВ заполняется по дате получения дохода, а свод — по месяцу начисления.
Одной из наиболее глубоких технических причин расхождения является работа внутреннего механизма 1С по распределению доходов. Проанализируем программный код. В документе Начисление зарплаты и взносов существует скрытая табличная часть РаспределениеПоТерриториямУсловиямТруда. Даже если ваша организация не использует обособленные территории, этот механизм все равно задействован в логике формирования базы взносов.
Выясним причину сбоя: при массовом расчете сотрудников (особенно в релизах ветки 3.1.16 и смежных) данные могут искажаться из-за ошибок кэширования временных таблиц в МенеджереРасчетаЗарплаты. Программистам рекомендуется обратить внимание на процедуру СоздатьВТНачисленияДляРегистрацииДоходовСтраховыхВзносов. Если в этой процедуре временная таблица ВТРаспределениеПоТерриториямУсловиямТруда заполняется некорректно, суммы в регистре взносов начинают «жить своей жизнью», не совпадая с суммами на вкладке Начисления.
Как показывает практика, порядок проведения документов в 1С:ЗУП имеет критическое значение. Если документ Начисление зарплаты и взносов проведен раньше, чем межрасчетные документы (премии, отпуска), или имеет «нулевое» время (00:00:00), алгоритмы расчета взносов могут не увидеть актуальную базу.
Выполним следующие действия для исправления:
Начисление зарплаты и взносов.В некоторых случаях для корректного отражения в журналах может потребоваться программная корректировка формата даты, чтобы бухгалтеры могли видеть и редактировать время документа непосредственно в интерфейсе.
Рассмотрим ситуацию, когда массовое перезаполнение документа не дает результатов. Это часто случается, если база данных накопила ошибки в очередях перерасчетов. Посмотрим на алгоритм действий, который помогает в 90% случаев:
Разберем по шагам процесс точечного исправления:
Начисление зарплаты и взносов.Еще — Пересчитать сотрудника).Проанализируем работу сервиса Перерасчеты (Зарплата — Сервис — Перерасчеты). Если кто-то из сотрудников изменил кадровый документ задним числом, система создает запись о необходимости перерасчета. При проведении очередного начисления зарплаты программа пытается «досчитать» или «сторнировать» взносы за прошлые периоды на основании этих скрытых записей.
Рассмотрим, как это исправить:
Зарплата, выберем пункт Перерасчеты.Для поиска конкретных виновников расхождений воспользуемся специализированным отчетом. Рассмотрим его настройку:
Налоги и взносы — Отчеты по налогам и взносам — Проверка расчета взносов.Настройки — Расширенный) добавим группировку по полю Категория дохода и Дата получения дохода.Если стандартные методы не помогают, выясним причину через отладчик. Посмотрим на пример того, как можно проверить данные во временных таблицах при расчете:
// В модуле МенеджерРасчетаЗарплаты найдем место формирования ВТ
// Добавим в табло отладчика следующее выражение для анализа распределения:
МенеджерВременныхТаблиц.Таблицы["ВТРаспределениеПоТерриториямУсловиямТруда"].ПолучитьДанные().Выгрузить()
Если в выгруженной таблице вы видите задвоение строк по одному и тому же Сотруднику и ВидуРасчета, но с разными идентификаторами территорий (даже если территории не заполнены), это и есть причина искажения базы взносов. В этом случае единственным надежным решением будет обновление конфигурации до актуального релиза, где ошибки архитектуры МенеджераРасчета были исправлены разработчиками 1С.
Для предотвращения подобных ошибок в будущем рекомендуем придерживаться следующих правил:
Перерасчеты и очищайте ее от неактуальных записей.Операция учета взносов. Он позволяет напрямую внести записи в регистр Учет доходов для исчисления страховых взносов, минуя сложные алгоритмы документа Начисление зарплаты.