К статье
Практический материал

Справочники и Данные · 11 мин

EFD: как загрузить данные в 1С

Что такое EFD-файл, как загрузить его в 1С через обработку обмена данными, какие настройки проверить и как исправить типичные ошибки загрузки.

EFD-файл — это файл обмена данными, который формируется внешними системами (кассовым оборудованием, банковскими сервисами, сторонними учётными программами) для передачи информации в 1С. Чаще всего под EFD понимают выгрузку фискальных или торговых данных, которую нужно отразить в учёте: продажи, чеки, оплаты, остатки. Прямой кнопки «загрузить EFD» в типовых конфигурациях нет, поэтому загрузка выполняется либо через встроенные механизмы обмена, либо через универсальные обработки.

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

Материал ниже описывает рабочий порядок действий: от проверки файла до контроля загруженных данных, а также типичные ошибки, из-за которых загрузка обрывается или данные попадают в базу некорректно.

Что такое EFD и откуда берётся файл

Аббревиатура EFD используется поставщиками кассового и торгового оборудования для обозначения файлов выгрузки данных: чеков, Z-отчётов, товарных остатков, реестров платежей. Единого общероссийского стандарта «EFD» не существует — каждый производитель формирует файл по своей спецификации, поэтому файл от одной системы может не открыться обработкой другой.

Определить источник файла можно по нескольким признакам: имени файла (часто содержит код кассы или дату выгрузки), папке, из которой он взят, и содержимому — если открыть файл в текстовом редакторе, в первых строках обычно видны служебные теги или заголовки с названием формата. XML-файлы начинаются с объявления <?xml version="1.0"?>, текстовые выгрузки — с заголовков колонок.

Подготовка: что проверить перед загрузкой

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

Второй шаг — резервная копия информационной базы. Загрузка внешних данных создаёт документы, справочники и движения по регистрам; откатить ошибочную загрузку вручную долго и рискованно. Для файловой базы достаточно скопировать файл 1Cv8.1CD, для клиент-серверной — выполнить выгрузку через конфигуратор или штатное задание резервного копирования СУБД.

Третий шаг — проверка заполнения ключевых справочников в 1С: организаций, складов, касс, номенклатуры, контрагентов. Если обработка сопоставляет данные по кодам или наименованиям, а нужных элементов в базе нет, документы либо не создадутся, либо создадутся с пустыми реквизитами.

Способ 1. Штатный обмен с оборудованием и сервисами

Если EFD-файл формирует кассовое или торговое оборудование, первым делом проверьте, есть ли в вашей конфигурации штатный механизм обмена с этим оборудованием. В конфигурациях «Управление торговлей», «Розница», «Комплексная автоматизация» предусмотрены подсистемы обмена с подключаемым оборудованием и внешними системами: разделы «Настройки обмена данными», «Синхронизация данных», «Обмен с кассами».

Порядок настройки обычно такой: создаётся узел обмена, указывается каталог, из которого 1С забирает файлы, задаётся расписание или ручной запуск. После настройки поместите EFD-файл в указанный каталог и запустите обмен. Система сама распарсит файл, сопоставит данные и создаст документы — отчёты о розничных продажах, оприходования, кассовые документы.

Преимущество штатного обмена в том, что правила сопоставления уже учитывают структуру конфигурации: номенклатура ищется по штрихкодам и артикулам, контрагенты — по ИНН, склады — по настройкам узла. Это снижает количество дублей по сравнению с универсальными обработками.

Способ 2. Загрузка через универсальную обработку

Когда штатного обмена нет, используется обработка «Универсальный обмен данными в формате XML» либо специализированная обработка от поставщика оборудования. Универсальная обработка подходит, только если EFD-файл имеет XML-структуру, совместимую с правилами конвертации, — то есть подготовлен именно для загрузки в 1С.

Порядок загрузки через универсальную обработку
  1. 1
    Откройте обработку «Универсальный обмен данными в формате XML» через меню «Файл — Открыть» или из состава поставки конфигурации
  2. 2
    На закладке «Загрузка данных» укажите путь к EFD-файлу
  3. 3
    Если обработка требует правила обмена — загрузите файл правил, предоставленный поставщиком
  4. 4
    Включите режим отладки или проверки, если он доступен, и выполните пробную загрузку без записи
  5. 5
    Запустите загрузку и дождитесь протокола: количество загруженных объектов, ошибки, предупреждения
  6. 6
    Проверьте созданные документы и справочники в базе

Специализированные обработки поставщика обычно проще: они «знают» структуру своего EFD-формата и не требуют правил конвертации. Такие обработки распространяются вместе с драйверами оборудования или скачиваются из личного кабинета поставщика. Перед использованием убедитесь, что версия обработки совместима с версией вашей конфигурации — обработка, написанная под старый релиз, может не найти нужные объекты метаданных.

Способ 3. Загрузка табличных данных

