Heft

Ratgeber · E-Rechnungen · 10 Min. Lesezeit

ZUGFeRD-Rechnung Beispiel: XML-Struktur und Verarbeitung

Technische Anleitung zum ZUGFeRD-Format: Aufbau einer hybriden E-Rechnung, kommentiertes XML-Beispiel, Profilvergleich und die Verarbeitung empfangener ZUGFeRD-Rechnungen.

Heft-TeamAktualisiert

Nie wieder Belegen hinterherlaufen.

Heft ist in Entwicklung. Der Beleg-Agent soll fehlende Belege suchen und den Monat für deinen Steuerberater vorbereiten.

Wir schreiben dir nur zum Early Access von Heft. Datenschutz

TL;DR

  • Hybridformat verstehen: Eine ZUGFeRD-Rechnung besteht aus einer PDF/A-3-Datei mit eingebetteter CII-XML. Menschen lesen die PDF, Maschinen lesen das XML. Diese Dualität macht das Format flexibel für den B2B-Alltag.
  • Rechtsrahmen: Seit dem 1. Januar 2025 müssen Unternehmen strukturierte E-Rechnungen empfangen können. Ab 2027/2028 müssen E-Rechnungen auch versendet werden.
  • XML-Beispiel: Dieser Artikel zeigt ein kommentiertes XML-Beispiel mit den wichtigsten Strukturelementen (Kontext, Kopf, Positionen, Parteien und Summen).
  • Profile vergleichen: Eine Tabelle erläutert die sechs Profile (Minimum bis Extended und XRechnung) und zeigt, welche Profile den gesetzlichen Anforderungen genügen.
  • Automatisierte Verarbeitung: Rechnungssoftware kann die XML-Daten empfangener ZUGFeRD-Rechnungen direkt auslesen, sodass die Werte vor Prüfung und Export (z. B. DATEV EXTF oder CSV) nicht abgetippt werden müssen.
  • Selbst ausprobieren: Laden Sie unten eine echte ZUGFeRD-Beispielrechnung (PDF samt extrahierter XML) herunter und öffnen Sie sie im kostenlosen XRechnung- & ZUGFeRD-Viewer oder prüfen Sie sie mit dem E-Rechnung-Validator — beide arbeiten rein clientseitig, ohne Upload.

Die E-Rechnungspflicht in Deutschland bringt Schwung in die digitale Rechnungsstellung: Seit dem 1. Januar 2025 müssen Unternehmen strukturierte E-Rechnungen elektronisch empfangen können. Ab 2027 (bei Umsätzen über 800.000 EUR) bzw. 2028 gilt auch die Pflicht zum Versand. Ein reines PDF genügt nicht mehr: Eine E-Rechnung ist ein strukturierter Datensatz, der sich ohne manuellen Aufwand verarbeiten lässt. Die europäische Norm EN 16931 schreibt dafür ein XML-basiertes Format vor.

In Deutschland sind zwei Formate zulässig: die XRechnung (ein reines XML-Dokument) und das ZUGFeRD-Format (ab Version 2.0.1), das eine PDF/A-3 mit eingebetteter XML enthält. Dieser Beitrag zeigt anhand eines konkreten Beispiels, wie eine hybride ZUGFeRD-Rechnung aufgebaut ist, erklärt die XML-Struktur und erläutert, wie Sie das Format automatisiert verarbeiten können.

Was ist eine ZUGFeRD-Rechnung?

ZUGFeRD steht für "Zentraler User Guide des Forums elektronische Rechnung Deutschland". Das Format kombiniert eine visuell lesbare PDF/A-3-Rechnung mit einer integrierten XML-Datei. Die PDF-Komponente dient als klassisches Rechnungsdokument für Menschen, während das XML den gesamten Rechnungsinhalt strukturiert im CII-Standard (Cross Industry Invoice) abbildet. Die PDF/A-3-Norm (ISO 19005-3) erlaubt die Einbettung beliebiger Dateien und garantiert langfristige Archivierung.

Der hybride Ansatz ist der größte Unterschied zur XRechnung. XRechnungen sind reine XML-Dateien ohne visuelle Darstellung und werden vor allem im öffentlichen Sektor verwendet. Das ZUGFeRD-Format kombiniert PDF und XML; ab Version 2.0.1 erfüllt es die Anforderungen der EN 16931 für die deutsche E-Rechnungspflicht.

