5 minute read

How to Validate an XRechnung

E-invoices should never be sent without prior verification. In this article, we explain how electronic invoices in the XRechnung format can be checked for correctness.

Why XRechnung?

The XRechnung is the result of the implementation of the EU Directive 2014/55/EU, which states that contracting authorities in Europe must be able to receive and process e-invoices.

From this directive, the European Committee for Standardisation (CEN) developed EN 16931, which defines the basic components of an electronic invoice. Each member state can use this standard to create a refined guideline that addresses the specific needs of their administration. This is called Core Invoice Usage Specification (CIUS) and XRechnung is Germany’s version of this.

Did you know… ecosio offers a free tool which allows you to check your XML and Peppol messages for correctness and conformity with various formats such as XRechnung, OpenPEPPOL and more.

Validate Peppol and XML documents

XRechnung: creation and transmission

For XRechnung implementation, there are two permitted syntaxes: UBL and UN/CEFACT Cross Industry Invoice (CII). This means that companies must transmit invoices in one of these two syntaxes and authorities must be able to accept and process them.

The Peppol (Pan-European Public Procurement Online) transmission protocol, which was developed to exchange data securely and reliably, is increasingly used for the mass transmission of invoices.

More details on the development, creation and transmission of XRechnung messages can be found in our article How to connect SAP to Peppol to allow the exchange of XRechnung.

Why should I validate XRechnung messages?

Most companies use an ERP system to map and automate processes. These systems normally export invoices in certain formats (e.g. IDoc in the case of SAP). However, this export format does not meet the requirements of XRechnung and must subsequently be converted into UBL or UN/CEFACT CII. This process is referred to as conversion, or mapping.

Ausschnitt einer XRechnung in UBL (Anklicken für größere Darstellung
Section of an XRechnung in UBL (click to enlarge)

Ideally, this conversion is automated – but this alone can’t guarantee the document is correct.

There are two primary error sources:

  • Mandatory fields are missing when the data is entered into the ERP system
  • There is an error in the programme code during the conversion itself

By validating the document before it is transmitted, errors can be detected at an early stage. If, for example, obligatory data has not been entered, this must be communicated to the invoicing party. The biller then has the option of correcting the invoice and exporting it again.

As a general rule, invoices should only be sent if they are flawless and have been recognised as correct by a validation tool. Remember – an incorrect invoice is a reason to dispute the invoice!

How can I validate XRechnung messages?

In order to help you check that XRechnung messages are correct, we have developed a free online tool that can be used to validate a wide variety of Peppol or XML documents immediately.

Our tool can validate your XML documents according to all common specifications worldwide, from EN 16931 (e.g. XRechnung in Germany) to the A-NZ PEPPOL BIS3 for Australia and New Zealand, various UBL types, OpenPEPPOL formats, CII Cross Industry Invoice and many more – for different versions and document types.

If you would like to integrate this helpful tool directly into your own IT environment in the future, this is possible via a RESTful Web Service. For more information, please contact us.

Can I validate XRechnung automatically?

When you use an experienced e-invoicing service provider, such as ecosio, yes!

As well as handling conversion and transmission of XRechnung, a good service provider will also take care of document validation. The data exchange with the service provider works as follows…

The export file from the company’s ERP system is transmitted to the service provider, where the document is automatically converted into the XRechnung format.

Before the invoice is sent to the recipient, it is checked for accuracy, whereupon there are two possible scenarios:

  1. No errors occurred during validation and the creation of a valid XRechnung is thus confirmed. In this case, the invoice can be sent safely to the recipient.
  2. The validation was not successful and the e-invoice does not comply with the XRechnung standard. The incorrect invoice is not sent; instead a status message with a detailed error description is returned to the company’s ERP system. If, for example, data is missing, the invoicing party can then add it, export the document again and have it converted and validated by the service provider again.


Through this process, companies can ensure only invoices that comply with the standard are sent to clients. This way, companies can avoid invoice objections due to non-compliant XRechnungs.


Thanks to the software and tools provided by KoSIT, creating and transmitting XRechnung messages doesn’t have to be complicated. If a service provider is used, only invoices that comply with the standard will be transmitted to the authorities. Meanwhile, any errors detected are flagged in the company’s ERP system and can be corrected.

Want more information?

Still have questions about XRechnung messages or e-invoicing in general? Contact us or use our chat – we’re always happy to help!

SAP ERP® and SAP S/4HANA® are the trademarks or registered trademarks of SAP SE or its affiliates in Germany and in several other countries.

We use cookies to provide an optimal website experience. You decide which one you want to allow. Depending on the setting, however, not all functionalities may be available to you. Data protection & imprint.


E-invoicing in Europe: State of Play

Download our helpful overview of current e-invoicing regulations across the continent