Compliance · · 6 min read

Which E-Invoice Formats Luxembourg Public Bodies Accept

Peppol BIS Billing 3.0 and XRechnung 3.0.1 are accepted by Luxembourg's MyGuichet.lu upload. XRechnung 2.2 and 2.3.1 are not accepted from 1 October 2026.

Luxembourg public bodies want a structured invoice that follows the European standard EN 16931, and the safest format is Peppol BIS Billing 3.0 in UBL. If you send through the MyGuichet.lu upload form, the government's page also lists XRechnung 3.0.1, in UBL or CII. It says XRechnung 2.2 and 2.3.1 are no longer accepted from 1 October 2026. That date has now passed.

This page is for the receivables or IT lead at a German, Belgian or French supplier that already produces XRechnung or another EN 16931 format and wants to know whether it will be accepted by a Luxembourg ministry, municipality or public establishment. It covers which format works on which route, what to check in the file, and how to test. It does not cover German domestic rules, which are on our Germany page, or whether you are obliged to e-invoice at all, which our Luxembourg page answers.

Four ordered checks before sending an e-invoice to a Luxembourg public body. One, use Peppol BIS Billing 3.0 or XRechnung 3.0.1, not an older XRechnung. Two, put the Peppol identifiers of sender and recipient in the file under scheme 9938. Three, validate the file with a public validator. Four, send a test to the test endpoints.
Validation comes before any delivery test.

What format does Luxembourg law require?

An electronic invoice that complies with EN 16931 in one of two XML syntaxes: UBL or UN/CEFACT CII. The government's FAQ says every format authorised in the Peppol network meets EN 16931 and one of those two syntaxes. UBL is defined in ISO/IEC 19845:2015, and CII is the UN/CEFACT Cross Industry Invoice.

An invoice must be structured. The government's definition is an invoice in a structured electronic form that software can read and interpret automatically, without human intervention. It adds that a simple PDF, Word or other document sent by e-mail is not one. The same goes for credit notes, which Luxembourg treats in law as invoices. And the date that decides whether the rule applies is the date of the invoice, not the date the contract was signed. The FAQ says any invoice issued after the obligation applies to you must be compliant, even under an older contract.

Which formats does the MyGuichet.lu upload accept?

Six standards, on the government's page for the upload form. The page, last updated 8 June 2026, lists for the "Transmission of a compliant electronic invoice" form:

  • Peppol BIS Billing 3.0 invoice, XML UBL;
  • XRechnung 3.0.1 invoice, XML UBL;
  • XRechnung 3.0.1 invoice, XML UN/CEFACT CII;
  • the same three for credit notes.

It then lists a second group that is accepted only until 1 October 2026: XRechnung 2.2.0 and 2.3.1, in UBL and CII, for invoices, and 2.2.0 and 2.3.1 in UBL for credit notes. The government's reason is that those versions have been obsolete since 2023 and 2024 respectively. From 1 October 2026, it says, XRechnung formats older than 3.0 will no longer be accepted.

We read the page on 30 October 2026. We did not submit a file to the form, so we cannot say how it words the refusal. If your files are 2.3.1, regenerate them at 3.0.1 or move to Peppol BIS Billing 3.0.

Which formats work over Peppol?

Any EN 16931 format that Peppol allows, but only one is safe. The government's FAQ is direct. Peppol BIS Billing 3.0 in UBL is the standard every Peppol access point must be able to receive and process, so it "is strongly recommended to always use this standard for sending".

Other compliant formats, it says, can also travel over Peppol: XRechnung in UBL or CII, Peppol BIS Billing 3.0 in CII, and the Peppol EN 16931 UBL invoice. But in those cases the formats are national or hardly ever used, many or most access points cannot receive them, and it does not recommend them in general.

One more detail from our own check. On 30 October 2026 the Peppol Directory holds an entry for 9938:lu31168204, the identifier the government's FAQ gives for the Ministry for Digitalisation. Its listed document types include Peppol BIS Billing 3.0 and XRechnung variants from 2.2 to 3.0. A directory entry shows what an access point advertises. It does not tell you what the government will accept on that route. We did not find a published rule on XRechnung versions for Peppol delivery. If you rely on it, ask first.

Which formats are not accepted at all?

Anything that is not a structured e-invoice. The two channels the government permits are Peppol and the MyGuichet.lu forms. Its pages say other channels are not allowed, and give e-mail as the example. A PDF is not an e-invoice, and a PDF sent by e-mail is wrong twice over.

What must an XRechnung file carry for Luxembourg?

