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

Почему документы теряются между ЭДО, учетом и архивом
Самый частый симптом: документ виден в ЭДО, но бухгалтерия не может провести операцию, а в архиве нет финальной версии. Бывает и наоборот: в учете уже есть проводка, но по ней нельзя быстро открыть подписанный файл или найти цепочку согласований.
Такие разрывы почти всегда появляются в одном из четырех мест: статус, файл, реквизиты или связка с хозяйственной операцией. Например, документ загрузился в учет, но статус "Подписан" не доехал, и система не дает закрыть период. Или статус пришел, а файл (или подпись) - нет, и в архив уходит пустая карточка.
Отдельная боль - реквизиты. ЭДО часто хранит то, что нужно для обмена (контрагент, номер, даты, тип), а учет и архив требуют строгих полей: организация, договор, статья затрат, центры ответственности, срок хранения. Если часть полей не синхронизируется или заполняется "как-нибудь", документ не проходит контроль, попадает в исключения или зависает на выгрузке.
Цепочку легко ломают ручные правки. Если в одной системе бухгалтер поменял номер или дату "для красоты", а в другой эти поля считаются ключевыми, связь распадается: при следующей синхронизации создается дубль или обновляется не тот документ. То же происходит, когда в архиве вручную заменяют файл на "правильный" скан, а ЭДО продолжает считать актуальной старую версию.
Чтобы этого не было, заранее договоритесь о правилах: какие статусы считаются истиной, какие поля можно менять вручную, что является главным идентификатором и кто разбирает ошибки. Без этих договоренностей даже хорошо сделанный обмен между ЭДО и учетом превращается в постоянный поиск пропаж и спор о том, где правильная версия документа.
Карта процесса: что и куда должно попадать
Чтобы документы не терялись, сначала нарисуйте простую карту обмена между тремя контурами: ЭДО (где документ появляется и подписывается), бухгалтерия (где он отражается в учете и влияет на проводки) и архив (где хранится финальная версия с доказательствами подписания). Без такой схемы настройка обмена часто превращается в набор разрозненных выгрузок.
Описывайте не системы, а события, которые запускают обмен. Обычно это: получение входящего документа, подписание обеими сторонами, отказ или отклонение, исправление (корректировка), аннулирование. У каждого события должен быть понятный результат: что именно передаем, куда и что считаем завершением.
Полезно сразу зафиксировать роли и ожидания. Бухгалтеру нужен документ в учете с корректными реквизитами и понятным статусом. Юристу важны подтверждения подписей и неизменность. Архивариусу нужна финальная версия и срок хранения. ИТ отвечает за очереди обмена, логи и повторную доставку.
Где истина по статусам и файлам
Сразу решите, какой контур главный по разным видам данных:
- по статусам подписания и юридической значимости обычно главный ЭДО
- по учетным признакам и отражению в регистрах главный учет
- по хранению финальных файлов и доказательств главный архив
- по маршрутизации и ошибкам обмена главный интеграционный журнал (если он есть)
Небольшой пример карты
Поставщик прислал акт. В ЭДО он отмечен как полученный и ушел на согласование юристу. После подписи статус меняется на "подписан", а в бухгалтерию уходит карточка с реквизитами и привязкой к файлу. Когда бухгалтер провел документ, в ЭДО возвращается отметка "отражен в учете". Затем в архив отправляется финальная версия файла вместе с подписями и датой завершения, чтобы через год не искать, где настоящий документ.
Единые идентификаторы: как правильно связывать записи
Что считать ключом
Чтобы документ не пропадал между ЭДО, бухгалтерией и архивом, у него должен быть один главный технический ключ. Чаще всего это внутренний уникальный ID из ЭДО (GUID или аналог). Его важно сохранять без изменений при передаче в учетную систему и дальше в архив, даже если документ переименовали, перенумеровали или исправили реквизиты.
Номер и дата удобны для людей и поиска, но как ключ работают плохо. Номера могут повторяться у разных контрагентов, иногда меняются при корректировках, а дат может быть несколько: дата составления, дата подписания, дата получения.
Практичное правило: GUID из ЭДО - это паспорт документа, а номер и дата - витрина.
Заранее договоритесь, какие идентификаторы вы храните в каждой системе как обязательные:
- GUID документа из ЭДО (ключ для синхронизации)
- ID пакета или цепочки (если есть: исходник, исправление, корректировка)
- идентификаторы сторон: БИН/ИИН, плюс код филиала или подразделения (если применимо)
- ID связанного объекта: договор, заказ, поставка, платеж (именно ID, а не названия)
- ID файла(ов) и подписи(ей), чтобы архив однозначно сопоставлял вложения
Как решать дубли и версии
Больше всего путаницы возникает, когда похожий документ приходит повторно. Лучше заранее зафиксировать простые правила.
Если совпал GUID - это тот же документ, даже если поменялись номер или сумма (обычно обновление данных или уточнение).
Если GUID другой, но номер, дата и контрагент совпадают - это не обязательно дубль. Это может быть новая версия, исправление или документ по другому договору. Здесь спасают связки: ID договора, заказа или поставки.
Пример: поставщик прислал счет, а позже отправил исправленный. Номер тот же, но в ЭДО это новый GUID и есть ссылка на предыдущий. В бухгалтерии вы храните оба GUID, а в архиве фиксируете цепочку версий. Тогда видно, какой документ актуальный, и ничего не теряется.
Статусы: какой набор синхронизировать и как не запутаться
Проблемы начинаются, когда в каждой системе свой язык. В ЭДО документ может быть "подписан", в бухгалтерии он еще "на исправлении", а в архиве уже "принят на хранение". Чтобы обмен работал предсказуемо, нужен минимальный набор статусов, который понимают все три стороны.
Минимальный общий набор
Хорошо работает схема "ядро + расширения": синхронизируйте небольшой общий набор, а специфичные статусы оставляйте внутри каждой системы, сохраняя их в техническом поле или комментарии.
Обычно достаточно пяти базовых статусов:
- Черновик (есть карточка, но обмен не начат)
- Отправлен/получен (факт доставки и получения)
- Подписан (подписан обеими сторонами)
- Отклонен (нужна корректировка или отказ)
- Аннулирован (документ отменен по правилам)
В ЭДО эти статусы часто уже есть: отправлен, получен, подписан, отклонен, аннулирован. В бухгалтерии близкие смыслы обычно выражают "принят к учету", "проведен", "сторнирован", "на исправлении". Для архива важны "принят на хранение", "заморожен" (нельзя менять), "заменен версией".
Правила переходов и кто имеет право
Чаще всего документ теряется не из-за самого статуса, а из-за неверного перехода. Типичный сценарий: бухгалтерия ставит "проведен", а потом из ЭДО прилетает "отклонен" - и запись зависает.
Помогают простые запреты и роли:
- Нельзя переводить в "принят на хранение", пока не "подписан".
- "Аннулирован" не должен автоматически превращаться в "сторнирован" без подтверждения бухгалтера.
- "Отклонен" в ЭДО должен ставить документ в бухгалтерии "на исправлении", а не удалять.
- "Заморожен" в архиве запрещает любые изменения карточки, кроме добавления служебной отметки.
- Менять статусы может владелец процесса: ЭДО отвечает за обмен и подписи, учет - за отражение операций, архив - за хранение.
Так статусы становятся не набором слов, а понятной логикой: документ не исчезает, а остается в предсказуемом состоянии.
Атрибуты документа: что обязательно передавать в бухгалтерию и архив
Если синхронизировать только файл и номер, документ почти неизбежно потеряется: в учете он не сядет на нужный объект, а в архиве его будет сложно найти и подтвердить подлинность. Поэтому имеет смысл передавать не "все подряд", а минимальный, но достаточный набор атрибутов.
Ниже - атрибуты, которые стоит считать обязательными, чтобы документ корректно отражался в учете и надежно хранился в архиве.
- Подписи и подтверждение подлинности: кто подписал (ФИО), роль/сторона (например, поставщик, покупатель), время подписания, признак действительности подписи (валидна/невалидна/требует проверки). Для архива это доказательство, для бухгалтерии - контроль закрытия.
- Даты для разных задач: дата составления, дата получения, дата подписания, дата отражения в учете. Эти даты часто не совпадают, но каждая влияет на период, сроки оплаты, НДС и внутренние регламенты.
- Стороны и "логистика" документа: поставщик и покупатель, а также грузоотправитель и грузополучатель, если они отличаются. Это помогает правильно выбрать договор, склад/подразделение и понять, кто отвечает за расхождения.
- Финансовые реквизиты и табличная часть: сумма, НДС (ставка и сумма), валюта и курс, плюс строки с номенклатурой/услугами, количеством и ценой. Если строки не передавать, бухгалтерии придется вводить вручную, а это источник ошибок.
- Классификация и связи: статья затрат, проект, центр ответственности, признаки "оригинал/исправление", "корректировка" и ссылка на предыдущий документ (например, на исходный счет-фактуру). Это защищает от двойного отражения и путаницы с корректировками.
Практический пример: поступила накладная, затем пришла корректировка на уменьшение. Если в учет не уйдет признак "корректировка" и ссылка на исходный документ, ее могут провести как новый первичный документ. А в архиве без связи "предыдущий документ" поиск цепочки займет часы и закончится ручной сверкой.
Хорошее правило: все, что влияет на проводки, налоги, поиск и доказательство подписи, должно быть атрибутом, а не только текстом внутри файла.
Файлы, подписи и версии: как не потерять вложения
При настройке обмена часто синхронизируют только карточку документа и статус. А потери начинаются там, где у документа несколько файлов, подпись в отдельном контейнере и правки после замечаний.
Что именно сохранять вместе с документом
Договоритесь о минимальном составе пакета, который должны понимать все системы. Обычно он включает основной файл, приложения (спецификации, акты, сканы), печатную форму (если ее используют для сверок), квитанции и служебные подтверждения обмена (доставка, прием, отказ), а также протоколы/уведомления об ошибках, если документ не дошел.
Важно, чтобы бухгалтерия и архив получали не один файл, а весь пакет. Иначе потом нельзя доказать состав отправки или восстановить цепочку.
Для контроля целостности храните признаки файла: хэш (например, SHA-256), размер, формат, имя файла и дату загрузки. Если в одной системе файл называется иначе или отличается размер, это повод сразу пометить расхождение.
Подписи, штампы и версионность
Электронная подпись часто живет отдельным файлом или контейнером. Архиву нужен сам контейнер подписи и метаданные проверки: кто подписал, когда, какой сертификат, результат проверки, штампы времени (если применяются). Не ограничивайтесь отметкой "подписано" в статусе.
С версионностью главное правило простое: новое не затирает старое. Если документ вернули на исправление, фиксируйте новую версию как отдельный объект, привязанный к одной карточке: с номером версии и причиной изменения. Практичный вариант:
- ID документа + ID версии как уникальная пара
- признак "актуальная версия" только у одной записи
- запрет на удаление файлов версий
- ссылка "исправлено на основании версии X"
И еще один принцип, который снижает споры: определите, откуда архив всегда забирает файл. Например, архив берет только из ЭДО как источника юридически значимого пакета, а учет хранит копию для работы. Тогда проще расследовать, где появилась неправильная версия.
Пошагово: как настроить синхронизацию статусов и атрибутов
Держитесь простого порядка: сначала выравниваем справочники, потом поля, и только затем включаем автоматическую отправку событий. Иначе документ встанет в очередь с ошибкой просто потому, что не найден контрагент.
1) Синхронизируйте базовые справочники
Договоритесь, где источник правды для каждого справочника, и синхронизируйте их по расписанию или по изменениям. Чаще всего это контрагенты, договоры и номенклатура. Переносите не только названия, но и ключи: ИИН/БИН, номер и дату договора, коды товаров или услуг.
2) Сделайте таблицу маппинга полей и статусов
Один и тот же смысл в разных системах часто называется по-разному. Зафиксируйте это в таблице: реквизит ЭДО - поле учета - поле архива. Отдельно опишите правила для статусов: что считается конечным, какие статусы промежуточные и какие нельзя откатывать.
3) Настройте триггеры отправки
Выберите события, после которых данные должны уходить дальше. Обычно это получение документа, подписание, отказ, отмена и отправка в архив. Например, в бухгалтерию часто имеет смысл передавать документ только после статуса "подписан обеими сторонами", а в архив - после завершения процесса (по вашему регламенту: после закрытия периода или после финального согласования).
4) Очереди, повторы и защита от потерь
Обмен должен уметь повторять отправку при сбое и не создавать дубликаты. Используйте очередь сообщений, ограничение числа повторов и правило идемпотентности: повторная отправка одного и того же документа не меняет данные "второй раз", а подтверждает доставку.
5) Включите журнал обмена, пригодный для расследований
Логи должны помогать быстро понять, где застряло. Минимальный набор:
- внешний идентификатор документа и внутренние ID во всех системах
- событие (триггер) и время отправки
- статус до и после синхронизации
- результат (успех, ошибка) и текст ошибки
- количество повторов и текущая очередь
Тогда можно сверять "в ЭДО подписан, в учете проведен, в архиве закрыт" без ручных поисков по разным журналам.
Пример: путь одного документа от ЭДО до учета и архива
Сценарий
Компания получает от контрагента входящий счет-фактуру (или акт) через ЭДО. Цель простая: документ один раз появляется в ЭДО, один раз отражается в учете и один раз попадает в архив - без дублей и без пропавших файлов.
Шаг 1. Документ приходит в ЭДО и получает первичный идентификатор (ID) и дату получения. Здесь важно сохранить два значения: внешний ID документа у оператора (или GUID) и внутренний ID в вашей базе. Если связка не сохранится, дальше документ легко станет "неизвестным" для учета.
Шаг 2. Ответственный проверяет реквизиты: контрагент, ИИН/БИН, номер и дата, НДС, сумма, договор/заказ. После проверки документ переводят в понятный статус, например "проверен, готов к подписанию". На практике именно такие статусы часто используют как сигнал: можно создавать запись в учете.
Шаг 3. Бухгалтерия получает карточку документа, создает операцию и обязательно сохраняет ссылку на тот же ID из ЭДО. Если документ относится к конкретной поставке или услуге, его привязывают к основанию (заказ, накладная, поступление). Если бухгалтерия меняет сумму или дату, это должно вернуться в ЭДО как комментарий или отдельное событие, а не "тихо" жить только в учете.
Шаг 4. После подписания обеими сторонами в ЭДО появляется финальный статус, например "подписан/юридически значим". Тогда в архив уходит комплект: оригинальный файл, подписи, квитанции и протоколы (если есть), плюс метаданные.
Что должно совпасть в трех системах
Проверьте, что синхронизируются как минимум:
- единый ID (внешний и внутренний, без пересоздания)
- статус (принят, проверен, подписан, отклонен) и дата изменения
- сумма и валюта, НДС (если применимо)
- основной файл и все вложения, плюс подписи
- привязка к операции в бухгалтерии и номер документа
Если хотя бы один из этих элементов живет отдельно, документ становится трудно найти: в ЭДО он подписан, в учете отражен, а в архиве лежит без суммы или без файла.
Контроль: как быстро находить расхождения и зависшие документы
Даже хорошо настроенный обмен может давать сбои: документ пришел в ЭДО, но не появился в учете, или в архив ушла не та версия файла. Контроль лучше строить как регулярную сверку, а не как разбор пожара раз в квартал.
Быстрая сверка по реестру
Основа контроля - единый реестр обмена. В нем видно, сколько документов поступило, сколько успешно обработано и сколько завершилось ошибкой. Сверяйте и количество, и ключевые признаки: дату, тип, сумму, контрагента.
Удобно держать 4-5 показателей, которые можно проверить за 5 минут:
- поступило за период / передано в бухгалтерию / передано в архив
- обработано успешно и с ошибкой
- документов без финального статуса дольше N дней
- расхождения по сумме или дате между ЭДО и учетом
- доля документов с ручными правками
Как ловить зависшие и ошибки обмена
Для зависших задайте порог, например 3 или 5 рабочих дней без финального статуса. Дальше правило простое: либо документ двигается дальше, либо у него должна быть причина остановки.
Алерты лучше настраивать не только на факт ошибки, но и на ее тип. Самые частые: не найден контрагент, неверный формат документа, отсутствует обязательный реквизит, недоступен архив или хранилище. В уведомлении сразу указывайте, кто отвечает за исправление: бухгалтерия, ИТ, оператор ЭДО или владелец справочника контрагентов.
Раз в неделю помогает выборочная проверка 10-20 документов: совпадает ли статус в трех системах и открывается ли файл в правильной версии с подписью. Например, если в учете "проведен", а в архиве лежит черновик без подписи, значит где-то теряется вложение или версия.
Чтобы разбор не превращался в переписку, делайте короткий отчет: причина, сколько документов затронуто, кто исправляет, срок.
Частые ошибки при интеграции и как их избежать
Самые неприятные сбои обычно происходят не из-за падений, а из-за мелких договоренностей, которые не зафиксировали. В итоге документ есть в одной системе, а в другой его как будто не было.
Одна из частых ошибок - делать ключ документа из номера и даты. Стоит контрагенту прислать исправление или перевыставить документ, и вы получаете дубль: номер тот же, дата похожая, а по сути это новая сущность. Надежнее связывать записи по неизменяемому идентификатору (ID из ЭДО) плюс ID версии или пакета.
Вторая ловушка - синхронизировать статус "как есть" без понимания причины изменения. Если учет или архив получают промежуточные статусы, которые им не нужны, легко сломать цепочку: документ начинает "прыгать" туда-сюда, а ответственные видят неверную картину. Лучше заранее определить, какие события действительно должны уходить в другие системы, а какие остаются внутренними.
Что чаще всего ломает учет
Проблемы всплывают, когда в бухгалтерию попадает только шапка документа, без табличной части. Тогда суммы перестают сходиться: в ЭДО одна номенклатура и НДС по строкам, а в учете - одна агрегированная сумма. Если документ влияет на проводки, передавайте строки (позиции), ставки НДС, валюту, скидки и итоги так, чтобы их можно было проверить.
Еще одна типичная ошибка - затирать старые файлы при обновлении. В ЭДО могли появиться исправленный PDF, новый XML или дополнительные вложения, а в архиве остается только последняя версия. Правильнее хранить историю: кто заменил файл, когда, по какой причине, и к какой версии относится подпись.
Технические мелочи, которые дают большие расхождения
Даже часовые пояса и форматы дат могут испортить хронологию: статус "подписан" вдруг оказывается раньше "получен", потому что одна система пишет UTC, а другая - локальное время. Сведите время к одному стандарту и передавайте его явно.
Без журнала обмена тоже далеко не уехать: если не фиксировать отправку, прием, ошибки, повторные попытки и связь с конкретным документом и его версией, вы не поймете, где пропало.
Короткая проверка перед запуском:
- не используете номер и дату как единственный ключ
- передаете не только статус, но и событие/причину, которое его изменило
- отправляете табличную часть, а не только итоговую сумму
- храните версии файлов и подписей, а не перезаписываете их
- ведете журнал обмена с понятными ошибками и корреляционным ID
Простой пример: поставщик прислал УПД, затем прислал исправление. Если ключ - "номер+дата", в учете появятся два документа, а в архиве останется один файл. Если ключ - ID документа + ID версии, вы увидите один документ с двумя версиями и нормальной историей статусов.
Быстрый чек-лист и следующие шаги
Перед запуском в промышленную эксплуатацию проверьте базовые вещи, без которых документы чаще всего теряются между системами:
- Единый идентификатор документа: один ID, который хранится в ЭДО, учете и архиве, плюс понятное правило для копий и исправлений.
- Маппинг статусов: согласованный список статусов и переводов между ними (например, создан, отправлен, подписан, отклонен, аннулирован, архивирован) и что именно считается финалом.
- Обязательные реквизиты: контрагент, договор, дата, сумма, НДС, валюта, подразделение, ответственное лицо, тип документа, срок хранения, основание для проводок.
- Версии, вложения и подписи: как передаются файлы, приложения, подписи и отметки времени, и что делать при обновлении версии.
- Сквозной журнал обмена: кто, когда и что отправил, что приняла система, что отклонила, и где смотреть ошибки.
Дальше договоритесь об ответственности. На практике сбои долго живут не из-за техники, а из-за серых зон: кто обновляет справочники контрагентов и договоров, кто чинит маппинг статусов, кто закрывает инциденты и в какие сроки. Это лучше закрепить простым регламентом и одним каналом для разборов.
Шаги, которые обычно дают быстрый эффект:
- начните с пилота на одном типе документов (например, входящие счета) и доведите его до нулевой ручной правки
- добавьте контроль расхождений: ежедневный отчет по зависшим и по документам без обязательных реквизитов
- подготовьте хранение и резервирование: отдельные политики для файлов, метаданных и журнала обмена
- настройте мониторинг: очередь сообщений, ошибки, задержки, переполнения и понятные уведомления
- после пилота расширяйте охват по одному процессу за раз, не смешивая разные правила учета
Если для этого нужна инфраструктура - серверы под архив, рабочие станции для бухгалтерии, отказоустойчивое хранение и поддержка 24/7 - GSE.kz как системный интегратор и производитель оборудования в Казахстане может помочь с подбором и поставкой техники и сопровождением.
FAQ
Какой идентификатор лучше использовать, чтобы документ не «рассыпался» между ЭДО, учетом и архивом?
Главный ключ — неизменяемый технический идентификатор из ЭДО (GUID/ID). Его нужно хранить в учете и архиве как обязательное поле и никогда не «переизобретать» по номеру и дате. Номер и дата оставляйте для удобства людей и поиска, но не используйте их как единственный способ связать записи.
Какие статусы действительно стоит синхронизировать между тремя системами?
Синхронизируйте короткое «ядро» статусов, которое одинаково понимают все: получен/отправлен, подписан, отклонен, аннулирован и базовый статус создания. Все внутренние статусы вроде «на согласовании у юриста» оставляйте внутри системы, но сохраняйте их в техническом поле или комментарии, чтобы не ломать общую логику.
Кто должен быть «истиной» по статусам: ЭДО, бухгалтерия или архив?
Обычно источник истины по юридической значимости и подписанию — ЭДО, по учетным действиям (проведен, сторнирован, закрыт период) — учет, по хранению финального комплекта файлов — архив. Важно зафиксировать это в правилах, иначе одна система будет «перетягивать» статус назад и документ начнет зависать или дублироваться.
Какие атрибуты документа обязательно передавать в учет, чтобы он проводился без ручного ввода?
Передавайте не только шапку, но и то, что влияет на проводки и контроль: стороны, суммы, НДС, валюту, даты (составления, получения, подписания), а также табличную часть, если она нужна для проверки и отражения. Плюс обязательно отдавайте связку с основанием: ID договора, заказа, поставки или другого объекта, к которому бухгалтерия должна привязать операцию.
Что именно должен получить архив, чтобы хранение считалось полноценным?
Архиву нужен финальный юридически значимый пакет: основной файл, все приложения, контейнер(ы) подписей и подтверждения обмена, а также метаданные проверки подписи (кто подписал, когда, результат проверки). Если в архив уходит только PDF без подписи и квитанций, потом будет сложно доказать подлинность и восстановить цепочку событий.
Как правильно учитывать версии, исправления и корректировки, чтобы не потерять историю?
Не затирайте старое новым. Исправления и корректировки храните как отдельные версии с явной связью с исходником, чтобы было видно, какая версия актуальна и на основании чего она появилась. Практично разделять «ID документа» и «ID версии» и фиксировать причину изменения, иначе в архиве и в учете быстро появятся спорные «правильные» файлы.
Почему ручные правки так часто приводят к дублям и «пропажам», и как это ограничить?
Ручные правки ключевых полей (номер, дата, контрагент, сумма) легко рвут связь между системами и создают дубли при следующей синхронизации. Если правки неизбежны, ограничьте список полей, которые можно менять, и делайте это через согласованный сценарий: с записью причины и возвратом изменения в источник, который считается главным по этим данным.
Как быстро понять, какие поля не доезжают, и настроить маппинг без хаоса?
Сделайте таблицу соответствий: поле ЭДО → поле учета → поле архива, плюс правила преобразования форматов (например, даты, валюты, коды подразделений). Отдельно опишите, какие поля обязательны и что делать при отсутствии значения: отклонять документ в исключения, запрашивать заполнение или подставлять справочное значение по правилам.
На каких событиях лучше строить обмен, чтобы статусы не «прыгали»?
Передавайте события, которые реально двигают процесс: получение документа, финальное подписание, отклонение, аннулирование и момент передачи в архив. Частая практика — отправлять в учет после «подписан обеими сторонами», а в архив после завершения процесса по вашему регламенту. Главное — сделать триггеры одинаково понятными всем участникам.
Как организовать контроль и расследование, если документ «застрял» или исчезла финальная версия?
Нужен сквозной журнал обмена с корреляцией: ID документа из ЭДО, ID в учете, ID в архиве, событие, время, результат и текст ошибки. Для контроля заведите регулярную сверку: документы без финального статуса дольше N дней, расхождения по сумме/дате, и проверку открываемости финального файла с подписью. Так вы находите проблемы до закрытия периода.