Если EFD-файл по сути является таблицей (CSV, TXT с разделителями), а не XML, универсальная обработка обмена не поможет. В этом случае используются обработки загрузки данных из табличных документов: в ряде конфигураций есть встроенная «Загрузка данных из файла» в разделах справочников и документов, либо применяются внешние обработки загрузки из Excel/CSV.

При таком способе вы вручную сопоставляете колонки файла реквизитам 1С: колонка «Штрихкод» — реквизиту «Штрихкод», колонка «Сумма» — реквизиту «Сумма» и так далее. Это требует внимательности: ошибка в сопоставлении одной колонки приведёт к некорректным данным во всех загруженных строках.

Проверка результата загрузки

Завершение обработки без сообщений об ошибках не гарантирует корректность данных. Обязательный минимум контроля — сверка итогов: количество загруженных документов против количества записей в источнике, общая сумма по загруженным документам против итоговой суммы выгрузки. Расхождение даже на одну запись означает, что часть данных потеряна или задублирована.

Далее проверьте качество сопоставления справочников: откройте несколько загруженных документов и убедитесь, что номенклатура, склады и контрагенты подставились реальные, а не созданы «пустые» элементы с названиями из файла. Проверьте даты документов — они должны соответствовать периоду выгрузки, а не дате загрузки.

Контрольные точки

Как проверить результат

Количество документов
Норма

Совпадает с числом записей в источнике

Тревожный признак

Документов меньше или больше — часть не загрузилась или созданы дубли

Итоговые суммы
Норма

Сумма по загруженным документам равна итогу выгрузки

Тревожный признак

Расхождение сумм — ошибки сопоставления колонок или потеря строк

Справочники
Норма

В документах подставлены существующие элементы номенклатуры и контрагентов

Тревожный признак

Появились новые элементы с названиями из файла — сработало автосоздание дублей

Даты документов
Норма

Соответствуют периоду выгрузки

Тревожный признак

Все документы датированы днём загрузки

Типичные ошибки и их устранение

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

Вторая группа ошибок — дубли справочников. Если правила поиска настроены по наименованию, а в файле названия отличаются пробелами или регистром, обработка создаст новые элементы вместо подстановки существующих. Лечится настройкой поиска по уникальным полям: штрихкод, артикул, ИНН, код.

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

Типичные ошибки
01
Загрузка в рабочую базу без теста на копии — ошибочные данные смешиваются с реальными, откат затруднён
02
Поиск справочников по наименованию — массовое создание дублей номенклатуры и контрагентов
03
Игнорирование протокола загрузки — частичная загрузка остаётся незамеченной до сверки учёта
04
Загрузка в закрытый период — документы либо не создаются, либо создаются неполностью
05
Повторный запуск загрузки без анализа первой — задвоение документов

Когда нужна помощь разработчика

Самостоятельная загрузка оправдана, когда формат файла поддерживается штатным обменом или готовой обработкой поставщика. Если же EFD-файл имеет нестандартную структуру, а готовых инструментов нет, потребуется доработка: написание собственной обработки загрузки или правил конвертации данных.

Признаки того, что без разработчика не обойтись: файл содержит вложенные структуры, которые не читаются универсальными обработками; требуется сложное сопоставление данных (один документ из файла должен порождать несколько документов в 1С); загрузка должна выполняться регулярно по расписанию с автоматическим контролем ошибок. В таких случаях самостоятельные попытки «подогнать» файл под универсальную обработку обычно дороже, чем разовая доработка.

Итог

Что важно запомнить

Определите источник и формат EFD-файла, сделайте резервную копию базы, загружайте штатным обменом или обработкой поставщика, после загрузки сверьте количество документов и итоговые суммы. При нестандартном формате и регулярной загрузке привлекайте разработчика.

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

1С не видит EFD-файл при выборе — что делать?

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

Можно ли загрузить EFD в 1С:Бухгалтерию?

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

После загрузки появились дубли номенклатуры. Как исправить?

Дубли возникают из-за поиска по наименованию. Используйте штатную обработку «Поиск и удаление дублей» для объединения элементов, затем в правилах загрузки переключите поиск на уникальные поля — штрихкод, артикул или код. Перед объединением убедитесь, что дубли не участвуют в закрытых периодах.

Загрузка оборвалась на середине. Повторять с начала?

Не сразу. Сначала изучите протокол: какие объекты загружены, на чём произошла ошибка. Повторный запуск без анализа создаст дубли уже загруженных документов. Устраните причину (права, закрытый период, повреждённая запись в файле), затем либо загрузите только оставшуюся часть, либо удалите частично созданные документы и повторите загрузку целиком.

Как настроить автоматическую загрузку EFD по расписанию?

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

Чем открыть EFD-файл, чтобы посмотреть содержимое?

XML-файлы открываются любым текстовым редактором или браузером — структура тегов будет читаемой. Текстовые выгрузки с разделителями удобнее смотреть в табличном редакторе. Не сохраняйте файл из этих программ: смена кодировки или разделителей при сохранении сломает последующую загрузку в 1С.