Зачем конвертировать P7M в XML?
Итальянские электронные счета-фактуры, отправляемые через SDI (Sistema di Interscambio), приходят в виде файлов XML, подписанных и упакованных в формат .p7m. Чтобы импортировать счет в бухгалтерское ПО или обработать его программно, необходимо распаковать .p7m, чтобы получить доступ к исходному .xml. XML всегда находился внутри контейнера - извлечение не является конвертацией формата.
Способы конвертации P7M в XML
OpenSSL OPEN-SOURCE
Запустите openssl smime -verify -in invoice.xml.p7m -inform DER -noverify -out invoice.xml для извлечения внутреннего .xml; используйте openssl cms с теми же флагами, если эта команда не сработает.
Dike (InfoCert) FREE
Откройте Dike, перетащите файл .p7m в окно и нажмите «Save Document» или «Extract» после проверки, чтобы сохранить внутренний файл .xml.
Aruba Sign FREE
Откройте Aruba Sign, нажмите «Verify», выберите .p7m, затем используйте «Save» или «View Document» для экспорта внутреннего .xml.
Об этих форматах
Файл .p7m - это контейнер PKCS#7/CMS, который оборачивает исходный документ (обычно PDF или XML-счет) вместе с цифровой подписью и/или шифрованием. Чтобы открыть его, используйте DiKe…
Открыть детали .P7M →Файл XML - это текстовый документ, в котором структурированные данные хранятся во вложенных пользовательских тегах. Поскольку это обычный текст, его открывает любой текстовый редактор -…
Открыть детали .XML →Качество и на что обратить внимание
- Извлеченный XML идентичен оригиналу - никакие данные не изменяются и не теряются в процессе извлечения.
- После извлечения XML становится неподписанным; сохраните оригинальный
.p7m, если вам нужно юридическое доказательство того, что документ был подписан. - Если извлечение не удается, попробуйте заменить
-inform DERна-inform PEMв команде OpenSSL - некоторые файлы.p7mимеют кодировку Base64, а не бинарную DER.
Часто задаваемые вопросы
Почему итальянские электронные счета приходят в формате `.p7m`, а не в обычном `.xml`?
.p7m.Можно ли извлечь XML без проверки подписи?
-noverify в команде OpenSSL пропускает проверку цепочки доверия, позволяя получить файл даже без установленных сертификатов удостоверяющего центра.