Нередко бухгалтерия или финансовый отдел ставят перед разработчиками задачу: учитывать готовую продукцию на счете 43 строго по фиксированной нормативной (плановой) себестоимости, а возникающие в конце месяца отклонения (дельту между фактом и планом) полностью относить на счет 90.02 «Себестоимость продаж», независимо от того, был ли выпуск полностью реализован в отчетном периоде или остался на складе.
Разберем методологическую подоплеку этого требования, выясним причину архитектурных ограничений конфигурации 1С:Управление производственным предприятием (УПП) и проанализируем практические способы решения данной задачи.
В бухгалтерской методологии (в частности, в соответствии с классической инструкцией по применению счета 40 «Выпуск продукции (работ, услуг)» и положениями ФСБУ 5/2019) существует подход, при котором остатки готовой продукции числятся по нормативной стоимости. В этом сценарии кредитовый и дебетовый обороты по счету 40 сопоставляются, а выявленная разница (экономия либо перерасход) полностью списывается регламентной проводкой в дебет счета 90.02 в корреспонденции со счетом 40.
Однако при автоматизации в типовой системе возникает конфликт между бухгалтерскими правилами и налоговым учетом:
90 при наличии нереализованного остатка порождает разницы по ПБУ 18/02.РасчетСебестоимостиВыпуска жестко завязан на принцип доведения оценки запасов на складах до фактической стоимости. Система автоматически распределяет калькуляционные разницы пропорционально складским остаткам и объемам продаж. Штатного флажка, позволяющего оставить счет 43 по плановым ценам и сбросить все отклонения на счет 90, в УПП не предусмотрено.Посмотрим на распространенную ошибку: попытку сделать в конце месяца ручную бухгалтерскую операцию вида Дт 90.02 - Кт 43 (или через счет 40) на сумму возникшего отклонения. В 1С:УПП такой подход не работает из-за регистровой модели.
Учет себестоимости в УПП ведется по параллельным контурам: данные регистров накопления первичны, а проводки формируются на их основе либо параллельно. Если скорректировать только проводки на плане счетов, возникнут следующие проблемы:
РасчетСебестоимостиВыпуска будет пытаться компенсировать разрыв, формируя некорректные корректирующие движения.Проанализируем ситуацию: чаще всего дельта между планом и фактом складывается из производственных инцидентов — брака, перерасхода сырья, непредвиденных простоев оборудования или технологических потерь. Если эти затраты не включать в базу распределения готовой продукции на счете 20, фактическая себестоимость выпуска приблизится к нормативной.
Разберем по шагам, как выстроить учет без переписывания программного ядра:
ТребованиеНакладная или ПрочиеЗатраты не на статьи затрат выпуска, а на непроизводственные статьи, закрывающиеся на счет 90 или 91.25 и 26) по возможности распределяем по принципу директ-костинга: общехозяйственные расходы списываем сразу на субсчета счета 90, минуя производственную себестоимость счета 20.РасчетСебестоимостиВыпуска отклонение на счете 43 окажется минимальным или нулевым.Если специфика учета строго требует списания всей дельты на счет 90.02 в разрезе номенклатурных позиций, рассмотрим алгоритм программной доработки. Задача заключается в том, чтобы корректировать не только план счетов, но и регистры подсистемы учета затрат строго после выполнения регламентного документа РасчетСебестоимостиВыпуска.
В зависимости от используемого режима учета (РАУЗ или партионный учет) корректируются соответствующие регистры:
УчетЗатратБухгалтерскийУчет (а также налоговый). Создается специализированный сервисный документ или обработка, которая:
43.УчетЗатратБухгалтерскийУчет с аналитикой счета 43 и приходные движения в этот же регистр по разделу затрат на продажу со счетом 90.02.Дт 90.02 - Кт 43 (или Дт 90.02 - Кт 40).ПартииТоваровНаСкладахБухгалтерскийУчет и ЗатратыНаВыпускПродукцииБухгалтерскийУчет. При этом стоимость партий в остатках уменьшается до плановой, чтобы при последующей реализации не происходило повторного списания разниц.Посмотрим на пример заполнения движений регистра учета затрат при РАУЗ:
// Создание корректирующей записи по регистру УчетЗатрат
НаборДвижений = РегистрыНакопления.УчетЗатрат.СоздатьНаборДвижений();
НаборДвижений.Отбор.Регистратор.Установить(СсылкаНаКорректирующийДокумент);
// Сторнирование дельты с остатка склада
ДвижениеРасход = НаборДвижений.ДобавитьРасход();
ДвижениеРасход.Период = КонецМесяца(ТекущаяДата);
ДвижениеРасход.РазделУчета = Перечисления.РазделыУчета.МПЗ;
ДвижениеРасход.СчетУчета = ПланыСчетов.Хозрасчетный.ГотоваяПродукция;
ДвижениеРасход.Номенклатура = СтрокаДанных.Номенклатура;
ДвижениеРасход.Склад = СтрокаДанных.Склад;
ДвижениеРасход.Стоимость = СтрокаДанных.СуммаОтклонения;
// Отнесение дельты на продажи
ДвижениеПриход = НаборДвижений.ДобавитьПриход();
ДвижениеПриход.Период = КонецМесяца(ТекущаяДата);
ДвижениеПриход.РазделУчета = Перечисления.РазделыУчета.Затраты;
ДвижениеПриход.СчетУчета = ПланыСчетов.Хозрасчетный.СебестоимостьПродаж;
ДвижениеПриход.Стоимость = СтрокаДанных.СуммаОтклонения;
НаборДвижений.Записать();
Рассмотрим альтернативную схему без изменения расчетных модулей: организация учета через транзитные склады или промежуточный субсчет. В некоторых внедрениях продукция при выпуске оформляется сразу на счет 43 по плановым ценам, а затем перемещается на учетную аналитику, ключи которой в настройках закрытия месяца жестко перенаправляют калькуляционные отклонения на счет 90. Однако данный метод сложен в поддержке, требует введения фиктивных складов и высокой дисциплины ведения первичной документации.
Выбирая между предложенными вариантами, рекомендуется в первую очередь проанализировать возможность списания сверхнормативных затрат до калькуляции (Вариант 1). Если это невозможно методологически, переходят к реализации корректирующего документа по регистрам (Вариант 2), строго контролируя налоговые разницы по ПБУ 18/02.