Как выгрузить книгу продаж в XML-формате со ставкой НДС 20% за 2019 год?

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

Переход на ставку НДС 20% с 1 января 2019 года стал серьезным испытанием для пользователей и разработчиков систем на базе 1С, особенно для тех, кто использует старые или кастомизированные конфигурации (такие как УТ 10.3, КА 1.1 или УПП 1.3). Основная сложность заключается не только в изменении самой ставки в справочниках, но и в необходимости формирования корректного электронного документа в формате XML, который будет принят контролирующими органами.

В рамках данной статьи мы разберем, как получить эталонный образец выгрузки, какие технические требования предъявляются к формату 5.06 и как адаптировать выгрузку, если типовые механизмы программы дают сбой.

Способ 1: Использование демонстрационных баз актуальных релизов

Рассмотрим ситуацию, когда нам необходимо быстро понять, как должен выглядеть корректный XML-файл. Самый надежный способ — это использование демо-базы последнего релиза от компании 1С. В таких базах уже предзаполнены данные по различным хозяйственным операциям, включая отгрузки со ставкой 20%.

Для реализации этого метода выполним следующие шаги:

  1. Зайдем на портал поддержки пользователей 1С и скачаем актуальный дистрибутив или обновление конфигурации (например, Бухгалтерия предприятия 3.0).
  2. Установим демонстрационную базу.
  3. Перейдем в раздел Отчеты — НДС — Книга продаж.
  4. Сформируем отчет за 1 квартал 2019 года или более поздний период.
  5. Нажмем кнопку Выгрузить и сохраним XML-файл на диск.

Проанализируем полученный файл. Он послужит идеальным шаблоном для сверки структуры тегов и атрибутов. Если нет возможности установить базу локально, можно воспользоваться онлайн-демо-базами, которые предоставляет фирма 1С или ее партнеры. Это позволит сэкономить время на развертывании инфраструктуры.

Способ 2: Технические особенности формата 5.06 и ручная правка XML

Если ваша учетная система (например, сильно доработанная УТ 10.2) не поддерживает автоматическую выгрузку новой ставки, нам придется разобраться в структуре XML-файла. С 2019 года актуальным стал формат 5.06, заменивший предыдущую версию 5.04.

Разберем по шагам ключевые узлы, на которые стоит обратить внимание при формировании или ручной корректировке файла:

Проанализируем пример структуры узла для одной строки книги продаж со ставкой 20%:


<КнПродСтр НомПор="1" НомСчФ="123" ДатаСчФ="15.02.2019">
    <Продавец>
        <ИдПрод>
            <ЮЛ ИННЮЛ="7700000000" КПП="770101001" />
        </ИдПрод>
    </Продавец>
    <СведКнПрод СтоимПродажВс="1200.00">
        <СумНДС20>200.00</СумНДС20>
        <СтоимПродаж20>1000.00</СтоимПродаж20>
    </СведКнПрод>
</КнПродСтр>

Важно помнить: если вы правите файл вручную в текстовом редакторе (например, Notepad++), необходимо следить за тем, чтобы итоговые суммы в конце файла (узел ВсегоКнПрод) совпадали с арифметической суммой всех строк. Налоговая проверка (XSD-валидация) моментально выявит расхождения.

Способ 3: Модификация кода выгрузки в старых конфигурациях

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

Рассмотрим пример логики, которую необходимо внедрить в обработку выгрузки. Нам нужно сопоставить внутренние значения 1С с кодами для XML. Проанализируем фрагмент кода, который отвечает за определение ставки:


Если СтрокаКниги.СтавкаНДС = Перечисления.СтавкиНДС.НДС20 Тогда
    УзелСведений.УстановитьАтрибут("НалСт", "20");
    УзелСведений.ЗаписатьТекстПодчиненногоУзла("СумНДС20", Формат(СтрокаКниги.СуммаНДС, "ЧГ=0; ЧРД=."));
    УзелСведений.ЗаписатьТекстПодчиненногоУзла("СтоимПродаж20", Формат(СтрокаКниги.СуммаБезНДС, "ЧГ=0; ЧРД=."));
ИначеЕсли СтрокаКниги.СтавкаНДС = Перечисления.СтавкиНДС.НДС18 Тогда
    // Обработка старой ставки для переходных периодов
    УзелСведений.УстановитьАтрибут("НалСт", "18");
КонецЕсли;

При использовании данного подхода мы обеспечиваем поддержку "мультиставочности". Это критически важно, так как в 2019 году в одной книге продаж могли одновременно присутствовать операции как со ставкой 20%, так и со ставкой 18% (например, при возвратах товаров, отгруженных в 2018 году).

Способ 4: Проверка файла через специализированное ПО

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

  1. Программа "Тестер": Бесплатная утилита от ФНС, которая проверяет файл на соответствие XSD-схеме. Если в файле указан формат 5.06, а структура соответствует 5.04, программа выдаст подробный лог ошибок.
  2. Налогоплательщик ЮЛ: Позволяет импортировать файл книги продаж. Если импорт прошел успешно и суммы распределились по верным колонкам (в графы для 20%), значит, выгрузка сформирована корректно.
  3. Встроенные проверки операторов ЭДО: Перед отправкой отчетности через СБИС, Контур или 1С-Отчетность всегда запускается автоматический контроль.

Подведем итоги: для успешной выгрузки книги продаж со ставкой 20% необходимо убедиться в использовании формата 5.06, проверить наличие узлов СумНДС20 и СтоимПродаж20, а также корректно заполнить атрибут НалСт значением 20. В случае использования устаревших конфигураций оптимальным решением будет адаптация кода выгрузки на основе структуры, подсмотренной в актуальных демонстрационных базах 1С.

← На главную