Электронный документооборот стал неотъемлемой частью работы бухгалтерии, а счёт-фактура в формате XML — обязательный элемент для взаимодействия с налоговыми органами и контрагентами. Однако даже опытные пользователи 1С:Предприятие 8.3 иногда сталкиваются с трудностями при выгрузке этого документа. Почему система выдаёт ошибку при экспорте? Как убедиться, что файл соответствует требованиям ФНС? И почему некоторые счета-фактуры просто «исчезают» из выгруженного XML?

В этой статье мы разберём все способы выгрузки счёта-фактуры в XML — от стандартного функционала до программных решений для нетиповых случаев. Вы узнаете, как избежать распространённых ошибок (например, код ошибки 2000000107), какие настройки влияют на структуру файла, и как проверить корректность экспорта без специализированных сервисов. Особое внимание уделим нюансам для 1С:Бухгалтерия 3.0 и 1С:Управление торговлей 11, где процесс может отличаться.

Если вы работаете с ЭДО (электронным документооборотом) или сдаёте отчётность через операторов (например, Контур.Диадок, СБИС), эта инструкция поможет сэкономить время на ручной правке файлов. А для программистов мы подготовили блок с кодом выгрузки через встроенный язык — его можно адаптировать под любые задачи интеграции.

Прежде чем переходить к инструкциям, проверьте:

  • 📌 Версию вашей конфигурации (актуальные обновления для работы с XML выходят регулярно).
  • 🔄 Права пользователя в — для выгрузки счёта-фактуры требуется роль с доступом к документообороту.
  • 📂 Папку для сохранения файла — иногда путь с кириллическими символами приводит к сбоям.
📊 Какую версию 1С вы используете для работы со счётами-фактурами?
1С:Бухгалтерия 8.3
1С:Управление торговлей 11
1С:ERP
1С:Комплексная автоматизация
Другая конфигурация

1. Стандартная выгрузка счёта-фактуры в XML через интерфейс 1С

Самый простой способ — использовать встроенные инструменты . Этот метод подходит для единичных документов и не требует знаний программирования. Рассмотрим процесс на примере 1С:Бухгалтерия 3.0 (в других конфигурациях шаги могут незначительно отличаться).

