При расчете заработной платы, разовых премий или материальной помощи бухгалтеры часто сталкиваются с задачей выплатить сотруднику фиксированную сумму «на руки» (Net), при этом программа должна автоматически «накрутить» сверху все необходимые налоги и взносы (Gross). В типовых решениях 1С такой расчет может быть реализован по-разному в зависимости от используемой редакции конфигурации и локализации (Россия или Казахстан).
Разберем подробно все варианты решения этой задачи: от стандартных настроек в современных типовых конфигурациях до формул расчета и программной доработки учетных модулей.
Рассмотрим порядок включения и настройки функционала в конфигурациях «Зарплата и управление персоналом для Казахстана» и «ERP для Казахстана», начиная с редакции 3.1, где данный расчет уже встроен в типовой функционал.
Начисления.Проанализируем ситуацию в типовых российских конфигурациях «1С:ЗУП 3.1» и «1С:ERP». Согласно трудовому законодательству РФ в приказах и трудовых договорах фиксируются суммы до удержания налогов (Gross). Однако для фиксированных разовых выплат можно применить математический пересчет через формулу вида расчета.
Если у сотрудника нет налоговых вычетов и применяется стандартная ставка НДФЛ 13%, настроим формулу следующим образом:
СуммаНаРуки / 0.87
Разберем более универсальный пример формулы с использованием ставки налога, введенной через показатель:
СуммаНаРуки / (1 - СтавкаНДФЛ / 100)
Если требуется учесть прогрессивную шкалу НДФЛ (например, при превышении предела совокупного дохода), формулу начисления усложняют логическими условиями ?(), либо используют предварительный ввод через документ ДанныеДляРасчетаЗарплаты с заполнением через внешнюю обработку.
Выясним, как задействовать управленческий контур учета для автоматического доведения выплаты до согласованной суммы «на руки»:
Если типового функционала недостаточно (например, при сложной структуре вычетов, множестве баз и необходимости расчета непосредственно в момент проведения документов), разберем архитектуру доработки на уровне кода 1С.
В современных версиях 1С:ERP и ЗУП 3 расчет налогов выполняется параллельно с начислениями в едином документе. Ключевая логика сбора налоговых данных и вычетов сосредоточена в общем модуле УчетНалоговВзносовОтчислений (или специализированных модулях расчета налогов для конкретной страны).
Посмотрим на общую схему доработки через механизм расширений или создание вспомогательного модуля:
УчетНалоговВзносовОтчисленийРасширенный) или переопределим процедуры через аннотацию &Вместо или &Перед в расширении конфигурации.
// Пример упрощенного алгоритма пересчета суммы Net в Gross
Функция РассчитатьСуммуГросс(СуммаНетто, СтавкаНалога, ПрименяемыйВычет) Экспорт
// Если сумма вычета превышает сумму на руки, налог не удерживается
Если СуммаНетто <= ПрименяемыйВычет Тогда
Возврат СуммаНетто;
КонецЕсли;
// Расчет базы с учетом вычета и обратного коэффициента
Коэффициент = 1 - (СтавкаНалога / 100);
СуммаГросс = (СуммаНетто - (ПрименяемыйВычет * (СтавкаНалога / 100))) / Коэффициент;
// Округляем до двух знаков по правилам бухгалтерского учета
Возврат Окр(СуммаГросс, 2);
КонецФункции
Важные нюансы при программной реализации: