С переходом на Единый налоговый счет (ЕНС) логика признания расходов при упрощенной системе налогообложения (УСН) в программах 1С претерпела значительные изменения. Многие бухгалтеры сталкиваются с ситуацией, когда налог фактически оплачен (деньги перечислены на ЕНС) и уведомление подано в первом квартале, но в Книгу учета доходов и расходов (КУДиР) эта сумма попадает только во втором квартале (например, в мае).
В этой статье мы подробно разберем, почему так происходит с точки зрения методологии 1С, рассмотрим техническую реализацию механизма "простого учета" ЕНС и проанализируем способы, с помощью которых программисты пытаются изменить это поведение, вмешиваясь в типовой код конфигурации.
Рассмотрим типичную ситуацию. Организация на УСН "Доходы минус расходы" оплачивает транспортный налог или страховые взносы в конце марта (например, 29.03). Бухгалтер выполняет следующие действия:
Ожидание бухгалтера: так как деньги ушли и налог начислен в 1 квартале, расход должен уменьшить налогооблагаемую базу УСН за 1 квартал.
Реальность в 1С: проводка переноса задолженности Дт 68.07 Кт 68.90 формируется датой установленного законом срока уплаты (например, 02.05), и расход в НУ признается именно этой датой.
Начиная с релизов 2024 года, разработчики 1С внедрили механизм упрощенного учета ЕНС. Это было сделано для отказа от сложных регистров накопления, которые вызывали множество ошибок в 2023 году. Теперь учет строится преимущественно на бухгалтерских проводках.
Ключевым моментом является функция в общем модуле, определяющая дату начала использования этого режима. Давайте посмотрим, как это реализовано в коде.
Функция НачалоПростогоУчета() Экспорт
// С этой даты 1С переходит на упрощенную схему проводок ЕНС
Возврат '2024-01-01';
КонецФункции
При включенном "простом учете" программа автоматически формирует проводки по переносу задолженности на счет 68.90 в документах начисления (для зарплаты) или в закрытии месяца (для иных налогов) строго по срокам уплаты, установленным в Налоговом Кодексе РФ.
Логика 1С такова: деньги на ЕНС (счет 68.90) являются авансом ("электронным кошельком") налогоплательщика до момента наступления срока уплаты. Фактическое погашение обязательства перед бюджетом (и, следовательно, расход для УСН) происходит в момент, когда ФНС списывает средства. А списывает она их в срок уплаты.
Если методология 1С категорически не устраивает учетную политику предприятия и требуется видеть проводки по ЕНС (и расходы УСН) датой фактических документов, а не сроками уплаты, существуют способы модификации кода.
Важное предупреждение: Описанные ниже действия требуют снятия конфигурации с поддержки или включения возможности изменения. Это может усложнить дальнейшие обновления и привести к ошибкам в учете ЕНС при изменении законодательства. Используйте эти методы только при полном понимании рисков.
Чтобы проводки формировались так, как мы хотим, сначала нужно отключить типовой механизм, который формирует их "будущим числом" (сроком уплаты). Для этого можно "обмануть" систему, сдвинув дату начала простого учета в будущее.
В общем модуле УчетЗарплаты или аналогичном модуле, отвечающем за ЕНС (например, ЕдиныйНалоговыйСчет), необходимо найти проверку даты.
Пример кода, отвечающего за проводки страховых взносов в документе Начисление зарплаты:
// Было в типовом коде (примерно):
Если Реквизиты.Период >= ЕдиныйНалоговыйСчет.НачалоПростогоУчета() Тогда
// Формирование проводок Дт 69.09 Кт 68.90 датой срока уплаты
КонецЕсли;
Чтобы отключить это поведение, изменим условие на заведомо невыполнимое в текущем периоде:
// Стало после модификации:
Если Реквизиты.Период >= '2029-01-01' Тогда // Сдвигаем дату на 5 лет вперед
// Код не выполнится, типовые проводки на ЕНС не создадутся
КонецЕсли;
Аналогичные правки потребуются для НДФЛ в процедуре формирования движений документа Сведения об удержанном НДФЛ. В модуле УчетЗарплаты (процедура СформироватьДвиженияПоУдержанномуНДФЛ) также получаем дату начала учета и подменяем ее.
Для имущественных налогов (транспортный, земельный) и налога при УСН проводки на счет 68.90 формируются регламентной операцией. Нам нужно найти модуль объекта документа РегламентнаяОперация или общий модуль, отвечающий за расчет налогов.
В процедуре НачислениеНалоговНаЕНС находим вызов метода:
// ЕдиныйНалоговыйСчет.НачислитьНалогиНаЕНС(ПараметрыПроведения.ТаблицаРеквизиты, Движения, Отказ);
Эту строку необходимо закомментировать, чтобы регламентная операция перестала создавать записи в регистре бухгалтерии по переносу задолженности на счет 68.90 датой срока уплаты.
После того как мы отключили типовые механизмы, задолженность останется на счетах 69.xx, 68.01, 68.07 и не попадет на 68.90. Нам нужно создать механизм, который будет переносить эти суммы на ЕНС в нужный нам момент — например, в момент подачи уведомления или уплаты.
Для этого можно использовать обработку проведения документа Сведения об уплате налогов (если вы используете этот документ) или добавить логику в документ Уведомление об исчисленных суммах налогов.
В модуле объекта выбранного документа в процедуре ОбработкаПроведения добавим вызов функции формирования проводок. Пример концептуального кода:
// Вставляем после стандартных движений
НалоговыйУчетУСН.СформироватьДвиженияУСН(ЭтотОбъект, ПараметрыПроведения, Ложь);
// Принудительно формируем бухгалтерские проводки Дт 68.хх Кт 68.90
ЕдиныйНалоговыйСчет.СформироватьПроводкиНачислениеНалогов(
ПараметрыПроведения.Реквизиты,
ПараметрыПроведения.УведомлениеОбИсчисленныхСуммахНалогов, // Или данные текущего документа
Движения,
Отказ);
При таком подходе проводка Дт 68.хх Кт 68.90 сформируется датой документа (например, 29 марта), что приведет к уменьшению сальдо на ЕНС и признанию расхода в НУ (при наличии оплаты) именно в первом квартале.
Почему разработчики 1С сделали именно так, как сделали? Дело в интерпретации Налогового кодекса. Согласно текущим правилам, положительное сальдо ЕНС (возникшее после перечисления денег) не является уплаченным налогом. Это просто деньги налогоплательщика. Налог считается уплаченным только в момент зачета ЕНС в счет конкретного обязательства.
Автоматический зачет происходит только при наступлении срока уплаты. Досрочный зачет возможен только по специальному заявлению о распоряжении путем зачета (КНД 1150057).
Поэтому типовое поведение 1С:БП 3.0 (проводка 02.05) является методологически безопасным вариантом, защищающим пользователя от споров с ФНС по поводу преждевременного признания расходов. Ручная правка дат или кода переносит ответственность за методологию полностью на главного бухгалтера.
Резюмируем:
НачалоПростогоУчета и закомментировав вызовы процедур начисления на ЕНС в типовых документах, но это делает конфигурацию нетиповой.