Как загрузить XML файл в 1С 8.3: все рабочие способы импорта документов

· 12 мин

Содержание

Чтобы загрузить XML файл в 1С 8.3, нужно знать, кто и по какому формату его сформировал: один и тот же файл с расширением .xml грузится либо через Администрирование → Синхронизация данных, либо обработкой «Универсальный обмен данными в формате XML», либо кнопкой загрузки в конкретном журнале документов. Универсальной кнопки «открыть XML » в 1С нет — и это главное заблуждение по теме.

Часто думают так: XML — формат текстовый и открытый, значит программа «сама разберётся». Не разберётся. Для 1С XML — это контейнер, и читать его она умеет только по заранее описанной структуре: по формату EnterpriseData, по правилам обмена, по стандарту CommerceML или по вашему коду. Поэтому разбор ниже построен не «по кнопкам», а по типам файлов: сначала определяем, что у нас за XML, потом выбираем способ.

Пути меню дальше приведены для «1С:Бухгалтерия 8.3» (БП 3.0), «Зарплата и управление персоналом 3.1» (ЗУП 3.1), «Управление торговлей 11» (УТ 11) и «ERP 2». Механизмы общие — отличается только раздел, в котором живёт команда.

Какие XML бывают и каким способом загружаются в 1С 8.3

Откройте файл любым текстовым редактором (Блокнот, Notepad++) и посмотрите на первые 5–10 строк. Корневой тег сразу скажет, с чем вы имеете дело.

Что в начале файлаЧто это за XMLЧем грузить в 1С
<Message> + xmlns с EnterpriseDataТиповой формат обмена 1С (ЕнтерпрайзДата)Синхронизация данных → загрузка из файла
<ExchangeFile>Выгрузка «Универсального обмена XML»Обработка V8Exchange.epf + правила обмена
<КоммерческаяИнформация>CommerceML 2 — накладные, УПД, каталог товаровЗагрузка электронного документа / обмен с сайтом
<Файл ИдФайл="...">Регламентированная отчётность ФНС/СФРРегламентированные отчёты → загрузка из файла
<Document> с xmlns:urn:iso:std:iso:20022Банковская выписка ISO 20022 (camt)Клиент-банк, если формат поддержан
<ФайлОбмена>, <data>, свои тегиПроизвольная выгрузка из внешней системыСвоя обработка на ЧтениеXML / ФабрикаXDTO

Если тег вам незнаком — найдите в файле строку xmlns= или ВерсияФормата. В 90 % случаев там прямо написано название схемы, по которой файл собран.

Чего в 1С сделать нельзя

  • ❌ Нельзя «перетащить» XML на окно 1С и получить документ.
  • ❌ Нельзя загрузить XML из одной конфигурации в другую, если форматы не совпадают (выгрузка из УТ 10.3 не встанет в УТ 11 «как есть»).
  • ❌ Нельзя загрузить XML, собранный вручную «на глазок»: любая лишняя или пропущенная обязательная ветка — отказ разбора.

Подготовка: что проверить до загрузки XML в 1С 8.3

Загрузка XML пишет данные напрямую в базу, часто без привычных проверок формы. Откатить потом сложнее, чем сделать копию заранее.

Перед загрузкой XML в 1С
Выполнено: 0 / 7

Никогда не грузите XML в рабочую базу без свежей резервной копии. Особенно это касается универсального обмена: он умеет перезаписывать существующие объекты по внутренним идентификаторам.

Проверьте, что файл выгружен полностью. Обрыв выгрузки на середине даёт XML без закрывающего корневого тега — 1С сообщит об ошибке разбора на последней строке, и причина будет не в правилах, а в битом файле.

Способ 1. Как загрузить XML файл в 1С 8.3 через синхронизацию данных

Это основной штатный путь для обмена между типовыми конфигурациями: БП 3.0 ↔ ЗУП 3.1, БП 3.0 ↔ УТ 11, ERP ↔ любая типовая. Формат — EnterpriseData.

  1. Включите механизм: Администрирование → Синхронизация данных → галка Синхронизация данных. В УТ 11 и ERP — НСИ и администрирование → Синхронизация данных.
  2. Задайте префикс информационной базы (например, БУХ) — он не даёт пересечься номерам документов из двух баз.
  3. Нажмите Настройки синхронизации данных → Настроить синхронизацию данных и выберите нужную пару конфигураций.
  4. В качестве способа обмена укажите Через каталог на диске или Вручную (файлом).
  5. Укажите каталог, в котором лежит ваш XML, или путь к самому файлу.
  6. Нажмите Синхронизировать — программа прочитает файл, покажет состав данных и попросит сопоставить объекты.

Сопоставление объектов при загрузке

Самый ответственный шаг. 1С ищет в базе соответствия по наименованию, ИНН, коду. Что не нашла — предложит создать.

Сопоставление полей
Тег «Контрагент» с ИНН и КПП→Справочник «Контрагенты» по ИНН+КПП
Тег «Номенклатура»→Справочник «Номенклатура» по наименованию или артикулу
Тег «Организация»→Справочник «Организации» по ИНН
Тег «Склад»→Справочник «Склады» по наименованию
Тег «ЕдиницаИзмерения» с кодом ОКЕИ→Справочник «Единицы измерения» по коду
Тег «СтавкаНДС» со значением 20→Перечисление «Ставки НДС», значение НДС20

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

