Как указать сведения о транспортировке и грузе в формате УПД 5.03

Программист 1С v8.3 (Управляемые формы) Бухгалтерский учет IT и автоматизация бизнеса
← На главную

При переходе на новый формат универсального передаточного документа (УПД) версии 5.03, утвержденный приказом ФНС России № ЕД-7-26/970@, разработчики интеграционных решений и специалисты 1С сталкиваются с ошибками схемы валидации (XSD). Привычный по формату 5.01 (приказ № ММВ-7-15/820@) блок сведений о транспортных накладных вызывает ошибку о наличии неизвестного или лишнего элемента. Разберем детально, как изменилась структура XML-документа, куда теперь вносить реквизиты транспортной накладной и какие ограничения схемы важно соблюдать при формировании файла обмена.

Причина ошибки валидации при выгрузке

Выясним причину возникновения ошибки. В старом формате 5.01 блок логистики формировался в отдельной ветке ТранГруз, внутри которой располагался элемент ТранНакл с разделенными атрибутами НомТранНакл и ДатаТранНакл. В формате УПД 5.03 структура блока передачи ценностей претерпела кардинальные изменения:

  1. Элемент ТранГруз полностью исключен из XSD-схемы документа.
  2. Элемент ТранНакл также упразднен.
  3. Все реквизиты транспортных документов перенесены в новый узел Тран, подчиненный элементу СвПер.

Если программный код продолжает выгружать тег ТранГруз, парсер оператора ЭДО или валидатор ФНС сразу выдает ошибку о несоответствии формата схемы.

Новая структура XML для сведений о транспортировке

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

Посмотрим на пример корректного фрагмента XML-файла:


<СвПродПер>
    <СвПер СодОпер="Товары переданы, работы сданы, услуги оказаны" ДатаПер="13.03.2025">
        <ОснПер НаимОсн="Договор поставки" НомОсн="45/2" ДатаОсн="10.01.2025"/>
        <Тран СвТран="Транспортная накладная № 207530536 от 12.03.2025"/>
    </СвПер>
</СвПродПер>

В отличие от прежнего разделения на номер и дату, в новом формате сведения о накладной объединяются в единую текстовую строку и передаются в атрибуте СвТран узла Тран. Именно эта строка визуализируется в интерфейсах операторов ЭДО (например, в блоке транспортировки под основаниями передачи).

Правила заполнения и ограничения реквизитов узла Тран

Проанализируем требования XSD-схемы формата 970@ к содержимому элемента Тран:

  1. Атрибут СвТран: Является обязательным при наличии узла Тран. Имеет строковый тип с ограничением длины от 1 до 1000 символов (T(1-1000)). Превышение этого лимита приводит к непрохождению валидации.
  2. Условия поставки (Инкотермс): Если в сделке используются базисы поставки, в элемент Тран можно добавить необязательный атрибут Инкотермс (ровно 3 латинских символа, например FCA или DAP) и атрибут ВерИнкотермс (год редакции, ровно 4 цифры, например 2020).
  3. Сведения о перевозчике: В узел Тран может входить сложный подчиненный элемент Перевозчик (тип УчастникТип), в котором указываются ИНН, КПП, наименование транспортной компании или данные физического лица-водителя.

Важные требования к последовательности тегов и функции документа

При генерации XML-документа крайне важно помнить про правила XML Schema Definition, регулирующие строгий порядок элементов (конструкция xs:sequence):

  1. Порядок следования внутри СвПер: Сначала обязательно указываются основания отгрузки в тегах ОснПер, и только после них располагается тег Тран. Если поменять эти теги местами при ручной генерации XML, документ будет забракован как невалидный.
  2. Функция документа: Блок сведений продавца о передаче (включая сведения о транспортировке) допустим исключительно при функциях СЧФДОП (универсальный передаточный документ) и ДОП (акт/накладная). Если формируется документ с функцией чистого счета-фактуры СЧФ, узел СвПер формироваться не должен.

Что делать, если данных больше 1000 символов или нужны детальные параметры

Если объема атрибута СвТран недостаточно либо требуется передать структурированные данные о перевозке (марку и госномер тягача, данные прицепа, номер пломбы, маршрутный лист), использовать для этого нестандартные атрибуты внутри Тран нельзя. Для этих целей в формате предусмотрен раздел информационных полей факта хозяйственной жизни со стороны продавца — ИнфПолФХЖ3. В нем данные передаются структурированными парами идентификаторов и значений.

Особенности реализации выгрузки в программах 1С

Разберем по шагам, на что обратить внимание разработчику при интеграции в среде 1С:

  1. Использование объектной модели XDTO: Если формирование XML выполняется вручную через фабрику XDTO, необходимо убедиться, что в конфигурацию загружен и используется пакет XDTO формата 970@. Попытка привязать новые свойства к пакету формата 820@ вызовет исключение платформы Свойство не найдено в типе XDTO.
  2. Типовая Библиотека электронных документов (БЭД): В типовых решениях 1С формирование строки СвТран выполняется автоматически на основании связанных документов (например, документов доставки или реквизитов вкладки «Доставка»). Если в нетиповой конфигурации модуль формирования контента продавца дорабатывался вручную, алгоритм сборки строки транспортировки необходимо переписать в соответствии с новыми правилами библиотеки.
← На главную