Wichtig: Öffentliche Auftraggeber in Deutschland akzeptieren das hybride Format im Moment nicht als E-Rechnung. Für Behörden muss eine XRechnung (reines XML in CII oder UBL) erstellt werden — wie diese aussieht, zeigt unser XRechnung-Beispiel mit echtem XML. Für den B2B-Sektor ist ZUGFeRD jedoch weit verbreitet, weil Lieferanten ihren Geschäftspartnern weiterhin eine PDF senden können.

Aufbau einer ZUGFeRD-Rechnung: PDF und XML

Das hybride Format besteht aus zwei eng verbundenen Teilen:

PDF/A-3 Container: Das PDF entspricht dem vertrauten Layout einer Rechnung. Es enthält alle Schriften und Farbprofile und erlaubt die Einbettung von Dateien. Zusätzlich können weitere Anhänge (z. B. Leistungsnachweise) eingebettet werden.

XML-Datei (factur-x.xml): Die eingebettete XML-Datei enthält alle Rechnungsdaten in maschinenlesbarer Form. Beim Öffnen der PDF sieht der Nutzer die visuelle Rechnung; Software extrahiert das XML und verarbeitet die strukturierten Daten.

Dieses Dualitätskonzept bietet Lesbarkeit und Automatisierbarkeit: Software liest die strukturierten XML-Felder direkt, ohne OCR, sodass Werte wie Rechnungsnummer, Datum und Beträge nicht erneut erfasst werden müssen. Mehr zur digitalen Rechnungsverarbeitung finden Sie in unserem Leitfaden.

Echte ZUGFeRD-Beispielrechnung herunterladen

Damit das Format greifbar wird, finden Sie hier eine echte ZUGFeRD-Rechnung zum Herunterladen, Ansehen und Ausprobieren mit den kostenlosen Tools weiter unten. Es handelt sich um ein synthetisches Beispiel: Parteien und Beträge sind frei erfunden und dienen nur zur Demonstration. Technisch ist es jedoch echt — eine gültige PDF/A-3 mit eingebetteter factur-x.xml im Profil EN 16931 (COMFORT), validiert gegen das offizielle XSD.

ZUGFeRD-Beispielrechnung — EN 16931 (COMFORT)

Eine hybride PDF/A-3 mit eingebetteter factur-x.xml, dazu dieselbe XML als eigenständige Datei. Frei erfundene Parteien, stimmige Beträge, gültige Struktur.

Synthetisches Beispiel, nur zur Demonstration — Muster GmbH und Beispiel Handel AG sind keine realen Unternehmen.

Was die Beispielrechnung enthält

FeldWert
ProfilZUGFeRD 2.x, EN 16931 (COMFORT)
RechnungsnummerMUSTER-2026-0042
Rechnungsdatum15. Februar 2026
Fälligkeit1. März 2026
VerkäuferMuster GmbH, Musterstrasse 12, 10115 Berlin (USt-IdNr. DE123456789)
KäuferBeispiel Handel AG, Beispielweg 5, 80331 München (USt-IdNr. DE987654321)
Position 1Beratungsleistung, 4 Std. à 90,00 EUR = 360,00 EUR (19 % USt.)
Position 2Projektlizenz Software, 1 à 240,00 EUR = 240,00 EUR (19 % USt.)
Nettobetrag600,00 EUR
USt. (19 %)114,00 EUR
Gesamtbetrag714,00 EUR

Beispiel im Viewer öffnen

  1. Laden Sie die ZUGFeRD-PDF oben herunter.
  2. Öffnen Sie den kostenlosen XRechnung- & ZUGFeRD-Viewer.
  3. Ziehen Sie die PDF auf den Upload-Bereich. Der Viewer extrahiert die eingebettete factur-x.xml direkt in Ihrem Browser und stellt jedes Feld dar — Verkäufer, Käufer, Positionen, Steueraufstellung und Summen. Nichts wird hochgeladen.

Sie möchten eine Datei gegen die EN-16931-Regeln prüfen, statt sie nur zu lesen? Lassen Sie die PDF oder die XML durch den E-Rechnung-Validator laufen, der Struktur, Pflichtfelder und Rechenlogik clientseitig prüft. Um eine eigene Eingangsrechnung zu testen, ziehen Sie sie in eines der beiden Tools — die Dateien verlassen Ihr Gerät nie.