Повторная загрузка того же файла

Загрузили, нашли ошибку, исправили файл и хотите залить заново? Просто подложить файл в каталог недостаточно: 1С помнит номер сообщения обмена. Нужно в настройке синхронизации вызвать Ещё → Состав отправляемых данных / сбросить регистрацию, либо принудительно загрузить файл через флаг «Загрузить повторно» в помощнике.

Способ 2. Загрузка XML через обработку «Универсальный обмен данными в формате XML»

Применяйте, когда структуры баз не совпадают: перенос из старых конфигураций (УТ 10.3, УПП 1.3, БП 2.0), миграция в обрезанную базу, разовая перегрузка справочников.

Что понадобится:

  • 📄 сам файл выгрузки с корневым тегом <ExchangeFile>;
  • 🧩 внешняя обработка V8Exchange.epf (или УниверсальныйОбменДаннымиXML.epf);
  • 📐 файл правил обмена .xml, по которым выгрузка и делалась.

Порядок:

  1. Файл → Открыть → выберите V8Exchange.epf. Если открытие внешних обработок запрещено — включите в Администрирование → Печатные формы, отчёты и обработки.
  2. Перейдите на закладку Загрузка данных.
  3. В поле Имя файла с правилами обмена укажите тот же файл правил, что использовался при выгрузке.
  4. В поле Имя файла с данными для загрузки укажите ваш XML.
  5. Снимите или оставьте галки Загружать данные в режиме обмена и Записывать документы без проведения — для первой загрузки удобнее без проведения.
  6. Нажмите Загрузить данные и дождитесь протокола.

Правила обмена и данные — комплект. Чужие правила к вашему файлу не подойдут: загрузка либо упадёт, либо (хуже) молча создаст пустые объекты.

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

Правила делаются в «Конвертации данных 2.1» (или КД 3.0 для формата EnterpriseData). Типовой сценарий доработки:

  1. Выгрузите структуры метаданных обеих баз обработкой MD82Exp.epf.
  2. Загрузите два файла структур в «Конвертацию данных».
  3. Поправьте сопоставление реквизитов там, где состав полей разошёлся.
  4. Выгрузите правила в .xml и используйте их в обработке загрузки.

Если программиста нет, а перенести нужно один справочник — часто быстрее выгрузить данные в Excel и загрузить типовой обработкой «Загрузка данных из табличного документа», чем править правила.

Способ 3. Как загрузить документ в 1С 8.3 из XML по стандарту CommerceML

Накладные, УПД, счета-фактуры и каталоги товаров поставщики отдают в CommerceML — корневой тег <КоммерческаяИнформация>. Это тот случай, когда из XML получается именно документ, а не просто данные.

Через 1С-ЭДО / 1С-Такском. Если файл пришёл почтой, а не по ЭДО:

  • БП 3.0: Продажи или Покупки → Текущие дела ЭДО → Ещё → загрузка электронного документа из файла .
  • УТ 11 / ERP: Продажи → Электронные документы → аналогичная команда загрузки.
  • Загруженный документ появится в списке входящих, дальше по кнопке Отразить в учёте формируется Поступление (акт, накладная, УПД).

Через обмен с сайтом / каталогом товаров. Для прайсов и каталогов (import.xml, offers.xml):

  • УТ 11: НСИ и администрирование → Обмен с сайтом → настройка обмена CommerceML, каталог с файлами.
  • БП 3.0: обмен каталогами настраивается в Администрирование → Обмен электронными документами → Обмен с контрагентами.

Какие проводки сформируются после загрузки накладной

XML сам проводок не делает — он создаёт документ. Проводки появляются при проведении. Для поступления товара на 120 000 ₽ с НДС 20 % картина такая:

Проводки по операции

После загрузки партии документов откройте Отчёты → Оборотно-сальдовая ведомость по счёту 60 и сверьте сальдо с актом сверки поставщика. Это самая быстрая проверка, что из XML встало всё и без дублей.

Способ 4. Загрузка XML регламентированной отчётности и файлов от госорганов

Файлы ФНС и СФР имеют корневой тег <Файл> с атрибутом ИдФайл. Это не обмен данными, а готовая форма отчёта.

  • БП 3.0 / ЗУП 3.1: Отчёты → Регламентированные отчёты → 1С-Отчётность → в списке отчётов команда загрузки из файла.
  • Ответы и требования из ФНС приходят в Отчёты → Регламентированные отчёты → Входящие документы.
  • Файл электронной подписи .sgn/.p7s рядом с XML не грузится отдельно — он нужен оператору ЭДО, не базе.

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

Способ 5. Чтение произвольного XML своей обработкой

Выгрузка из CRM, маркетплейса, складской системы — структура произвольная, типовых механизмов нет. Два рабочих подхода.

Последовательное чтение ЧтениеXML — подходит для простых файлов и больших объёмов, читает поток без загрузки всего файла в память:

