E-invoice error explained

PDF without embedded invoice data

The validator found no embedded invoice XML in the uploaded PDF, so there is nothing to check against EN 16931.

What the rule checks

The validator found no embedded invoice XML in the uploaded PDF, so there is nothing to check against EN 16931. Since 1 January 2025 businesses in Germany must be able to receive e-invoices. For domestic B2B supplies a plain PDF only remains an acceptable invoice during the transition periods.

Official rule text

Summary in our own words, not an official rule text: A ZUGFeRD or Factur-X invoice carries the invoice data as an embedded XML file. From ZUGFeRD 2.1 it is named factur-x.xml, for the XRECHNUNG profile xrechnung.xml, in ZUGFeRD 2.0 zugferd-invoice.xml. The file is linked to the document as an associated file (AFRelationship, usually Alternative or Data). A PDF without this file is not an e-invoice.

Summary of the requirement in our own words.

Typical causes

  • The invoice was saved as PDF from the print dialog. That produces a normal PDF only.
  • The XML was created but sent as a separate file instead of being embedded.
  • A mail client, scanner or PDF tool rewrote the PDF and dropped the attachments.
  • The embedded file has a different name, such as invoice.xml, so it is not recognised as invoice data.

How to fix it

Create the invoice with your system's ZUGFeRD function. Printing to PDF does not create one. Check the attachments panel of a PDF viewer for factur-x.xml (or xrechnung.xml). If you only have an XML file, such as an XRechnung, upload that file directly.

Example

Wrong (XMP)

<!-- no Factur-X extension in the XMP metadata,
     no embedded file in the PDF -->

Right (XMP)

<rdf:Description rdf:about=""
    xmlns:fx="urn:factur-x:pdfa:CrossIndustryDocument:invoice:1p0#">
  <fx:DocumentType>INVOICE</fx:DocumentType>
  <fx:DocumentFileName>factur-x.xml</fx:DocumentFileName>
  <fx:Version>1.0</fx:Version>
  <fx:ConformanceLevel>EN 16931</fx:ConformanceLevel>
</rdf:Description>

In Dynamics 365, Business Central and Finance

Sales / Project Operations: Sales and Project Operations have no e-invoice output out of the box. In the WBS Invoice Accelerator for Dynamics 365 an e-invoice is only created by the buttons E-Invoice (ZUGFeRD) and E-Invoice (XRechnung), or by Generate e-invoice in the editor. A PDF from the print dialog that Send To… opens in the editor is a plain PDF. The ZUGFeRD file is attached to the invoice as a note.

Business Central: From version 26.3, ZUGFeRD is a document format on the E-Document Services page. Each Document Sending Profile supports only one format.

Finance: The German setup creates an xRechnung XML file. With eInvoice attachment set to Yes on the customer, the XML also carries a PDF copy. Upload the XML file.

Related error codes

Check your invoice for free. The validator shows every finding with an explanation and its location in the XML.