Für eine Prüfung mit Fokus auf ZUGFeRD- und Factur-X-Profile öffnen Sie das Beispiel im ZUGFeRD-Validator. Er erkennt das eingebettete Profil und prüft Pflichtfelder und Summen lokal im Browser.

Beispiel: XML-Struktur einer ZUGFeRD-Rechnung

Der folgende Ausschnitt stammt aus der Beispielrechnung oben, im CII-Format. Kommentare erklären die Bedeutung der Tags; die zweite Position und einige optionale Felder sind aus Platzgründen ausgelassen. Die vollständige XML liegt in der herunterladbaren Datei.

<?xml version="1.0" encoding="utf-8"?>
<rsm:CrossIndustryInvoice
  xmlns:rsm="urn:un:unece:uncefact:data:standard:CrossIndustryInvoice:100"
  xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100"
  xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100">

  <!-- Kontext: Norm und Profil (hier: EN 16931 / COMFORT) -->
  <rsm:ExchangedDocumentContext>
    <ram:GuidelineSpecifiedDocumentContextParameter>
      <ram:ID>urn:cen.eu:en16931:2017</ram:ID>
    </ram:GuidelineSpecifiedDocumentContextParameter>
  </rsm:ExchangedDocumentContext>

  <!-- Dokumentkopf: Rechnungsnummer, Art und Datum -->
  <rsm:ExchangedDocument>
    <ram:ID>MUSTER-2026-0042</ram:ID>     <!-- Rechnungsnummer -->
    <ram:TypeCode>380</ram:TypeCode>      <!-- 380 = Rechnung -->
    <ram:IssueDateTime>
      <udt:DateTimeString format="102">20260215</udt:DateTimeString>
    </ram:IssueDateTime>
  </rsm:ExchangedDocument>

  <!-- Geschäftsdetails: Positionen, Parteien und Summen -->
  <rsm:SupplyChainTradeTransaction>

    <!-- Rechnungsposition (Position 2 aus Platzgründen ausgelassen) -->
    <ram:IncludedSupplyChainTradeLineItem>
      <ram:AssociatedDocumentLineDocument>
        <ram:LineID>1</ram:LineID>
      </ram:AssociatedDocumentLineDocument>
      <ram:SpecifiedTradeProduct>
        <ram:Name>Beratungsleistung Rechnungsdigitalisierung</ram:Name>
      </ram:SpecifiedTradeProduct>
      <ram:SpecifiedLineTradeAgreement>
        <ram:NetPriceProductTradePrice>
          <ram:ChargeAmount>90.00</ram:ChargeAmount>
        </ram:NetPriceProductTradePrice>
      </ram:SpecifiedLineTradeAgreement>
      <ram:SpecifiedLineTradeDelivery>
        <ram:BilledQuantity unitCode="HUR">4.00</ram:BilledQuantity>
      </ram:SpecifiedLineTradeDelivery>
      <ram:SpecifiedLineTradeSettlement>
        <ram:ApplicableTradeTax>
          <ram:TypeCode>VAT</ram:TypeCode>
          <ram:CategoryCode>S</ram:CategoryCode>
          <ram:RateApplicablePercent>19.00</ram:RateApplicablePercent>
        </ram:ApplicableTradeTax>
        <ram:SpecifiedTradeSettlementLineMonetarySummation>
          <ram:LineTotalAmount>360.00</ram:LineTotalAmount>
        </ram:SpecifiedTradeSettlementLineMonetarySummation>
      </ram:SpecifiedLineTradeSettlement>
    </ram:IncludedSupplyChainTradeLineItem>

    <!-- Verkäufer und Käufer -->
    <ram:ApplicableHeaderTradeAgreement>
      <ram:SellerTradeParty>
        <ram:Name>Muster GmbH</ram:Name>
      </ram:SellerTradeParty>
      <ram:BuyerTradeParty>
        <ram:Name>Beispiel Handel AG</ram:Name>
      </ram:BuyerTradeParty>
    </ram:ApplicableHeaderTradeAgreement>

    <!-- Währung, Steueraufstellung und Gesamtbetrag -->
    <ram:ApplicableHeaderTradeSettlement>
      <ram:InvoiceCurrencyCode>EUR</ram:InvoiceCurrencyCode>
      <ram:ApplicableTradeTax>
        <ram:CalculatedAmount>114.00</ram:CalculatedAmount>
        <ram:TypeCode>VAT</ram:TypeCode>
        <ram:BasisAmount>600.00</ram:BasisAmount>
        <ram:CategoryCode>S</ram:CategoryCode>
        <ram:RateApplicablePercent>19.00</ram:RateApplicablePercent>
      </ram:ApplicableTradeTax>
      <ram:SpecifiedTradeSettlementHeaderMonetarySummation>
        <ram:LineTotalAmount>600.00</ram:LineTotalAmount>
        <ram:TaxBasisTotalAmount>600.00</ram:TaxBasisTotalAmount>
        <ram:TaxTotalAmount currencyID="EUR">114.00</ram:TaxTotalAmount>
        <ram:GrandTotalAmount>714.00</ram:GrandTotalAmount>
        <ram:DuePayableAmount>714.00</ram:DuePayableAmount>
      </ram:SpecifiedTradeSettlementHeaderMonetarySummation>
    </ram:ApplicableHeaderTradeSettlement>

  </rsm:SupplyChainTradeTransaction>