Чтение = Новый ЧтениеXML;
Чтение.ОткрытьФайл("C:\Exchange\orders.xml");

Пока Чтение.Прочитать() Цикл
    Если Чтение.ТипУзла = ТипУзлаXML.НачалоЭлемента
        И Чтение.Имя = "Order" Тогда
        // здесь читаем атрибуты и вложенные теги заказа
        Номер = Чтение.ПолучитьАтрибут("Number");
        Сообщить("Заказ " + Номер);
    КонецЕсли;
КонецЦикла;

Чтение.Закрыть();

Разбор через ФабрикаXDTO — когда у файла есть схема .xsd и хочется получить готовый объект, а не разбирать теги вручную:

Чтение = Новый ЧтениеXML;
Чтение.ОткрытьФайл(ПутьКФайлу);
Объект = ФабрикаXDTO.ПрочитатьXML(Чтение);
Чтение.Закрыть();

Для Каждого Строка Из Объект.Товары Цикл
    // Строка.Артикул, Строка.Количество, Строка.Цена
КонецЦикла;

Поиск номенклатуры по наименованию в таком коде — источник дублей. Ищите по артикулу или штрихкоду, а при отсутствии совпадения не создавайте элемент молча, а пишите строку в отчёт о расхождениях.

Если хочется обойтись без кода: XML сравнительно легко открыть в Excel (Данные → Получение данных → Из файла → Из XML), привести к таблице и загрузить типовой обработкой «Загрузка данных из табличного документа». Для разовой задачи это быстрее, чем писать разбор.

Отчёты и журналы для проверки после загрузки

Загрузка закончилась без ошибок — это ещё не значит, что данные правильные. Минимальный набор проверок:

  1. Администрирование → Журнал регистрации — отфильтруйте по времени загрузки и посмотрите события с уровнем «Ошибка» и «Предупреждение».
  2. Отчёты → Анализ учёта → Экспресс-проверка ведения учёта — ловит незаполненные обязательные реквизиты и непроведённые документы.
  3. Отчёты → Оборотно-сальдовая ведомость — сверьте итоги по счетам 41, 60, 62, 68.02 с источником.
  4. Все функции → Обработки → Поиск и удаление дублей — по контрагентам и номенклатуре, если сопоставление шло на автомате.
  5. В журнале документов включите колонку Дата создания или отсортируйте по номеру — так видно весь «пакет» загруженных документов, и его легко разом перепровести.

Перед проведением загруженных документов откройте 2–3 штуки вручную и сравните суммы с XML. Если расхождение в НДС — почти всегда дело в ставке: в файле ставка числом (20), а в базе у номенклатуры подставилась «Без НДС».

Типичные ошибки при загрузке XML в 1С 8.3

Диагностика: выберите симптом

Как избежать проблем в следующий раз

  • 🔁 Обмен настраивайте один раз каталогом на диске, а не ручной загрузкой файла каждый день — меньше шансов перепутать файлы и порядок.
  • 🗂️ Держите папки in, out, archive: обработанный файл сразу переносите в архив с датой в имени.
  • 🧪 Любой новый формат сначала грузите в копию базы . Копия делается за минуты, разбор последствий — за дни.
  • 🧷 Заполните в справочниках ИНН/КПП у контрагентов и артикулы у номенклатуры. Это ключи сопоставления: чем они полнее, тем меньше дублей.
  • 📋 Записывайте в отдельный файл, какой XML каким способом и какими правилами грузится. Через полгода вы это не вспомните, а коллега — тем более.
  • 🧰 Если загрузка повторяется чаще раза в неделю и делается вручную — это повод заказать регламентное задание. Ручная рутина ломается первой.

Частые вопросы

Можно ли загрузить XML файл в 1С 8.3 без обработок и программиста?
Да, если файл в формате EnterpriseData или CommerceML — хватит штатной синхронизации данных или загрузки электронного документа. Произвольный XML без обработки не загрузится.
Почему 1С пишет «ошибка разбора XML», хотя файл открывается в браузере?
Браузер показывает даже неполный файл, а 1С требует корректную структуру целиком. Чаще всего нет закрывающего корневого тега или кодировка не совпадает с объявленной в заголовке.
Чем универсальный обмен XML отличается от синхронизации данных?
Синхронизация работает по типовому формату EnterpriseData между типовыми конфигурациями. Универсальный обмен работает по вашим правилам и годится для разных и доработанных баз.
Как загрузить XML из старой базы 1С 7.7 или УТ 10.3 в новую?
Через обработку «Универсальный обмен данными в формате XML» с правилами перехода для конкретной пары конфигураций. Напрямую синхронизацией такие выгрузки не читаются.
Создаст ли загрузка XML проводки автоматически?
Нет. Из файла получаются документы, а проводки формируются при их проведении. Загружайте без проведения, проверьте суммы и проведите группой.
Что делать, если после загрузки XML данные встали неправильно?
Восстановить базу из резервной копии, сделанной до загрузки. Точечное удаление загруженных объектов почти всегда оставляет мусор в регистрах.