Как отразить премию на 91 счете, а страховые взносы с нее на 20 счете в 1С:УПП 1.3?

Бухгалтер 1С v8.3 (Обычные формы) Бухгалтерский учет Промышленность, строительство и АПК
← На главную

В практической работе бухгалтера и специалиста по автоматизации периодически возникают ситуации, когда требования методологии налогового учета и регламентов предприятия входят в противоречие с типовыми механизмами программных продуктов 1С. Одна из классических дилемм в программе 1С:Управление производственным предприятием (УПП 1.3) — это разделение счетов учета для начисленной премии и страховых взносов, рассчитанных с этой премии.

Типичный сценарий: предприятие выплачивает сотрудникам разовые премии (например, к юбилею или празднику), которые не связаны с производственными результатами. Согласно Налоговому кодексу РФ, такие премии не могут уменьшать базу по налогу на прибыль, поэтому их логично отражать по дебету счета 91.02 "Прочие расходы" (не принимаемые к НУ). При этом страховые взносы, начисленные на эти премии, в соответствии с разъяснениями Минфина РФ (например, Письмо от 25.08.2023 № 03-03-06/1/81210), можно и нужно принимать в расходы по налогу на прибыль. Более того, для производственного персонала экономически оправданно относить эти взносы на счета учета производственных затрат (счета 20, 25 или 26), чтобы они корректно формировали себестоимость продукции.

Однако в типовой конфигурации 1С:УПП 1.3 (и аналогичных решениях на этой же зарплатной подсистеме) действует жесткое правило: программа автоматически формирует проводки по страховым взносам на те же счета и аналитики (статьи затрат), на которых отражено основное начисление (тело премии). Если премия уходит на счет 91.02, то и взносы система также попытается отправить на счет 91.02 по той же статье расходов.

Проанализируем ситуацию и рассмотрим два эффективных способа решения этой задачи: методологический (без изменения программного кода) и программный (с использованием внешней обработки).

Вариант 1. Методологический обход через 20 счет (без доработки конфигурации)

Этот вариант является наиболее предпочтительным с точки зрения поддержки программного продукта, так как он не требует вмешательства программиста и изменения типового кода. Вместо того чтобы использовать 91 счет для премии, мы настроим отражение самой премии на 20 (или 25, 26) счете, но сделаем её непринимаемой для целей налогообложения прибыли. При этом страховые взносы будут отражены на том же производственном счете, но по принимаемой к налоговому учету статье затрат.

Разберем этот процесс по шагам:

  1. Создание статьи затрат для премии: Перейдем в справочник СтатьиЗатрат. Создадим новую статью, например, "Премии за счет чистой прибыли (не принимаемые к НУ)". На вкладке "Налоговый учет" для свойства "Вид расходов (НУ)" выберем значение Не учитываемые в целях налогообложения.
  2. Создание статьи затрат для страховых взносов: В этом же справочнике создадим статью "Страховые взносы с непринимаемых премий (принимаемые к НУ)". В свойствах налогового учета укажем вид расходов НУ — Страховые взносы.
  3. Настройка способа отражения зарплаты: В справочнике СпособыОтраженияЗарплатыВРегламентированномУчете создадим новый способ, например, "Премии непринимаемые (20 счет)". В табличной части укажем счет дебета 20.01 (или 25, 26 в зависимости от категории сотрудников), подразделение и созданную нами ранее непринимаемую статью затрат "Премии за счет чистой прибыли".
  4. Настройка связи статей затрат: Для того чтобы система автоматически заменила статью затрат при начислении взносов, воспользуемся специальным регистром сведений СоответствиеСтатейЗатратОтраженияЗарплатыВБухучете. Добавим новую запись:
    • Статья затрат: "Премии за счет чистой прибыли (не принимаемые к НУ)" (наша статья для тела премии).
    • Статья затрат налога: "Страховые взносы с непринимаемых премий (принимаемые к НУ)" (наша статья для взносов).
  5. Привязка к начислению: В плане видов расчета ОсновныеНачисленияОрганизаций найдем наше начисление премии и на вкладке "Учет" укажем созданный нами способ отражения "Премии непринимаемые (20 счет)".

Результат: При заполнении документа ОтражениеЗарплатыВРегламентированномУчете тело премии отразится по дебету счета 20.01 по непринимаемой статье затрат (что в налоговом учете сформирует постоянную разницу в соответствии с ПБУ 18/02). В то же время страховые взносы будут начислены по дебету счета 20.01, но уже по принимаемой статье расходов, успешно уменьшая базу налога на прибыль. Этот способ полностью закрывает требования аудиторов и законодательства без написания кода.

Вариант 2. Программный метод разделения счетов (91 и 20) через внешнюю обработку

Если регламент вашей компании категорически требует, чтобы тело премии учитывалось исключительно на счете 91.02 "Прочие расходы" (например, для корректного формирования управленческого баланса или отчета о финансовых результатах), то предыдущий вариант не подойдет. В этом случае придется разделять счета: премия должна уйти на 91.02, а взносы — на 20.01.

