E-Invoice Attachment Extractor
Mine the embedded attachments and the human-readable PDF copy out of received UBL, CII and Factur-X / ZUGFeRD e-invoices — then reconcile them against the structured invoice with a clear findings report.
What it does
Drop a received structured e-invoice — a bare UBL or CII XML or a Factur-X / ZUGFeRD hybrid PDF — into a bundle. On creation the module detects the syntax, extracts every embedded attachment plus the human-readable PDF rendering, and reconciles them against the structured invoice. Each extracted file becomes a downloadable row with its metadata and SHA-256 digest, and the bundle carries a reconciliation status (OK / Warning / Error) and a findings report posted to the chatter.
Format detection & extraction
The bundle's _run_extraction detects whether the
payload is UBL 2.1, UN/CEFACT CII
or a Factur-X / ZUGFeRD PDF, records the carrier
(bare XML or hybrid PDF), and pulls out every embedded file and
the visual PDF copy. Parsed invoice identity — number,
document type, issue date, currency, total, supplier name and VAT
— is stored on the bundle for search and grouping.
Reconciliation & findings
The reconciler flags a missing human-readable PDF, mimeCode mismatches (declared media type vs real content), oversized files over a configurable limit, external links, duplicate content (by SHA-256) and PEPPOL media-type violations. The result is a status plus a list of severity-tagged findings stored on the bundle and posted to chatter.
Feature highlights
- Per-attachment rows — every embedded
file or external link becomes an
einvoice.attachment.itemwith role (PDF copy, supporting doc, embedded invoice XML, external link), UNTDID 1001 type code, media type, size and SHA-256. - Downloadable binaries — decoded attachment bytes are stored so each supporting document or the PDF rendering can be downloaded directly; a one-click action grabs the human-readable PDF copy.
- PEPPOL media-type check — each attachment is marked against the OpenPEPPOL allowed media-type subset.
- Searchable counters — embedded / supporting / external counts, total bytes, MIME mismatch and duplicate counts and a "has PDF copy" flag are stored for filtering.
- Configurable policy — per company, set whether a PDF copy is required, the maximum attachment size, and whether PEPPOL media-type enforcement is auto / always / never.
- Reprocess on demand — re-run detection, extraction and reconciliation on the stored payload at any time.
How it works
- Set the extraction policy (require PDF copy, max size, PEPPOL enforcement) on the company settings.
- Create a bundle and attach the received UBL / CII XML or Factur-X / ZUGFeRD PDF; extraction and reconciliation run automatically.
- Review the findings report and reconciliation status, then download the human-readable PDF or any supporting document.
Scope & disclosure
This module extracts and reconciles attachments from e-invoice files you already hold; it does not connect to any e-invoicing network and does not validate the full invoice against a schema or tax rules. It complements your structured-invoice workflow by surfacing the embedded supporting documents and integrity issues. More at pokutsoft.com/.
Screenshots
Bundles
Extract Attachments
Attachments
Settings
Update date: 2026-07-02