1. Главная
  2. Счёт-фактура в XML
  3. Счёт-фактура в ЭДО: формат XML, как выглядит и как отправить

Счёт-фактура в ЭДО: формат XML, как выглядит и как отправить

Как устроен счёт-фактура в ЭДО: формат XML 5.03, пример файла с разбором, как отправить и подписать через оператора, сроки выставления и частые ошибки.

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

Почему счёт-фактуру отправляют в XML

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

Формат электронного счёта-фактуры — это XML. Сейчас действует версия 5.03, утверждённая приказом ФНС России от 19.12.2023 № ЕД-7-26/970@. Её и ждут операторы ЭДО: версия записывается в атрибуте ВерсФорм корневого элемента.

Почему именно XML:

  • Машиночитаемость. Учётная система покупателя загружает документ автоматически, без ручного ввода.
  • Проверяемость. Файл можно проверить по XSD-схеме ФНС: обязательные поля, типы данных, допустимые значения.
  • Единый формат для всех. Один и тот же файл понимают Диадок, СБИС, ЭДО Лайт, 1С и любые другие системы.

По формату счёт-фактура в XML для ЭДО — это тот же УПД, только с функцией СЧФ (если нужен только счёт-фактура) или СЧФДОП (если счёт-фактура совмещён с накладной). Как получить такой электронный счёт-фактура в XML из обычной таблицы, мы рассказали на отдельной странице.

Как выглядит файл

Если открыть электронный счёт-фактуру в текстовом редакторе, вы увидите дерево элементов с русскими названиями. Вот упрощённый скелет документа:

<?xml version="1.0" encoding="windows-1251"?>
<Файл ИдФайл="ON_NSCHFDOPPR_2BM-..._2BE-..._20261019_..." ВерсФорм="5.03" ВерсПрог="...">
  <Документ КНД="1115131" Функция="СЧФ" ДатаИнфПр="..." ВремИнфПр="..." ...>
    <СвСчФакт НомерДок="341" ДатаДок="...">
      <СвПрод> ... </СвПрод>
      <ГрузОт> ... </ГрузОт>
      <ГрузПолуч> ... </ГрузПолуч>
      <СвПокуп> ... </СвПокуп>
    </СвСчФакт>
    <ТаблСчФакт>
      <СведТов НомСтр="1" ...>
        <ДопСведТов ПрТовРаб="1" АртикулТов="NB-X15" КодТов="000123" ГТИН="04601234567893"/>
      </СведТов>
      <ВсегоОпл ...> ... </ВсегоОпл>
    </ТаблСчФакт>
    <Подписант> ... </Подписант>
  </Документ>
</Файл>

Разберём главное.

ЭлементЧто в нём
Файлкорневой элемент: ИдФайл (он же имя файла), версия формата 5.03, версия программы
Документкод формы КНД 1115131 (титул продавца), функция (СЧФ, СЧФДОП, ДОП), дата и время формирования
СвСчФактномер и дата счёта-фактуры, продавец, грузоотправитель, грузополучатель, покупатель
ТаблСчФактстроки товаров (СведТов с номером строки, количеством, ценой, НДС) и итоги ВсегоОпл
СвПродПерсведения о передаче товара; нужны, когда документ выполняет роль накладной
Подписанткто подписывает документ со стороны продавца

Ещё две детали, которые важны на практике:

  • Кодировка windows-1251. Она указана в первой строке файла. Если сохранить документ в UTF-8, многие системы покажут его нечитаемым.
  • Имя файла равно ИдФайл. Формат имени: ON_NSCHFDOPPR_<получатель>_<отправитель>_<ГГГГММДД>_<GUID>_N2_N3_N4_N5_N6_N7. Последние флаги — признаки прослеживаемости, маркировки, алкоголя, табака и нефтепродуктов. Изменили имя — получили ошибку «Имя файла не соответствует ИдФайл».

В веб-кабинете оператора ЭДО вы этого XML не увидите: система покажет привычную печатную форму. Но проверяется и подписывается именно XML.