</rsm:CrossIndustryInvoice>

Der Ausschnitt verdeutlicht den Aufbau: Kontext (Profil und Norm), Kopf (Rechnungsnummer und Datum), Positionen (Artikel, Preis, Menge, USt.-Satz) und Abrechnung (Währung, Steueraufstellung und Gesamtbetrag). Beim Import liest die Software diese Felder aus und ordnet sie den Fachbegriffen der EN 16931 zu.

ZUGFeRD-Profile im Vergleich

Nicht jede ZUGFeRD-Rechnung ist EN-konform. Das Format definiert sechs Profile mit unterschiedlicher Datentiefe. Laut BMF-Schreiben vom 15. Oktober 2024 erfüllt ZUGFeRD ab Version 2.0.1 die Anforderungen der E-Rechnungspflicht — ausgenommen sind nur die Profile Minimum und Basic WL.

ProfilDatenumfangEN 16931-konformTypische Verwendung
MinimumNur Metadaten (Rechnungsnummer, Datum). Keine Positions- oder Steuerdaten.NeinArchivierung
Basic WLKopf + Gesamtbeträge ohne Einzelpositionen.NeinSammelrechnungen, Kassenbelege
BasicVollständige Positionen mit Preisen und Mengen (EN 16931 Kernmodell).JaStandard-Inlandsrechnungen
EN 16931 (Comfort)Vollständiges EN 16931-Datenmodell inklusive aller benötigten BT-Felder.JaStandard für B2B und EU-Handel
ExtendedComfort + zusätzliche optionale Felder (z. B. Liefernachweise).JaKomplexe Szenarien
XRechnungComfort-Datenmodell mit deutschen CIUS-Regeln; reine XML ohne PDF.JaB2G-Rechnungen (Behörden)

Für die E-Rechnungspflicht sollten Sie mindestens das Comfort-Profil wählen. Das Profil Extended eignet sich für umfangreiche Zusatzinformationen, während XRechnung obligatorisch für die Kommunikation mit Behörden ist.

ZUGFeRD-Rechnung empfangen und verarbeiten

Warum automatisierte Verarbeitung?

Die E-Rechnungspflicht zwingt Unternehmen, elektronische Rechnungen zu empfangen und aufzubewahren. Gleichzeitig sind manueller Import und Datenerfassung fehleranfällig und zeitintensiv. Moderne Rechnungssoftware nutzt OCR, künstliche Intelligenz und XML-Parsing, um Rechnungsdaten automatisch auszulesen. Eine zuverlässige Erfassung erleichtert die Buchung in der Finanzbuchhaltung und unterstützt eine an den GoBD orientierte Archivierung.

So sieht ein typischer Empfangs-Workflow aus

  1. Rechnungseingang: Empfangene Rechnungen werden hochgeladen oder an eine Sammeladresse weitergeleitet.
  2. Erkennung: Die Software erkennt das Format und liest die strukturierten XML-Felder direkt aus ZUGFeRD- und XRechnung-Dateien, sodass die Daten nicht neu erfasst werden müssen. PDF-Rechnungen ohne XML erfordern Textextraktion oder OCR.
  3. Prüfung: Jemand kontrolliert die extrahierten Felder, idealerweise mit markierten unsicheren Werten und Hinweisen auf mögliche Duplikate.
  4. Export: Die geprüften Daten gehen an die Buchhaltung, etwa als CSV oder im DATEV-EXTF-Format für Ihren Steuerberater. Die Originaldokumente bleiben unverändert erhalten.

