XRechnung Beispiel-Datei — Aufbau einer echten XRechnung

Aktualisiert am 30. Juli 2026 · von Jörn Schäfer

Kurz gesagt: Eine XRechnung besteht aus benannten Feldern in XML, die in der Norm EN 16931 als Business Terms mit den Kennungen BT-1 bis BT-181 festgelegt sind. XRechnung PRO stellt eine vollständige Beispieldatei kostenlos zum Herunterladen bereit, mit der sich der Aufbau nachvollziehen und die eigene Verarbeitung testen lässt.

Aufbau einer XRechnung in vier Blöcken Eine XRechnung besteht aus vier Blöcken: dem Kopf mit Standardangabe, Rechnungsnummer und Datum, den Beteiligten mit Verkäufer und Käufer, den Rechnungspositionen mit Menge, Preis und Steuersatz sowie den Summen aus Netto, Steuer und Brutto. KopfCustomizationID (XRechnung 3.0)BT-1 RechnungsnummerBT-2 Datum · BT-5 WährungBT-10 Leitweg-ID (Behörden)BeteiligteBT-27 VerkäuferBT-31 USt-IdNr.BT-44 KäuferAnschriften mit LandPositionenBeschreibung je ZeileMenge mit unitCodeEinzelpreisSteuerkategorie und -satzSummenBT-109 NettoBT-110 SteuerBT-112 BruttoBT-115 Zahlbetrag BT-Nummern nach EN 16931 — sprach- und softwareunabhängig
Jede Angabe steht in einem benannten Feld. Deshalb kann die Software des Empfängers die Rechnung einlesen, ohne dass jemand etwas abtippt.

Die Beispieldatei

Die vollständige Datei können Sie direkt herunterladen und in einem Texteditor öffnen:

Wenn Sie sehen wollen, wie dieselbe Rechnung lesbar aussieht, laden Sie die Datei in den kostenlosen XRechnung-Konverter.

Der Kopf der Datei

Am Anfang steht, um welche Art Dokument es sich handelt und nach welchem Standard es erzeugt wurde:

<?xml version="1.0" encoding="UTF-8"?>
<Invoice xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2">
  <cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:xoev-de:kosit:standard:xrechnung_3.0</cbc:CustomizationID>
  <cbc:ID>RE-2026-0125</cbc:ID>
  <cbc:IssueDate>2026-07-14</cbc:IssueDate>
  <cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>
  <cbc:BuyerReference>991-12345-67</cbc:BuyerReference>

Die Zeile mit der CustomizationID ist die wichtigste der ganzen Datei. Sie sagt: dies ist eine XRechnung nach Version 3.0, und sie erfüllt EN 16931. Fehlt sie, ist die Datei keine XRechnung.

Die wichtigsten Felder im Überblick

BTBedeutungUBL-ElementPflicht
BT-1Rechnungsnummercbc:IDja
BT-2Rechnungsdatumcbc:IssueDateja
BT-5Währungcbc:DocumentCurrencyCodeja
BT-10Leitweg-IDcbc:BuyerReferencebei Behörden
BT-27Name des Verkäuferscac:AccountingSupplierPartyja
BT-31USt-IdNr. des Verkäuferscac:PartyTaxSchemewenn vorhanden
BT-44Name des Käuferscac:AccountingCustomerPartyja
BT-9Fälligkeitsdatumcbc:DueDatenein
BT-109Nettobetragcbc:TaxExclusiveAmountja
BT-110Steuerbetragcbc:TaxAmountja
BT-112Bruttobetragcbc:TaxInclusiveAmountja
BT-115Zahlbetragcbc:PayableAmountja

Eine Rechnungsposition

Jede Position steht in einem cac:InvoiceLine-Block:

<cac:InvoiceLine>
  <cbc:ID>1</cbc:ID>
  <cbc:InvoicedQuantity unitCode="C62">1</cbc:InvoicedQuantity>
  <cbc:LineExtensionAmount currencyID="EUR">500.00</cbc:LineExtensionAmount>
  <cac:Item>
    <cbc:Name>Wartungsvertrag Juli 2026</cbc:Name>
    <cac:ClassifiedTaxCategory>
      <cbc:ID>S</cbc:ID>
      <cbc:Percent>19.00</cbc:Percent>
    </cac:ClassifiedTaxCategory>
  </cac:Item>
  <cac:Price>
    <cbc:PriceAmount currencyID="EUR">500.00</cbc:PriceAmount>
  </cac:Price>
</cac:InvoiceLine>

Drei Dinge fallen dabei auf und führen in der Praxis zu Fehlern:

  • Beträge immer mit Punkt als Dezimaltrennzeichen. 500.00, nicht 500,00. Das ist XML, nicht Excel.
  • Der unitCode ist verpflichtend. C62 bedeutet „Stück“, HUR bedeutet „Stunde“. Die Codes stammen aus der UN/ECE-Empfehlung 20.
  • Die Steuerkategorie ist ein Code, kein Text. S für den Regelsteuersatz, AE für Reverse Charge, E für steuerfrei, Z für Nullsatz.

Die häufigsten Fehler in selbst erzeugten Dateien

Aus der Praxis der Validierung, absteigend nach Häufigkeit:

  1. Summen passen nicht. Die Summe der Positionen weicht vom Nettobetrag ab, meist durch Rundung je Position statt am Ende.
  2. Leitweg-ID fehlt. Bei Behördenrechnungen ein Pflichtfeld, das in selbst gebauten Exporten regelmäßig vergessen wird.
  3. Falsches Dezimaltrennzeichen. Komma statt Punkt — die Datei ist damit unlesbar.
  4. Steuerkategorie und Steuersatz widersprechen sich. Kategorie E für steuerfrei, aber 19 % im Prozentfeld.
  5. Fehlende Zahlungsangaben. IBAN nicht angegeben, obwohl Überweisung als Zahlungsart genannt ist.

Ob Ihre eigene Datei betroffen ist, sagt Ihnen der XRechnung-Validator in Sekunden.

Häufige Fragen dazu

Darf ich die Beispieldatei für eigene Tests verwenden?

Ja, uneingeschränkt. Die Datei enthält ausschließlich erfundene Stammdaten und ist dafür gedacht, die eigene Verarbeitung zu testen — etwa ob die Buchhaltungssoftware die Rechnung einliest oder ob ein Betrachter sie korrekt darstellt.

Warum sieht die Datei so unübersichtlich aus?

Weil sie nicht für Menschen geschrieben ist. Eine XRechnung ist ein Datenformat für Software. Wenn Sie den Inhalt lesbar sehen wollen, laden Sie die Datei in den kostenlosen Konverter — dort erscheint sie als aufbereitete Rechnung.

Was bedeuten die BT-Nummern?

BT steht für Business Term. Die Norm EN 16931 nummeriert jedes mögliche Rechnungsfeld durch, damit über Sprach- und Softwaregrenzen hinweg klar ist, welche Angabe gemeint ist. BT-1 ist immer die Rechnungsnummer, egal in welchem Land und in welcher Software.

Passend dazu