Как отправить через ЭДО

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

Из учётной системы. Если 1С или другая программа подключена к ЭДО, счёт-фактура уходит из карточки документа. Если вам нужен сам файл, читайте, как выгрузить счёт-фактуру в XML из 1С.

Загрузкой готового файла. Этот путь подходит, когда учётной системы нет или она не подключена к оператору.

  1. Подготовьте XML: выгрузите из программы или соберите из таблицы Excel.
  2. Войдите в веб-кабинет оператора ЭДО.
  3. Найдите раздел создания или загрузки документа, кнопку вроде «Загрузить».
  4. Выберите файл. Система распознает его как счёт-фактуру или УПД и покажет печатную форму.
  5. Проверьте получателя: он определяется по ID участника ЭДО в ИдФайл.
  6. Подпишите и отправьте.

Подробная инструкция по каждому оператору — в статье о том, как загрузить УПД XML в Диадок, СБИС и ЭДО Лайт.

Если вы и контрагент работаете у разных операторов, документ пройдёт через роуминг. Его обычно подключают по заявке в одном из кабинетов.

Подпись и сроки

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

Что делает покупатель. По счёту-фактуре с функцией СЧФ покупатель подтверждает получение служебным документом через оператора. По УПД с функцией СЧФДОП он ещё и подписывает титул покупателя (КНД 1115132): подтверждает, что товар принят.

Сроки. Счёт-фактуру выставляют не позднее пяти календарных дней со дня отгрузки, передачи работ или услуг либо получения предоплаты (п. 3 ст. 168 НК РФ). Для электронного документа датой выставления считается дата, которую фиксирует оператор ЭДО при поступлении файла.

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

Частые ошибки

ОшибкаПричинаКак исправить
«Имя файла не соответствует ИдФайл»файл переименоваливыгрузить заново или вернуть имя из ИдФайл
Файл не открывается, вместо текста символысохранён не в windows-1251пересохранить в правильной кодировке или сформировать заново
Ошибка схемы: не найден обязательный элементне заполнен реквизит (КПП, адрес, подписант)дозаполнить данные и сформировать файл заново
Итог не равен сумме строкручные правки сумм или округлениепересчитать стоимость и НДС построчно
Неверная функциявыбрали СЧФ вместо СЧФДОП (или наоборот)переоформить документ с нужной функцией
Документ ушёл не тому получателюошибка в ID участника ЭДОуточнить ID у контрагента
В ВерсФорм не 5.03файл в устаревшей версии формата из старой программыпересобрать файл в 5.03: обновить программу или собрать XML другим способом

Как действовать, если документ вернулся

Оператор или покупатель может вернуть счёт-фактуру по двум разным причинам, и действовать нужно по-разному.

  • Техническая ошибка формата. Файл не прошёл проверку при загрузке: не совпадает имя, нет обязательного элемента, неверная кодировка. Такой документ считается не выставленным. Исправьте данные, сформируйте файл заново и отправьте — номер и дату счёта-фактуры при этом можно оставить прежними.
  • Отказ покупателя по существу. Документ дошёл, но покупатель не согласен с ценой, количеством или реквизитами и просит уточнение. В этом случае формируют исправленный документ: исправительный счёт-фактуру или УПД, либо корректировочный, если изменилась цена или количество после отгрузки.

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

Большую часть этих ошибок можно поймать до отправки: проверить файл по XSD-схеме ФНС и логическим правилам — итоги, НДС, обязательные реквизиты, совпадение имени файла с ИдФайл.

Подготовьте счёт-фактуру за минуту

Если данные документа у вас в Excel, не нужно собирать XML вручную. Загрузите таблицу в конвертер УПД — он посчитает суммы, НДС и итоги, сформирует ИдФайл и выдаст файл формата 5.03. Как выбрать функцию и подготовить таблицу, читайте на странице счёт-фактура в XML из Excel. Готовый файл останется подписать и отправить через вашего оператора ЭДО.