При ведении налогового учета по упрощенной системе налогообложения (УСН) с объектом налогообложения «Доходы минус расходы» бухгалтеры часто сталкиваются с тем, что некоторые затраты не попадают в Книгу учета доходов и расходов (КУДиР). Особенно остро эта проблема встает, когда в типовую конфигурацию «1С:Бухгалтерия» вносятся кастомные изменения — например, добавляются новые документы для отражения продаж.
В этой статье мы подробно разберем ситуацию, когда розничные продажи автозапчастей оформляются нетиповым документом Товарный чек, из-за чего их себестоимость не списывается в расходы УСН. Мы проанализируем внутренние механизмы работы платформы «1С:Предприятие», выясним причины сбоя налогового учета и рассмотрим несколько практических вариантов решения этой проблемы — как для разработчиков, так и для практикующих бухгалтеров.
Прежде чем переходить к устранению ошибки, давайте вспомним, как именно в программе «1С:Бухгалтерия» формируются расходы для УСН. Согласно Налоговому кодексу РФ (ст. 346.17 НК РФ), для признания расходов на приобретение товаров для дальнейшей реализации должны одновременно выполниться три ключевых условия:
В системе 1С за отслеживание этих условий отвечает сложная цепочка регистров накопления. Главным «аккумулятором» этих событий выступает вспомогательный регистр накопления Расходы при УСН. Движения по нему происходят следующим образом:
ПоступлениеТоваровУслуг) в регистре создается запись вида «Приход» со статусом «Не списано, не оплачено» (или «Не списано», если ранее была произведена предоплата).Расходы при УСН со статусом «Не списано», закрывая эту цепочку. Одновременно с этим сумма списываемой себестоимости попадает в регистр накопления Книга учета доходов и расходов (раздел I). Именно записи этого регистра мы и видим в печатной форме КУДиР.Если хотя бы одно звено цепи нарушается — например, товар продан, но не оплачен поставщику, или товар оплачен, но документ реализации не сформировал нужные движения по регистрам — расход в КУДиР не признается.
Часто начинающие разработчики или приходящие специалисты пытаются решить задачу создания нового печатного документа самым очевидным, на их взгляд, путем: они копируют существующий документ (например, РеализацияТоваровУслуг) в конфигураторе, переименовывают его в Товарный чек и выводят на печать. При этом они забывают, что современная конфигурация «1С:Бухгалтерия» — это сложный программный комплекс, где проведение документов завязано на общие модули и подписки на события.
Давайте выясним, почему простое копирование метаданных приводит к потере налоговых движений:
НалоговыйУчетУСН, УчетРасходовУСН и др.). Внутри этих модулей разработчики фирмы «1С» прописывают жесткие проверки типов документов. Программа ищет конкретные типы данных, например: Если ТипЗнч(ДокументСсылка) = Тип("ДокументСсылка.РеализацияТоваровУслуг"). Новый документ с типом ДокументСсылка.ТоварныйЧек в этот алгоритм не попадает, и расчет по нему обрывается.В результате мы получаем ситуацию: товар физически со склада списывается (так как работают стандартные механизмы регистра ТоварыНаСкладах или проводки по счету 41), но налоговый регистр Расходы при УСН остается нетронутым. Расходы «зависают» на остатках налогового учета как нереализованные.
Самый лучший способ исправить ситуацию — это отказаться от использования самописного документа в качестве регистратора движений и вернуться на стандартные рельсы программы 1С. Это убережет базу данных от ошибок при последующих обновлениях конфигурации.
Давайте разберем, как организовать этот процесс правильно:
РеализацияТоваровУслуг (РТиУ). Чтобы покупатели получали привычный товарный чек, программисту достаточно написать внешнюю печатную форму «Товарный чек» и подключить её к документу РТиУ через механизм дополнительных отчетов и обработок. Конфигурация при этом остается полностью типовой, обновления проходят в штатном режиме, а налоговый учет УСН работает безупречно.ОтчетОРозничныхПродажах. Продажи в течение дня могут фиксироваться чеками (если подключено кассовое оборудование), а в конце смены они автоматически сворачиваются в один общий отчет. Этот документ штатно делает все списания по складу, отражает доход в КУДиР (на основании кассовой выручки) и закрывает расходы по реализованным товарам.Если руководство компании настаивает на том, чтобы продажи оформлялись именно созданным документом Товарный чек, программисту придется дописать логику проведения этого документа по налоговым регистрам. Рассмотрим, что именно необходимо сделать в конфигураторе.
Во-первых, необходимо убедиться, что у документа Товарный чек в свойствах на вкладке «Движения» отмечены галочками следующие регистры:
Расходы при УСН (регистр накопления);Книга учета доходов и расходов (раздел I) (регистр накопления);Расшифровка КУДиР (при наличии в вашей редакции).Во-вторых, нужно заглянуть в модуль объекта документа. В процедуре проведения (обычно это ОбработкаПроведения) должен осуществляться вызов специализированных процедур регламентированного налогового учета. Давайте посмотрим на пример того, как должен выглядеть вызов формирования движений по УСН:
Процедура ОбработкаПроведения(Отказ, РежимПроведения)
// 1. Стандартные движения по складскому учету и взаиморасчетам
// ... (код списания остатков по счету 41 и формирования проводок) ...
// 2. Формирование движений по налоговому учету УСН
Если Не Отказ Тогда
// Подготавливаем таблицы движений для налогового учета
НалоговыйУчетУСН.СформироватьДвиженияУСН(ЭтотОбъект, Отказ);
КонецЕсли;
КонецПроцедуры
Обратите внимание на процедуру ДвиженияПоРегистрамУСНРегл (или аналогичную в вашей версии БП, например, в редакции 2.0 это может быть процедура в общем модуле налогового учета). Нам необходимо убедиться, что новый документ включен в логику работы общего модуля. Откройте общий модуль, отвечающий за расчет УСН (например, НалоговыйУчетУСН), найдите функции, определяющие типы документов-регистраторов УСН, и добавьте туда ваш документ:
// Пример изменения логики общего модуля (упрощенный вид)
Если ТипЗнч(ДокументСсылка) = Тип("ДокументСсылка.РеализацияТоваровУслуг")
Или ТипЗнч(ДокументСсылка) = Тип("ДокументСсылка.ТоварныйЧек") Тогда
// Выполнить алгоритм распределения расходов УСН
КонецЕсли;
Важное предупреждение: Любое изменение общего модуля типовой конфигурации делает базу данных «нетиповой» (снимает с поддержки). Это существенно усложнит процесс последующих обновлений программы. Настоятельно рекомендуется использовать механизм расширений конфигурации (если позволяет версия платформы 8.3) для перехвата проведения и добавления движений без изменения основной конфигурации.
Предположим, мы исправили проведение документа на будущее время (перешли на стандартные документы или доработали код). Но что делать с прошлыми периодами, когда товарные чеки уже проведены, товары списаны, а расходы в КУДиР за прошлый год так и не попали?
Давайте рассмотрим два практических пути исправления исторических данных:
Это самый безопасный бухгалтерский метод, не требующий программирования и перепроведения документов прошлого периода (что особенно важно, если период уже закрыт и отчетность сдана).
Если документов за прошлый период очень много, ручной ввод в КУДиР невозможен физически. В этом случае программисту нужно написать разовую обработку, которая выполнит одно из следующих действий:
Товарный чек за период, создает на их основании аналогичные стандартные документы Реализация товаров и услуг с сохранением всех табличных частей, цен, договоров и контрагентов. После этого старые документы Товарный чек помечаются на удаление (или просто делаются непроведенными), а новые документы РТиУ проводятся. После группового перепроведения документов и восстановления последовательности расчетов расходы автоматически распределятся и попадут в КУДиР.Товарный чек, рассчитывает себестоимость списанных товаров и программно записывает недостающие движения напрямую в регистры Расходы при УСН и Книга учета доходов и расходов (раздел I) с установкой свойства записи Активность = Истина.Мы проанализировали проблему непопадания расходов по УСН в КУДиР при использовании кастомных документов реализации в «1С:Бухгалтерии». Подводя итоги, дадим несколько ключевых рекомендаций:
НалоговыйУчетУСН.