Откройте журнал Счета-фактуры выданные (или Полученные, если нужна выгрузка входящего документа). Найдите нужный документ и перейдите в его форму. Далее:

  1. Нажмите кнопку Ещё → Выгрузить → В файл XML (в некоторых версиях путь может быть Действия → Выгрузить в XML).
  2. В открывшемся окне укажите:
    • 📁 Папку для сохранения (лучше использовать путь без пробелов и кириллицы, например, C:\EDO_XML\).
    • 📄 Имя файла — по умолчанию система предлагает шаблон вида СФ_НомерДата.xml.
    • 🔧 Формат XML — выберите ФНС (5.01) для отчётности или Универсальный (4.30) для обмена с контрагентами.
  • Нажмите Сохранить и дождитесь подтверждения выгрузки.
  • Если документ содержит ошибки (например, не заполнены обязательные реквизиты), система выдаст предупреждение с указанием проблемы. В 1С:Бухгалтерия 3.0 при выгрузке счёта-фактуры с НДС 20% в XML автоматически проставляется код вида налога 01, даже если в документе указан другой — это особенность конфигурации, а не ошибка.

    Не заполнено поле "Покупатель" или "Продавец"|Отсутствует ИНН/КПП контрагента|Неверно указан код вида операции (например, 01 вместо 26)|Не указаны реквизиты грузоотправителя/грузополучателя (для товарных СФ)|Не сохранён документ перед выгрузкой

    -->

    2. Массовая выгрузка счетов-фактур: инструменты и ограничения

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

    Способ 1: Групповая обработка

    1. В журнале счётов-фактур выделите нужные документы (можно использовать фильтр по дате или контрагенту).
    2. Нажмите Ещё → Выгрузить выделенные в XML.
    3. Укажите папку и формат (аналогично одиночной выгрузке).
    4. Ограничение: в одной операции можно выгрузить не более 50 документов. При превышении лимита система разобьёт задачу на части или выдаст ошибку.

      Способ 2: Обработка "Выгрузка данных в XML"

      Этот инструмент доступен в Все функции → Стандартные → Выгрузка данных в XML. Он позволяет:

      • 📅 Выгружать документы за определённый период.
      • 🔍 Фильтровать по статусу (проводённые/непроводённые).
      • 📦 Создавать ZIP-архив с несколькими XML-файлами.

    Однако у этого метода есть нюанс: обработка не проверяет документы на корректность перед выгрузкой. Если в счёте-фактуре есть ошибки (например, неверный код валюты), они проявятся только при загрузке файла в систему контрагента или ФНС.

    💡

    Перед массовой выгрузкой запустите отчёт "Анализ счёта-фактуры" (Отчёты → Анализ счёта-фактуры). Он покажет документы с потенциальными ошибками, которые могут блокировать экспорт в XML.

    3. Выгрузка через ЭДО: когда XML формируется автоматически

    Если ваша компания подключена к электронному документообороту (ЭДО) через операторов (Такском, СБИС, Калуга Астрал и др.), процесс выгрузки счёта-фактуры в XML упрощается. Система сама преобразует документ в нужный формат при отправке контрагенту. Однако здесь есть свои подводные камни:

    • 🔗 Привязка к оператору: Не все ЭДО-операторы поддерживают последние версии форматов ФНС. Например, для работы с Формат 5.01 может потребоваться обновление модуля обмена.
    • Автоматическая подпись: Если в настройках ЭДО не указан сертификат ЭЦП, счёт-фактура выгрузится в XML, но не будет подписан. Такой файл не примут ни ФНС, ни контрагенты.
    • 📡 Ограничения по размеру: Некоторые операторы не принимают XML-файлы больше 10 МБ. Для крупных счётов-фактур (с тысячами строк) потребуется разбивка.
    • Чтобы проверить, какой именно XML формирует ваш оператор ЭДО:

      1. Отправьте тестовый счёт-фактуру через ЭДО.
      2. В журнале документов ЭДО найдите отправленный файл и скачайте его (обычно есть кнопка Скачать XML).
      3. Откройте файл в блокноте или специализированной программе (например, XML Notepad) и сравните структуру с требованиями ФНС.
    Что делать, если ЭДО-оператор не принимает XML?

    Если оператор возвращает ошибку вида "Некорректная структура XML", проверьте:

    1. Версию формата (должна совпадать с поддерживаемой оператором).

    2. Кодировку файла (должна быть UTF-8).

    3. Наличие обязательных тегов (например, <СвСчФакт> или <СвПрод>).

    Если проблема остаётся, запросите у оператора шаблон корректного XML и сравните его со своим файлом через инструменты вроде Beyond Compare.

    4. Программная выгрузка: код на 1С для гибкой настройки XML

    Стандартные инструменты не всегда покрывают специфические требования бизнеса. Например, может потребоваться:

    • 🔄 Выгружать XML с дополнительными реквизитами (например, данными о транспортировке).
    • 📌 Формировать файлы с уникальными именами по шаблону компании.
    • 🤖 Автоматизировать выгрузку по расписанию (например, ежедневно в 23:00).

    Для таких задач используется встроенный язык . Ниже приведён универсальный код для выгрузки счёта-фактуры в XML с возможностью кастомизации:

    Процедура ВыгрузитьСчетФактуруВXML(СсылкаНаДокумент, ПутьКФайлу)
    
    

    // Создаём объект записи XML

    ЗаписьXML = Новый ЗаписьXML;

    ЗаписьXML.ОткрытьФайл(ПутьКФайлу, "UTF-8");

    // Формируем заголовок XML

    ЗаписьXML.ЗаписатьОбъявлениеXML();

    ЗаписьXML.ЗаписатьНачалоЭлемента("Файл");

    ЗаписьXML.ЗаписатьАтрибут("ИдФайл", СсылкаНаДокумент.УникальныйИдентификатор());

    ЗаписьXML.ЗаписатьАтрибут("ВерсФорм", "5.01"); // Версия формата ФНС

    // Получаем данные счёта-фактуры

    Документ = СсылкаНаДокумент.ПолучитьОбъект();

    ЗаписьXML.ЗаписатьНачалоЭлемента("СвСчФакт");

    ЗаписьXML.ЗаписатьАтрибут("НомерСчФ", Документ.Номер);

    ЗаписьXML.ЗаписатьАтрибут("ДатаСчФ", Формат(Документ.Дата, "ДФ=yyyy-MM-dd"));

    // Добавляем реквизиты продавца и покупателя

    ЗаписьXML.ЗаписатьНачалоЭлемента("СвПрод");

    ЗаписьXML.ЗаписатьЭлемент("ИННЮЛ", Документ.Организация.ИНН);

    ЗаписьXML.ЗаписатьЭлемент("НаимОрг", Документ.Организация.Наименование);

    ЗаписьXML.ЗаписатьКонецЭлемента(); // СвПрод

    // Аналогично добавляем остальные разделы (СвПокуп, ТаблСчФакт и др.)

    // ...

    ЗаписьXML.ЗаписатьКонецЭлемента(); // СвСчФакт

    ЗаписьXML.ЗаписатьКонецЭлемента(); // Файл

    ЗаписьXML.Закрыть();

    КонецПроцедуры

    Этот код — база, которую можно расширять. Например, для добавления дополнительных реквизитов (например, данных о транспортировке) используйте метод ЗаписьXML.ЗаписатьНачалоЭлемента("ДопРеквизит") внутри цикла по строкам счёта-фактуры.

    Где разместить код?

    • Для разовой выгрузки — в Отладчике 1С (меню Сервис → Отладчик).
    • Для постоянного использования — создайте внешнюю обработку и подключите её в Дополнительные отчёты и обработки.
    • 💡

      При программной выгрузке всегда проверяйте итоговый XML через валидаторы (например, XML Validator от ФНС). Даже небольшая ошибка в коде (например, пропущенный тег) сделает файл нечитаемым для контрагентов.

      5. Типичные ошибки при выгрузке XML и как их исправить

      Ошибки при экспорте счёта-фактуры в XML делятся на две категории:

      1. Технические — связанные с настройками или системой (например, недостаточно прав).
      2. Логические — ошибки в данных документа (неверный ИНН, отсутствует код операции).

      Рассмотрим самые распространённые проблемы и их решения:

      Код ошибки / Сообщение Причина Решение
      2000000107
      "Недопустимое значение реквизита"
      Не заполнен обязательный реквизит (например, Код вида операции или ИНН контрагента). Откройте счёт-фактуру и проверьте заполнение полей. Для операции "Реализация" код должен быть 01.
      "Неверная структура XML" Файл повреждён или сформирован с ошибками (например, не закрыт тег). Используйте валидатор XML (например, xmlvalidation.com) для проверки структуры.
      Ошибка записи файла Нет прав на запись в указанную папку или путь содержит недопустимые символы. Укажите другой путь (например, C:\Temp\) или запустите от имени администратора.
      "Не поддерживаемая версия формата" Выбран устаревший формат XML (например, 4.20 вместо 5.01). Обновите конфигурацию или выберите актуальный формат в настройках выгрузки.

      Если ошибка не указана в таблице, проверьте журнал регистрации 1С (Администрирование → Журнал регистрации). Часто там содержится подробное описание проблемы, например: "Не найден шаблон для выгрузки счёта-фактуры в формат ФНС 5.01". Это означает, что в конфигурации отсутствует необходимый макет — его нужно добавить через Конфигуратор.

      💡

      Для ускорения поиска ошибок используйте фильтр в журнале регистрации по ключевым словам: "XML", "Счёт-фактура", "ЭДО".

      6. Проверка корректности XML: инструменты и критерии

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

      1. Соответствие формату ФНС

      • 📋 Проверьте версию формата в теге <Файл ВерсФорм="5.01">.
      • 🔍 Убедитесь, что все обязательные теги присутствуют (список см. в приказе ФНС №ЕД-7-15/452@).

      2. Целостность данных

      • 🔢 Сверьте суммы в XML с оригинальным счётом-фактурой (особенно НДС и итог).
      • 📌 Проверьте корректность ИНН, КПП и наименований организаций.

      Инструменты для проверки:

      Инструмент Для чего подходит Ссылка
      XML Notepad Просмотр и редактирование структуры XML Скачать
      XML Validator (ФНС) Проверка соответствия формату 5.01 Сервис ФНС
      Oxygen XML Editor Профессиональная работа с XML (платно) Официальный сайт

      Если вы работаете с ЭДО, некоторые операторы (например, Контур.Диадок) имеют встроенные валидаторы. Загрузите файл в личный кабинет ЭДО — система автоматически проверит его на ошибки перед отправкой.

      Что делать, если XML не проходит валидацию?

      1. Сравните свой файл с примером корректного XML от ФНС.

      2. Проверьте кодировку — она должна быть UTF-8 это настраивается при выгрузке).

      3. Удалите лишние пробелы или переносы строк в тегах (иногда они ломают структуру).

      4. Если ошибка в данных (например, неверный ИНН), исправьте её в оригинальном счёте-фактуре и выгрузите XML заново.

      7. Альтернативные способы выгрузки: когда стандартные методы не работают

      Если ни один из описанных способов не подходит (например, у вас устаревшая версия или специфические требования к формату), рассмотрите альтернативные варианты:

      1. Выгрузка через внешние обработки

      На сайте Инфостарт и ITS есть готовые обработки для выгрузки счётов-фактур в XML, включая:

      • 📤 Выгрузку с дополнительными реквизитами (например, данными о грузе).
      • 🔄 Конвертацию между форматами (например, из 4.30 в 5.01).
      • 📂 Пакетную выгрузку с архивацией.

      2. Интеграция с внешними системами

      Если вам нужно передавать счета-фактуры в ERP-систему или CRM, используйте:

      • 🔌 REST API: Начиная с 1С:Предприятие 8.3.18, есть встроенные механизмы для обмена данными по HTTP.
      • 📡 Web-сервисы: Можно настроить автоматическую отправку XML на внешний сервер.

      3. Ручное формирование XML

      В крайнем случае (например, для тестирования) можно создать XML-файл вручную в блокноте, следуя структуре ФНС. Однако этот метод требует глубокого понимания формата и не рекомендуется для регулярного использования.

      💡

      При использовании сторонних обработок всегда проверяйте их на тестовой базе . Некоторые решения могут конфликтовать с обновлениями конфигурации или содержать уязвимости.

      FAQ: Частые вопросы о выгрузке счёта-фактуры в XML

      Можно ли выгрузить в XML счёт-фактуру с исправлениями?

      Да, но есть нюансы:

      • В 1С:Бухгалтерия 3.0
      • исправленный счёт-фактура выгружается как отдельный документ с пометкой Исправление в теге <СвСчФакт>.
      • В XML будут включены данные из оригинального счёта-фактуры и информация об исправлениях (даты, номера, суммы изменений).
      • Если исправление затрагивает реквизиты контрагента (например, ИНН), проверьте, чтобы в XML были актуальные данные.
      Почему в выгруженном XML нет строк с товарами?

      Это типичная проблема, если:

      • В счёте-фактуре не заполнена табличная часть (проверьте, что добавлены строки с номенклатурой).
      • Используется неверный шаблон выгрузки (например, для авансового СФ вместо товарного).
      • В настройках отключён показ табличной части в XML (проверьте параметры выгрузки).

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

      Как выгрузить XML счёт-фактуры за прошлый год?

      Процесс не отличается от выгрузки текущих документов, но есть риски:

      • Если конфигурация обновлялась, старые счета-фактуры могут не соответствовать актуальному формату XML.
      • В документах за прошлые периоды могли быть не заполнены реквизиты, ставшие обязательными позже (например, код вида товара).

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

      Можно ли выгрузить XML счёт-фактуры без подписи?

      Технически — да, но такой файл не имеет юридической силы. Без ЭЦП XML счёт-фактуры:

      • ❌ Не будет принят ФНС для вычета НДС.
      • ❌ Контрагенты не смогут его загрузить в свою систему (большинство ЭДО-операторов требуют подпись).
      • ✅ Может использоваться только для внутренних нужд (например, тестирования обмена данными).

      Чтобы подписать XML, используйте КриптоПро CSP или встроенные средства ЭДО-оператора.

      Как автоматизировать выгрузку XML по расписанию?

      Для этого подойдут:

      • 📅 Регламентные задания в : Настройте задание на выгрузку XML с нужной периодичностью (ежедневно, еженедельно).
      • 🤖 Скрипты на 1С: Напишите обработку, которая будет выгружать XML и отправлять его по email или FTP.
      • 🔌 Внешние сервисы: Например, 1С:Линк или RPA-решения (вроде UiPath) для автоматизации рутинных задач.

      Пример кода для регламентного задания:

      Процедура ВыгрузитьСчетаФактурыПоРасписанию()
      
      

      ПапкаВыгрузки = "C:\EDO_XML\";

      ДатаНачала = ТекущаяДата() - 1; // Выгружаем документы за вчера

      ДатаОкончания = ТекущаяДата();

      Запрос = Новый Запрос;

      Запрос.Текст =

      "ВЫБРАТЬ Ссылка

      |ИЗ Документ.СчетФактураВыданный

      |ГДЕ Дата МЕЖДУ &ДатаНачала И &ДатаОкончания";

      Запрос.УстановитьПараметр("ДатаНачала", ДатаНачала);

      Запрос.УстановитьПараметр("ДатаОкончания", ДатаОкончания);

      Результат = Запрос.Выполнить();

      Выборка = Результат.Выбрать();

      Пока Выборка.Следующий() Цикл

      ПутьКФайлу = ПапкаВыгрузки + "СФ_" + Формат(Выборка.Ссылка.Номер, "ЧГ=0") + ".xml";

      ВыгрузитьСчетФактуруВXML(Выборка.Ссылка, ПутьКФайлу);

      КонецЦикла;

      КонецПроцедуры

      Если ваш вопрос не освещён в статье, уточните детали в технической поддержке или на профильных форумах (например, Форум 1С). При описании проблемы всегда указывайте:

      • 📌 Версию конфигурации и платформы .
      • 🔧 Способ выгрузки (через интерфейс, ЭДО, программно).
      • 📄 Текст ошибки (если есть).
      💡

      Сохраните эту статью в закладки — она пригодится при очередном обновлении формата XML или смене ЭДО-оператора.