Поскольку типовые механизмы распределения взносов наследуют счет основного начисления, напрямую связать в настройках 91 счет начисления и 20 счет взносов невозможно. Наилучшим решением здесь будет написание внешней обработки, которая будет корректировать документ ОтражениеЗарплатыВРегламентированномУчете перед его проведением.

Рассмотрим подробнее логику работы такой обработки. Она должна анализировать табличную часть "Отражение в учете" заполненного документа, отбирать строки со страховыми взносами, начисленными на определенный вид расчета (премию), и программно изменять для них счет дебета на 20-й, заполняя при этом необходимую производственную аналитику (номенклатурную группу, подразделение и статью затрат).

Выясним технические детали реализации. Ниже представлен пример кода, который может быть использован в такой обработке:


Процедура ПересчитатьВзносыНаПроизводство(ДокументСсылка) Экспорт
    
    // Получаем объект документа для редактирования
    ДокументОбъект = ДокументСсылка.ПолучитьОбъект();
    
    // Определим целевой счет и аналитику для переноса взносов
    ЦелевойСчет = ПланыСчетов.Хозрасчетный.ОсновноеПроизводство; // Счет 20.01
    ЦелеваяСтатьяЗатрат = Справочники.СтатьиЗатрат.НайтиПоНаименованию("Страховые взносы (принимаемые)");
    ЦелеваяНоменклатурнаяГруппа = Справочники.НоменклатурныеГруппы.НайтиПоНаименованию("Основная номенклатурная группа");
    
    // Пройдем по табличной части "Отражение в учете"
    Для Каждого СтрокаОтражения Из ДокументОбъект.ОтражениеВУчете Цикл
        
        // Нам нужны строки со страховыми взносами, у которых исходно подставился 91 счет
        Если СтрокаОтражения.СчетДт = ПланыСчетов.Хозрасчетный.ПрочиеРасходы И 
             СтрокаОтражения.ВидНачисленияИлиРасхода = Перечисления.ВидыНачисленийИлиРасходов.СтраховыеВзносы Тогда
            
            // Дополнительно проверяем статью затрат, чтобы не перенести лишние взносы
            Если СтрокаОтражения.СубконтоДт1 = Справочники.ПрочиеДоходыИРасходы.НайтиПоНаименованию("Праздничные премии (не принимаемые)") Тогда
                
                // Меняем счет дебета на 20.01
                СтрокаОтражения.СчетДт = ЦелевойСчет;
                
                // Очищаем старые субконто 91 счета и заполняем субконто 20-го счета
                СтрокаОтражения.СубконтоДт1 = СтрокаОтражения.Подразделение; // Первое субконто (обычно Подразделение)
                СтрокаОтражения.СубконтоДт2 = ЦелеваяНоменклатурнаяГруппа;  // Второе субконто (Номенклатурная группа)
                СтрокаОтражения.СубконтоДт3 = ЦелеваяСтатьяЗатрат;          // Третье субконто (Статья затрат)
                
                // Если ведется налоговый учет, корректируем счета и статьи НУ
                Если ПолучитьФункциональнуюОпцию("ИспользоватьНалоговыйУчет") Тогда
                    СтрокаОтражения.СчетДтНУ = ПланыСчетов.Налоговый.ПрямыеРасходыПроизводства;
                    СтрокаОтражения.СубконтоДтНУ1 = СтрокаОтражения.Подразделение;
                    СтрокаОтражения.СубконтоДтНУ2 = ЦелеваяНоменклатурнаяГруппа;
                    СтрокаОтражения.СубконтоДтНУ3 = ЦелеваяСтатьяЗатрат;
                КонецЕсли;
                
            КонецЕсли;
            
        КонецЕсли;
        
    КонецЦикла;
    
    // Записываем и проводим документ
    Попытка
        ДокументОбъект.Записать(РежимЗаписиДокумента.Проведение);
        Сообщить("Документ """ + ДокументСсылка + """ успешно скорректирован и проведен!");
    Исключение
        Сообщить("Не удалось провести документ: " + ОписаниеОшибки(), СтатусСообщения.Важное);
    КонецПопытки;

КонецПроцедуры

Для удобства работы пользователей такую обработку рекомендуется зарегистрировать в справочнике ДополнительныеВнешниеОбработки как обработку заполнения табличных частей. Бухгалтер после ежемесячного расчета зарплаты и заполнения документа ОтражениеЗарплатыВРегламентированномУчете просто нажимает кнопку вызова этой обработки. Она автоматически находит взносы с "праздничных" премий, перенаправляет их на 20-й счет с заполнением всей необходимой аналитики и проводит документ.

Резюме

Выбор конкретного варианта зависит от внутренней учетной политики вашего предприятия:

← На главную