The Peppol identifiers of sender and recipient, written into the XML. The government's FAQ flags this as the point to check, because XRechnung does not add them automatically. In UBL they go in the sender's cac:AccountingSupplierParty and the recipient's cac:AccountingCustomerParty, as an EndpointID with scheme 9938, for example:

<cbc:EndpointID schemeID="9938">LU31168204</cbc:EndpointID>

The FAQ gives a separate form for CII. We do not reproduce it here: read the FAQ itself for that syntax. Which identifier a Luxembourg body uses, and where to find it, is the subject of our Luxembourg Peppol ID guide.

Two other points from the same FAQ save time:

  • Retention (holdback). EN 16931 and Peppol BIS Billing 3.0 have no field for it. The government recommends the free-text payment terms note, and the MyGuichet.lu form has a "Payment Terms" field for the same purpose.
  • Mistakes cannot be corrected. Once sent, an electronic invoice cannot be rectified. Issue a new, correct invoice, or a credit note, by either channel.

How do I test a file before sending?

Validate it first, then send a test. The government names two public validators: the Peppol validation service and the German eRechnungsvalidator. The Peppol Schematron rules are also published. The FAQ warns that sending through the network is not a conformity check, and that conformity must be checked beforehand.

For a delivery test, the FAQ names two public endpoints in the Peppol test environment (SMK): the Ministry for Digitalisation, 9938:LU31168204, and the Government IT Centre (CTIE), 9938:LU10889245-TEST or 9938:lu10889245. Other public bodies cannot be reached in test. If an invoice is refused after it reaches the recipient, the Ministry says you can ask for the reason at info@efact.public.lu.

What did we not confirm?

Three points, as of 30 October 2026.

  • The upload form's behaviour. We read the government's page and did not submit a file.
  • XRechnung over Peppol. The FAQ discourages it, the directory shows document types advertised, and we found no rule on versions. Treat it as unconfirmed.
  • What every public body's own access point accepts. Many use the State's access point, but many receive through others. The government's own guide says other platforms may differ in layout and content.

What to do next

  1. Check your XRechnung version. Move any 2.2 or 2.3.1 output to 3.0.1.
  2. Check the identifiers in your file. Scheme 9938, and the right number for the buyer.
  3. Validate, then send a test to the test endpoints above.
  4. Choose the route. For one-off invoices the upload form can do. For regular invoicing, a connection that sends Peppol BIS Billing 3.0 saves re-keying each invoice.

Book a demo and bring a sample file if you want a second look. GoRoute is a certified Peppol access point (POP000991). The Peppol API integration page, the developer documentation and the tutorials show how a system connects.


Sources, read 30 October 2026: the government's Dossiers and FAQs and public sector pages on efacturation.public.lu; the Guichet.lu page Transmission of a compliant electronic invoice (updated 8 June 2026); the Peppol Directory entry for 9938:lu31168204. This page is not legal advice.

Frequently asked questions

Can I send an XRechnung to a Luxembourg public body?
Yes, if it is XRechnung 3.0.1, in UBL or CII, and you send it through the MyGuichet.lu upload form. Luxembourg's government page lists those two among the accepted standards. Over Peppol, XRechnung is allowed in principle, but the government says many access points cannot receive it and does not recommend it.
Which XRechnung versions are refused?
XRechnung 2.2.0 and 2.3.1, in UBL and in CII, according to the government's MyGuichet.lu page. It says that from 1 October 2026 formats older than version 3.0 are no longer accepted. The page was last updated on 8 June 2026, and we did not test the form itself.
What format does Luxembourg recommend?
Peppol BIS Billing 3.0 in UBL. The government's FAQ calls it the only standard every Peppol access point is bound to receive and process, and strongly recommends it for sending.
Is a PDF invoice accepted by Luxembourg public bodies?
No. The government defines an electronic invoice as one in structured form that software can read without human help, and says a simple PDF or Word file is not one. Sending a compliant invoice by e-mail is not a permitted channel either.
Do credit notes follow the same format rules?
Yes. Luxembourg treats a credit note as an invoice in law. The MyGuichet.lu upload list names credit notes in Peppol BIS Billing 3.0 UBL and in XRechnung 3.0.1 UBL and CII.
Does GoRoute send XRechnung?
Our Luxembourg page describes Peppol BIS Billing 3.0 invoices and credit notes, validated against EN 16931 before sending. It does not list XRechnung as a format GoRoute produces, so we do not claim it here. If you need it, ask in a demo.

Related posts

Building on Peppol?

GoRoute is a certified Peppol Access Point & SMP. Book a demo or read the docs to get started.

Book a demo Read the docs