SAP invoices in. Factur-X XML out.
Upload one of the SAP invoice PDFs. Every invoice inside it is read, its arithmetic re-checked, and written out as EN 16931 XML — validated against the Factur-X schema before you ever see it.
- Standard
- ZUGFeRD 2.5
- Profile
- EN 16931
- Factur-X
- 1.0.9
- Guideline
- urn:cen.eu:en16931:2017
- Checked against
- Factur-X XSD
What happens to the file
-
1.0
Discover
Every page is scanned for a labelled invoice number, and the continuation pages that follow it are read as part of the same invoice. A page carrying two different numbers stops the run rather than guessing which one owns the page.
-
2.0
Parse
The SAP form is read line by line: buyer address, line items, freight and discounts, payment terms, VAT rate.
-
3.0
Validate
Every total is recomputed from the lines and compared with the printed one. The seller VAT ID and IBAN are checked. A line that does not add up fails the invoice.
-
4.0
Emit
A CII document is written for each invoice and checked against the EN 16931 schema. Only then does it reach your download.
Known limits
- An invoice that runs over several pages is read whole, but only when its pages are consecutive. The same number on non-consecutive pages is refused rather than stitched together.
- The parser is written for one SAP form. A different layout fails rather than producing a plausible wrong invoice.
- Uploads are capped at 50 MB. Conversion runs at roughly a fifth of a second per invoice, so a few hundred in one file is a couple of minutes, not an afternoon.
- No PDF is produced here. This app emits the XML and the audit JSON; the hybrid PDF/A-3 is a separate run of the converter.