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

Отдельного официального справочника ровно под фразу «Не удалось распаковать транспортный контейнер» я не нашёл: это общее сообщение, а в справочнике 1С-ЭДО описаны его конкретные варианты. Ниже разбираю их и порядок проверки.

Что происходит при распаковке

Когда вы нажимаете «Отправить и получить», 1С забирает у оператора ЭДО входящие транспортные контейнеры. Дальше программа должна:

  1. Расшифровать контейнер сертификатом вашей организации.
  2. Найти в базе отправителя, получателя и контрагента по идентификаторам ЭДО.
  3. Проверить электронные подписи в пакете.
  4. Если это служебный документ (извещение, ответная подпись, предложение об аннулировании) — найти первичный документ, к которому он относится.
  5. Создать или обновить электронный документ во входящих.

Если любой шаг не проходит, контейнер остаётся в статусе «К распаковке», а 1С при каждом обмене пытается распаковать его снова и снова выдаёт ошибку.

Причина 1. Не настроена связь с контрагентом

Справочник 1С-ЭДО описывает вариант «Не удалось распаковать пакет электронных документов. Не настроена связь с контрагентом». Ошибка появляется в «Текущих делах ЭДО» при нажатии «Отправить и получить» и значит, что настройка получения документов от этого контрагента не в состоянии «Присоединен» или её нет вовсе. В пакете при этом не хватает обязательных полей: идентификатора получателя, отправителя, контрагента.

Что делать:

  1. Проверьте статус приглашения — в настройке получения документов по контрагенту или на вкладке «Приглашения» Архива ЭДО.
  2. Если приглашение ещё не принято, дождитесь статуса «Присоединен» — после этого 1С сама заполнит недостающие данные и распакует пакет.
  3. Если статус долго не меняется, это часто проблема роуминга между операторами. Справочник советует обращаться в техподдержку 1С-ЭДО.
  4. Если ошибка сопровождается сообщением о неполученных приглашениях, ограниченных датой запроса: «Организации — ЭДО — Учетные записи», откройте учётную запись, «Ещё — Начальные даты запроса данных у оператора ЭДО», очистите начальную дату запроса приглашений, «Записать и закрыть», затем снова «Отправить и получить».

Как правильно настраивать связь с контрагентом, подробно разбирал в статье как принять документы по ЭДО в 1С.

Причина 2. Нет сертификата для расшифровки

Контейнер зашифрован на сертификат вашей организации. Если на этом рабочем месте сертификат не установлен, расшифровка невозможна. В справочнике 1С-ЭДО это код ошибки 103: «Требуемый персональный сертификат не найден» — сертификат, который используется для ЭДО, не установлен в хранилище «Личные» операционной системы.

Решение — установить сертификат из криптопровайдера. В КриптоПро CSP: вкладка «Сервис» — «Просмотреть сертификаты в контейнере…», выбрать контейнер закрытого ключа — «Установить». В ViPNet CSP: открыть контейнер, в «Свойствах контейнера» нажать «Открыть» и в сертификате выбрать «Установить сертификат…».

Связанные варианты, которые тоже ломают расшифровку:

  • «Сертификат не имеет связи с закрытым ключом» — обычно после неаккуратного переноса подписи на другой компьютер. Сертификат переустанавливают через криптопровайдер с привязкой к контейнеру.
  • «Ошибка при получении свойства сертификата (0x00000000)» — то же отсутствие связи с контейнером; в актуальных версиях в окне проверки сертификата есть ссылка «Установить сертификат в контейнер».
  • Истёк сертификат. Эксперт Бухэксперт8 называет его первой причиной, если контейнер не распаковался автоматически при приёме.

Быстрее всего проблему с сертификатом показывает проверка: «Администрирование — Обмен электронными документами — Настройка электронной подписи и шифрования», вкладка «Сертификаты», открыть сертификат и нажать «Проверить». Красный значок напротив «Расшифровка данных» — ваш случай. Подробно про такие проверки — в статье 1С не видит ЭЦП.

Что нужно 1С для распаковки транспортного контейнера ЭДО: связь, сертификат, подписи, первичный документ
Что нужно 1С для распаковки транспортного контейнера ЭДО: связь, сертификат, подписи, первичный документ

Причина 3. Подписи в пакете не проверяются

Если пакет расшифровался, но подписи в нём не проходят проверку, документ не обрабатывается. По справочнику 1С-ЭДО сообщение «Документ не обработан, так как содержит невалидные подписи» чаще всего значит, что на компьютере не установлен корневой сертификат: либо головного удостоверяющего центра Минцифры (в справочнике он ещё назван ГУЦ Минкомсвязи), либо УЦ, выпустившего сертификат контрагента или оператора ЭДО. На вкладке «Подписи» у такого документа статус «Не верна».

