- Главная
- Проверка по схеме
- XSD-схема УПД 5.03: где скачать и как читать
XSD-схема УПД 5.03: где скачать и как читать
Что такое XSD-схема УПД 5.03, где скачать официальную схему ФНС, как понять обязательность, типы и длину полей, как устроен адрес и как проверить свой файл.
XSD-схема УПД — это официальный файл ФНС, который описывает электронный УПД до последнего атрибута: какие элементы обязательны, в каком порядке они идут, сколько символов допускается в каждом поле. Именно по ней оператор ЭДО решает, принять ваш XML или вернуть с ошибкой «Файл не соответствует XSD-схеме».
Ниже разберёмся, где взять XSD-схему УПД 5.03, как её читать без опыта программирования и какие места чаще всего вызывают вопросы, особенно адрес.
Что такое XSD-схема и зачем она
XML-файл УПД — это текст с тегами. Сам по себе XML позволяет написать что угодно: любые теги, любые значения. Чтобы все программы понимали документ одинаково, нужен строгий шаблон. Этим шаблоном и служит XSD (XML Schema Definition).
Схема отвечает на вопросы:
- какие элементы и атрибуты есть в документе и как они вложены друг в друга;
- какие из них обязательные, а какие можно опустить;
- какого типа значение: строка, число, дата, значение из списка;
- какая допустимая длина и формат (например, ИНН организации — 10 цифр, дата — ДД.ММ.ГГГГ).
Для УПД формата 5.03 схема утверждена вместе с форматом приказом ФНС России от 19.12.2023 № ЕД-7-26/970@. Учётные программы, операторы ЭДО и сервисы проверки опираются на один и тот же файл, поэтому, если документ ему соответствует, его поймут везде.
Схема нужна двум группам людей. Разработчикам — чтобы правильно формировать выгрузку. Бухгалтерам — чтобы разобраться, почему документ не принимается, и понять, что именно написано в сообщении об ошибке. Если разбираться в схеме вручную нет времени, можно сразу проверить УПД по схеме ФНС в нашем сервисе и получить список ошибок по-русски.
Где скачать официальную схему УПД 5.03
Официальный источник один — ФНС. Схема публикуется вместе с приказом об утверждении формата и в разделе сайта налоговой, посвящённом форматам электронных документов.
Что важно знать при скачивании:
- Схем две. Отдельная для титула продавца (КНД 1115131) и отдельная для титула покупателя (КНД 1115132). Покупательский титул по схеме продавца не проверить.
- Имя файла схемы обычно содержит префикс документа и номер версии формата.
- Версия. Убедитесь, что скачали схему именно для 5.03. Схемы устаревших версий формата устроены иначе, и файл 5.03 по ним выдаст десятки ложных ошибок.
- Не берите схемы из случайных архивов на форумах: они бывают устаревшими или «подправленными» под конкретную программу.
Ещё один косвенный источник — операторы ЭДО и разработчики учётных систем: они иногда публикуют схемы в документации для интеграции. Но первоисточником всё равно считается ФНС.
Как читать схему: обязательность, типы, длина полей
XSD — тоже XML, его можно открыть в любом текстовом редакторе или в браузере. Для начала достаточно понимать несколько конструкций.
Обязательность
Для элементов обязательность задаётся атрибутом minOccurs, для атрибутов — use.
<xs:element name="ГрузОт" minOccurs="0" maxOccurs="unbounded">
<xs:attribute name="НомерДок" use="required">
minOccurs="0"— элемент можно не указывать. ЕслиminOccursне написан, по умолчанию он равен 1, то есть элемент обязателен.maxOccurs="unbounded"— элемент может повторяться сколько угодно раз (так устроены строки товаров СведТов).use="required"— атрибут обязателен,use="optional"— нет.
Типы и длина
Ограничения на значение описываются в xs:simpleType через xs:restriction:
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="1000"/>
</xs:restriction>
Часто встречаются:
| Конструкция | Что значит |
|---|---|
xs:length | Точная длина (например, для кодов) |
xs:minLength / xs:maxLength | Минимальная и максимальная длина строки |
xs:pattern | Шаблон: допустимые символы и формат |
xs:enumeration | Значение строго из списка (КНД, функция документа, ставка НДС) |
xs:totalDigits / xs:fractionDigits | Сколько всего цифр в числе и сколько после запятой |
Обратите внимание: многие типы в схеме ФНС вынесены в конец файла и используются по ссылке. Видите у атрибута type="ИННЮЛТип" — ищите в схеме name="ИННЮЛТип", там будет само ограничение.
Выбор (choice)
Конструкция xs:choice означает «одно из нескольких». Например, участник может быть описан как юрлицо или как ИП, адрес — как российский, иностранный или кодом ГАР. Указать нужно ровно один вариант, а не все сразу.
Порядок
Внутри xs:sequence элементы должны идти строго в описанном порядке. Если в вашем файле блок поменян местами с соседним, проверка выдаст ошибку, даже если всё заполнено верно.
Основные блоки документа
Чтобы не утонуть в схеме, держите в голове общий скелет УПД 5.03:
<Файл ИдФайл="ON_NSCHFDOPPR_..." ВерсФорм="5.03" ВерсПрог="...">
<Документ КНД="1115131" Функция="СЧФДОП" ДатаИнфПр="..." ...>
<СвСчФакт НомерДок="..." ДатаДок="...">
<СвПрод>...</СвПрод>
<ГрузОт>...</ГрузОт>
<ГрузПолуч>...</ГрузПолуч>
<СвПокуп>...</СвПокуп>
...
</СвСчФакт>
<ТаблСчФакт>
<СведТов НомСтр="1" ...>...</СведТов>
<ВсегоОпл .../>
</ТаблСчФакт>
<СвПродПер>...</СвПродПер>
<Подписант>...</Подписант>
</Документ>
</Файл>
- Файл — корень. Атрибут ИдФайл должен совпадать с именем файла без «.xml», ВерсФорм — «5.03».
- Документ — КНД, функция (СЧФ, СЧФДОП, ДОП), дата и время формирования.
- СвСчФакт — номер и дата, продавец, грузоотправитель, грузополучатель, покупатель, документы об отгрузке.
- ТаблСчФакт — строки товаров (СведТов) и итоги (ВсегоОпл).
- СвПродПер — сведения о передаче товаров, работ или услуг. Для функции СЧФ этот блок не нужен.
- Подписант — кто подписывает документ.
Схема куда подробнее: внутри каждого блока десятки атрибутов. Но поиск ошибки почти всегда начинается с того, чтобы понять, в каком из этих блоков она находится.
Адрес в схеме: частые вопросы
Адрес — самый частый источник вопросов по XSD-схеме для УПД, потому что вариантов его записи несколько и они взаимоисключающие.
В формате адрес описывается через выбор одного из вариантов:
- адрес в РФ — структурированно: индекс, код региона, город, улица, дом и так далее;
- адрес за пределами РФ — код страны и адрес одной строкой;
- код ГАР — уникальный номер адреса в государственном адресном реестре.
Что чаще всего ломается:
- Указаны два варианта сразу. Например, и структурированный адрес, и адрес одной строкой. Схема разрешает только один.
- Код региона. Это двузначный код, а не название. Ошибкой будет «77 Москва» или «г. Москва» в поле кода.
- Индекс. Ровно 6 цифр, без пробелов.
- Пустые элементы. Тег вроде
<Улица></Улица>— не то же самое, что отсутствующий тег. Если улицы нет, элемент лучше не выводить вовсе. - Иностранный контрагент записан как российский: без кода страны и с выдуманным регионом.
Если в учётной программе адрес хранится одной строкой, при формировании УПД он часто попадает в вариант «адрес одной строкой», но с российским кодом страны. Допустимо ли это для вашего случая, лучше уточнить у оператора ЭДО.
Как проверить свой файл по схеме
Есть три пути:
- Валидатор в редакторе. Многие XML-редакторы умеют сверять файл со схемой. Нужно скачать обе схемы, правильно их подключить и разбираться в сообщениях на английском.
- Загрузка в ЭДО. Оператор проверит файл при загрузке. Минус в том, что вы узнаете об ошибке, когда документ уже нужен контрагенту.
- Онлайн-проверка. Загружаете XML и получаете список ошибок с указанием реквизита.
Учтите, что соответствие схеме ещё не гарантирует, что документ правильный: XSD не сверяет суммы, НДС и связи между полями. Подробнее об этом — в статье Валидация XML по XSD и проверка правил ФНС: в чём разница.
Итог
Скачивайте XSD-схему только с сайта ФНС и именно для версии 5.03, держите в голове скелет документа и внимательно смотрите на обязательность, длину и варианты выбора, особенно в адресе. А чтобы не разбирать схему вручную, воспользуйтесь сервисом проверка УПД XML онлайн: он сверит файл со схемой и логическими правилами. Если документа ещё нет, соберите его из таблицы через онлайн-конвертер УПД в XML — файл сразу будет соответствовать формату 5.03.