Das XRechnung-Format erklärt: Aufbau, Dateityp und Struktur
XRechnung ist reines XML nach EN 16931 – keine PDF, kein Papier. So ist die Datei aufgebaut, das unterscheidet UBL von CII, und so prüfst du, ob deine XRechnung gültig ist.
Wer zum ersten Mal eine XRechnung-Datei bekommt, öffnet meistens erst einmal ratlos einen Texteditor: keine Seiten, kein Layout, nur verschachtelter XML-Code. Das ist kein Fehler – so ist das XRechnung-Format konstruiert. In diesem Artikel schauen wir uns an, was technisch hinter der Datei steckt, welche Varianten es gibt und woran du erkennst, ob eine XRechnung korrekt aufgebaut ist.
XRechnung ist reines XML – keine PDF
Der wichtigste Unterschied zu einer klassischen Rechnung: Eine XRechnung enthält keine visuelle Darstellung. Es gibt kein Layout, keine Schriftart, kein Firmenlogo – nur strukturierte Daten im XML-Format. Die Datei trägt die Endung .xml und lässt sich mit jedem Texteditor öffnen, allerdings nur als rohe Zeichenkette aus spitzen Klammern und Werten. Lesbar für Menschen wird sie erst durch eine Software, die das XML interpretiert und daraus eine Ansicht erzeugt – genau das macht beispielsweise das ZRE- oder OZG-RE-Portal beim Rechnungsempfang.
Rechtlich basiert das Format auf der europäischen Norm EN 16931, die festlegt, welche Angaben eine elektronische Rechnung enthalten muss, damit sie EU-weit maschinell verarbeitet werden kann. XRechnung ist die deutsche, konkrete Umsetzung dieser Norm für Rechnungen an die öffentliche Hand.
Zwei Syntax-Varianten: UBL und CII
Ein Detail, das viele überrascht: „XRechnung" ist kein einzelnes, starres Schema, sondern lässt zwei unterschiedliche XML-Syntaxen zu, die beide dieselben inhaltlichen Vorgaben der EN 16931 abbilden:
- UBL (Universal Business Language) – ein international verbreiteter, generischer Standard für Geschäftsdokumente wie Bestellungen und Rechnungen.
- CII (Cross Industry Invoice) – ein Format aus dem UN/CEFACT-Umfeld, das speziell für Rechnungen entwickelt wurde und in Deutschland historisch näher an ZUGFeRD liegt.
Für dich als Rechnungssteller ändert das inhaltlich nichts: Beide Varianten transportieren dieselben Pflichtangaben, nur die XML-Struktur darunter unterscheidet sich. Die meisten Rechnungsportale und Softwarelösungen – auch eRechnio – akzeptieren beide Syntaxen automatisch, du musst dich also in der Regel nicht aktiv entscheiden.
Was steckt inhaltlich in der Datei?
Auch wenn du das XML nie von Hand bearbeiten musst, hilft ein Überblick über die wichtigsten Bestandteile, um Fehlermeldungen einordnen zu können:
- Leitweg-ID – ein Adresscode, der die Rechnung innerhalb der Behörde an die richtige Stelle weiterleitet. Ohne gültige Leitweg-ID wird eine XRechnung an öffentliche Auftraggeber oft schon beim Upload abgelehnt.
- Rechnungskopf – Rechnungsnummer, Datum, Leistungszeitraum, Rechnungssteller und -empfänger mit vollständiger Adresse und Steuernummer bzw. USt-IdNr.
- Rechnungspositionen – jede einzelne Leistung oder Ware mit Menge, Einzelpreis, Steuersatz und Gesamtbetrag, jeweils als eigenes strukturiertes Element.
- Summenblock – Netto-, Steuer- und Bruttobeträge, maschinell nachrechenbar, damit automatisierte Systeme Rechenfehler direkt erkennen.
Ist meine XRechnung gültig? So prüfst du das
Weil eine fehlerhafte XRechnung von öffentlichen Auftraggebern automatisch zurückgewiesen wird, lohnt sich eine Prüfung vor dem Versand. Der Standard-Weg dafür ist das XRechnung-Prüftool der KoSIT (Koordinierungsstelle für IT-Standards), das jede Datei gegen das offizielle Schema validiert und konkrete Fehlermeldungen ausgibt – etwa eine fehlende Leitweg-ID oder eine falsch formatierte Steuernummer. Viele Rechnungsportale wie ZRE und OZG-RE führen dieselbe Prüfung beim Upload automatisch aus, sodass Fehler spätestens dort auffallen. Einen Überblick über weitere kostenlose Viewer, mit denen sich die Datei auch ohne Validierung lesbar anzeigen lässt, findest du im Artikel XRechnung öffnen: Die besten kostenlosen Viewer im Vergleich. Übrigens ist die XRechnung damit noch nicht automatisch eine Peppol-Rechnung – wie Peppol als Versandnetzwerk mit dem XRechnung-Format zusammenhängt, erklären wir in einem eigenen Artikel.
Wie du eine XRechnung erstellst, ohne XML zu schreiben
In der Praxis schreibt niemand eine XRechnung von Hand – das Format ist dafür schlicht nicht gemacht. Stattdessen erzeugt eine Software das XML aus deinen vorhandenen Rechnungsdaten. Mit eRechnio lädst du dafür einfach deine bestehende Rechnung als PDF hoch und wandelst sie automatisch in eine normkonforme XRechnung um – inklusive Validierung, sodass du vor dem Versand siehst, ob alle Pflichtfelder korrekt gefüllt sind.
XRechnung oder doch ZUGFeRD?
Ob du überhaupt XRechnung brauchst, hängt vom Empfänger ab: Pflicht ist sie ausschließlich bei Rechnungen an Bund, Länder und Kommunen. Für private Geschäftskunden ist meist das hybride ZUGFeRD-Format die praktischere Wahl, weil es zusätzlich eine lesbare PDF enthält – wie genau diese Kombination aus PDF und eingebettetem XML aufgebaut ist, liest du im Artikel Das ZUGFeRD-Format erklärt. Den vollständigen Vergleich beider Formate samt Entscheidungshilfe findest du im Artikel XRechnung oder ZUGFeRD: Welches Format brauchst du wirklich?.
Fazit
Das XRechnung-Format ist bewusst als reines Maschinenformat konzipiert: kein Layout, sondern strukturierte Daten nach EN 16931, wahlweise in UBL- oder CII-Syntax. Für dich als Rechnungssteller zählt vor allem, dass alle Pflichtfelder korrekt gefüllt sind – die Details der XML-Struktur übernimmt im Idealfall die Software. Wie XRechnung sich in die Landschaft aus ZUGFeRD, Factur-X und Peppol BIS einordnet, zeigt der Überblick über alle E-Rechnungsformate. Mehr zum rechtlichen Rahmen und den Fristen liest du im Überblick zur E-Rechnungspflicht 2025. Mit eRechnio erstellst du gültige XRechnungen aus deinen bestehenden PDF-Rechnungen, ohne dich mit XML-Schemas beschäftigen zu müssen.