Что делать:

  1. Сначала установите корневой сертификат головного УЦ.
  2. Если не помогло — откройте сертификат из вкладки «Подписи», сохраните его в файл, посмотрите «Путь сертификации» и установите недостающий сертификат УЦ в «Доверенные корневые центры сертификации».
  3. Перепроверьте подписи. Начиная с Модуля ЭДО 1.9.9.17 это можно сделать массово: «Текущие дела ЭДО — Ещё — Проверить подписи».

При клиент-серверной работе с подписанием на сервере корневой сертификат ставится на сервер 1С, под тем пользователем, под которым добавлен сертификат.

Причина 4. В базе нет первичного документа

Вариант из справочника 1С-ЭДО: «Не удалось найти владельца для служебного электронного документа». В пакете пришёл служебный документ — извещение о получении, информация получателя, предложение об аннулировании, — а первичного документа в базе нет. Причин две:

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

Решение по справочнику: отменить такой пакет и договориться с контрагентом об отправке нового документа.

Причина 5. Устаревшая программа и прочее

Если ошибки распаковки начались после обновления или, наоборот, на давно не обновлявшейся базе, проверьте версию Модуля ЭДО: «Текущие дела ЭДО» или «Поддержка — О Модуле ЭДО». Модуль обновляется только вместе с конфигурацией. Кроме того, бывают сбои на стороне оператора и роуминга — тогда без обращения в поддержку не обойтись. Если файлы транспортных контейнеров были удалены из базы, распаковать их уже нечего: в такой ситуации я пробую повторно запросить данные у оператора, сдвинув начальную дату запроса в учётной записи ЭДО, а если это не помогает — прошу контрагента отправить документ заново.

Как распаковать контейнер вручную

Когда причина устранена, 1С обычно распаковывает пакет при следующем обмене. Если нет — вручную:

  1. Откройте «Текущие дела ЭДО».
  2. Внизу нажмите ссылку «Архив ЭДО».
  3. Перейдите на вкладку «Транспортные контейнеры».
  4. Найдите контейнер по дате создания и статусу «К распаковке», откройте его.
  5. Нажмите «Распаковать контейнер».

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

Порядок диагностики

  1. Нажмите «Отправить и получить» и прочитайте полный текст ошибки: он подсказывает, к какой причине относится случай.
  2. Проверьте статус связи с контрагентом — «Присоединен» или нет.
  3. Проверьте сертификат организации кнопкой «Проверить», особенно пункт расшифровки, и срок действия.
  4. Убедитесь, что вы работаете под тем пользователем Windows и на том компьютере, где установлен сертификат.
  5. Посмотрите вкладку «Подписи» у документа — нет ли статуса «Не верна».
  6. Для служебных документов — найдите первичный документ в базе.
  7. Проверьте версию Модуля ЭДО и обновите 1С.

Таблица: сообщение, причина, что делать

СообщениеПричинаЧто делать
Не удалось распаковать пакет. Не настроена связь с контрагентомПриглашение не в статусе «Присоединен»Дождаться принятия, при необходимости сбросить начальную дату запроса приглашений
Код 103. Требуемый персональный сертификат не найденСертификат не установлен в «Личные»Установить сертификат через КриптоПро или ViPNet
Сертификат не имеет связи с закрытым ключомНеправильный перенос подписиПереустановить сертификат с привязкой к контейнеру
Документ содержит невалидные подписиНет корневого сертификата УЦУстановить корневые сертификаты, перепроверить подписи
Не удалось найти владельца для служебного документаПервичный документ удалён или в другой базеОтменить пакет, запросить новый документ

Когда звать специалиста

Если связь с контрагентом в порядке, сертификат проходит проверку, а контейнеры всё равно копятся в статусе «К распаковке»; если база клиент-серверная и подписание идёт на сервере; если в организации несколько баз с одним идентификатором ЭДО или проблемы начались после обновления — здесь быстрее разобраться вместе со специалистом, чем перебирать варианты.

Короткий чек-лист

  • Прочитать полный текст ошибки при «Отправить и получить».
  • Проверить связь с контрагентом: статус «Присоединен».
  • Проверить сертификат: установлен, связан с ключом, не истёк, расшифровка проходит.
  • Установить корневые сертификаты и перепроверить подписи.
  • Не удалять электронные документы и не подключать один идентификатор ЭДО к нескольким базам.
  • После исправления распаковать контейнер через «Архив ЭДО — Транспортные контейнеры».

Если транспортный контейнер в 1С так и не удаётся распаковать, помогу удалённо: найду причину, настрою сертификаты, связь с контрагентами и разберу зависшие пакеты. Подробнее — настройка ЭДО в 1С, ЭЦП и КриптоПро и консультация программиста 1С.