Как добавить ставку НДС 5% в конфигурацию Управление торговлей 10.3: полное руководство

Программист 1С v8.3 (Обычные формы) 1С:Управление торговлей Налоговый учет Торговля и дистрибуция
← На главную

С 1 января 2025 года вступают в силу значительные изменения налогового законодательства, согласно которым плательщики на УСН с доходом более 60 миллионов рублей становятся плательщиками НДС. Для многих компаний, работающих на старых, но стабильных версиях 1С:Управление торговлей 10.3, это создает серьезный технический вызов. Официальная поддержка конфигурации ограничена, поэтому комплексное обновление УТ 10.3 с поддержкой НДС 5% и 7% ложится на плечи технических специалистов. В этой статье мы подробно разберем, как реализовать этот функционал, не нарушив логику работы системы.

Анализ проблемы и выбор стратегии

Проанализируем ситуацию: многие пользователи ошибочно полагают, что достаточно просто заменить старую ставку 18% на новую 5% или добавить одно значение в перечисление. Однако УТ 10.3 — это сложная система, где НДС участвует не только в расчетах внутри документа, но и в формировании печатных форм, обмене с бухгалтерскими программами и, что самое важное, в передаче данных на контрольно-кассовую технику (ККТ). Рассмотрим пошагово, какие изменения необходимо внести для полноценной поддержки новых ставок.

Шаг 1: Модификация перечисления СтавкиНДС

Первым делом нам необходимо добавить новые значения в метаданные. Это фундамент, на котором будет строиться вся дальнейшая логика. Найдем в дереве конфигурации перечисление СтавкиНДС. Нам потребуется добавить следующие значения:

  1. НДС5 — для реализации товаров и услуг.
  2. НДС5_105 — расчетная ставка для оформления авансовых счетов-фактур.
  3. НДС7 и НДС7_107 — если ваша организация попадает под соответствующий порог выручки.

Важный момент: простого добавления недостаточно. Система должна понимать, какое числовое значение соответствует каждому элементу перечисления.

Шаг 2: Внесение изменений в программный код (Общие модули)

Разберем работу общего модуля УчетНДС. Именно здесь сосредоточена логика преобразования перечисления в число. Нам необходимо найти функцию, которая возвращает ставку числом (обычно это ПолучитьСтавкуНДСЧислом), и дополнить её. Рассмотрим пример кода, который необходимо внедрить:


Функция ПолучитьСтавкуНДСЧислом(СтавкаНДС) Экспорт
    Если СтавкаНДС = Перечисления.СтавкиНДС.НДС20 Тогда
        Возврат 20;
    ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС18 Тогда
        Возврат 18;
    ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС5 Тогда
        Возврат 5;
    ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС5_105 Тогда
        Возврат 5;
    ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС7 Тогда
        Возврат 7;
    // ... и так далее для остальных ставок
    КонецЕсли;
КонецФункции

Также проанализируем модуль РаботаСДиалогами. В нем часто прописаны фильтры для выбора ставок в формах документов. Если не добавить новые значения туда, пользователь просто не увидит ставку 5% в выпадающем списке документа "Реализация товаров и услуг".

Шаг 3: Настройка работы с торговым оборудованием

Это самый критический этап. Даже если 1С правильно посчитает сумму налога, кассовый аппарат может выдать ошибку или пробить чек с неверным налогом. Выясним причину: драйвер ККТ (например, АТОЛ или Штрих-М) сопоставляет ставку из 1С с номером налоговой секции в настройках кассы.

Нам потребуется внести изменения в обработки обслуживания ККТ. Чтобы избежать ошибок формата "items[0].tax.type", рекомендуется использовать актуальную обработку обслуживания для АТОЛ под НДС 5% и 7%. В коде нужно прописать маппинг. Обычно для ставки 5% используется тег ФФД со значением налоговой группы 5, но это строго зависит от прошивки вашей кассы. Рассмотрим пример логики:


Если СтавкаНДС_1С = Перечисления.СтавкиНДС.НДС5 Тогда
    НалоговаяГруппаККТ = 5; // Значение согласно документации драйвера
ИначеЕсли СтавкаНДС_1С = Перечисления.СтавкиНДС.НДС7 Тогда
    НалоговаяГруппаККТ = 6;
КонецЕсли;

Внимание: перед запуском обязательно проверьте версию компоненты 1C:Печать чеков. Старые версии могут не поддерживать передачу новых ставок даже при корректном коде в 1С.

Шаг 4: Печатные формы (Счет-фактура и УПД)

Добавление ставки в перечисление не гарантирует её автоматическое появление в печатных формах. В УТ 10.3 макеты счетов-фактур часто содержат жесткую привязку к тексту. Для корректного отображения данных можно использовать внешнюю печатную форму Счет-фактура с изменениями 2025-2026 года или аналогичный УПД для УТ 10.3, которые поддерживают автоподбор ставок и работу с авансами.

Если вы правите формы вручную, выполните следующие действия:

  1. Откроем общие макеты или макеты конкретных документов (например, РеализацияТоваровУслуг).
  2. Проверим код в модуле документа, где формируется структура для печати.
  3. Убедимся, что для новых значений перечисления НДС5 в колонку "Ставка" попадает строка "5%", а не пустое значение.

Шаг 5: Особенности учета для нескольких организаций

Проанализируем ситуацию, когда в одной базе ведется учет по нескольким фирмам с разными режимами налогообложения (например, одна на ОСНО с 20%, а другая на УСН с 5%). Использование реквизита "Ставка НДС" в справочнике Номенклатура становится неудобным, так как для одного и того же товара ставка будет разной в зависимости от продавца.

В этом случае рекомендуется доработать механизм заполнения документов. При выборе организации в документе система должна автоматически пересчитывать ставку НДС в табличной части, игнорируя значение по умолчанию из карточки товара. Это можно реализовать через подписку на событие или в процедуре ПриИзмененииОрганизации.

Шаг 6: Обмен данными с Бухгалтерией предприятия

Если вы используете типовой обмен через Конвертацию данных, помните: правила обмена (XML) не знают о существовании ваших новых ставок. Рассмотрим риски: при выгрузке документа реализация со ставкой 5% в 1С:Бухгалтерию 3.0, программа-приемник либо выдаст ошибку, либо подставит ставку "Без НДС".

Чтобы этого избежать, необходимо отредактировать правила обмена в конфигурации "Конвертация данных", добавив соответствие (ПКС) для перечисления СтавкиНДС. Вы можете использовать готовое правило обмена для УТ10 и БП 3.0 со ставками НДС 5% и 7% или обновить типовые правила обмена для НДС 5, 7 и 22%. Нужно сопоставить ваше новое значение НДС5 со значением НДС5 в Бухгалтерии.

Резюме и рекомендации

Как мы видим, задача "просто добавить 5%" превращается в полноценный проект доработки системы. Для полноценной реализации необходимо:

Для тех, кто не готов к таким глубоким изменениям кода вручную, существуют так называемые "альтернативные ветки обновлений" — готовые сборки от сообщества разработчиков, которые включают в себя не только поддержку новых ставок НДС, но и работу с маркировкой "Честный знак" для старых версий УТ 10.3. Однако, какой бы путь вы ни выбрали, всегда делайте полную резервную копию базы перед внесением изменений в структуру данных.

← На главную