Weitere Details zu Rechnungseingang-Software finden Sie in unserem Vergleich. Ein Schritt bleibt in vielen Abläufen offen: Zahlungen auf dem Konto den passenden Belegen zuzuordnen. Genau dafür entwickeln wir den Beleg-Agenten Heft. Er setzt beim Bankkonto an, sucht zu jeder Zahlung den fehlenden Beleg (Postfach, E-Rechnungen, Portale) und übergibt ihn an DATEV bzw. die Steuerkanzlei. Noch ist er nicht verfügbar.

Hefts geplanter Beleg-Agent

Der geplante Beleg-Agent soll bei deinem Bankkonto starten, Belege suchen und offene Fälle für die Monatsübergabe zeigen. Heft ist noch in Entwicklung.

Wir schreiben dir nur zum Early Access von Heft. Datenschutz

ZUGFeRD-Rechnung erstellen vs. empfangen

Viele Unternehmen fragen: Wie erstelle ich eine ZUGFeRD-Rechnung? Der Empfang gelingt mit automatisierten Tools, während für die Erstellung ein PDF/A-3 und eine strukturierte CII-XML generiert, eingebettet und validiert werden müssen. Spezialisierte Bibliotheken und Buchhaltungssoftware (z. B. Lexware, sevDesk oder easybill) erleichtern diese Schritte.

Empfangs- und Rechnungsstellungssoftware sind oft getrennte Produkte; prüfen Sie also, welche Seite ein Programm abdeckt. Für Rechnungen an öffentliche Auftraggeber sollten Sie direkt das XRechnung-Profil verwenden, da die hybride Variante dort nicht akzeptiert wird.

Häufig gestellte Fragen

Was ist eine ZUGFeRD-Rechnung?

Eine ZUGFeRD-Rechnung ist eine hybride E-Rechnung im PDF/A-3-Format mit eingebetteter XML-Datei. Die XML enthält alle Rechnungsdaten im CII-Standard, während die PDF einen menschenlesbaren Beleg darstellt. Ab Version 2.0.1 ist ZUGFeRD EN 16931-konform.

Wie versende ich eine ZUGFeRD-Rechnung?

Sie müssen eine PDF/A-3 erstellen, eine gültige CII-XML generieren, sie als factur-x.xml einbetten und das Gesamtpaket validieren. Versenden Sie ZUGFeRD-Rechnungen per E-Mail. Für B2G-Rechnungen empfiehlt sich die XRechnung.

Kann ich eine PDF in eine ZUGFeRD-Rechnung umwandeln?

Ja. Sie benötigen Software, die Ihre bestehende PDF in ein PDF/A-3 konvertiert und die Rechnungsdaten als CII-XML generiert. Ein reines PDF ohne XML ist keine E-Rechnung.

Was ist der Unterschied zwischen ZUGFeRD und XRechnung?

ZUGFeRD enthält PDF und XML; XRechnung ist nur XML. Beide Formate sind EN 16931-konform und erfüllen die E-Rechnungspflicht. ZUGFeRD ist flexibel für B2B, während XRechnung für den öffentlichen Sektor vorgeschrieben ist.

Welche ZUGFeRD-Profile sind zulässig?

Für die E-Rechnungspflicht ist ZUGFeRD ab Version 2.0.1 zugelassen, ausgenommen sind nur die Profile Minimum und Basic WL. Das vollständige Basic-Profil genügt bereits; darüber hinaus qualifizieren sich EN 16931 (Comfort), Extended und XRechnung.

Offizielle Quellen

The Heft team writes guides on receipts, e-invoices and bookkeeping for businesses in Germany.

Dieser Artikel dient der allgemeinen Information und ersetzt keine rechtliche, steuerliche oder buchhalterische Beratung. Prüfe Anforderungen mit einer qualifizierten Fachperson.

Nie wieder einem Beleg hinterherlaufen.

Trag dich für Neuigkeiten zum Start ein. Heft ist in Entwicklung; zuerst ist der Beleg-Agent geplant.

Wir schreiben dir nur zum Early Access von Heft. Datenschutz

Ähnliche Beiträge