Zum Inhalt springen

Von der Excel-Rechnung zur ZUGFeRD-Rechnung

Eine Excel-Tabelle liefert Positionen und Beträge, aber keine E-Rechnung. Für ZUGFeRD müssen die Werte als XML im Profil EN 16931 in ein PDF/A-3 eingebettet werden, und die Summen müssen den Rechenregeln der EN 16931 folgen. Die meisten Prüffehler entstehen dabei durch Rundung.

Stand:

Was aus der Tabelle übernommen wird

Jede Zeile Ihrer Tabelle wird im XML zu einer Rechnungsposition (BG-25). Dazu gehören die Menge (BT-129), die Einheit (BT-130), der Nettopreis (BT-146), der Positionsbetrag netto (BT-131), die Bezeichnung (BT-153) sowie Steuerkategorie und Steuersatz (BT-151, BT-152). Die Einheit steht laut XRechnung-Spezifikation nicht als Freitext wie „Stk.“ im XML, sondern als Code aus den UN/ECE-Empfehlungen Nr. 20 und 21.

Nach dem BMF-Schreiben vom 15. Oktober 2026 (Rn. 10 bis 12) muss die Leistungsbeschreibung im strukturierten Teil so genau sein, dass sich Leistungsart, Umfang und Steuersatz daraus prüfen lassen. Eine Zeile „Leistungen laut Anlage“ genügt nicht. Ergänzende Details wie Stundennachweise dürfen in eine eingebettete Anlage.

Steuersätze richtig zuordnen

Positionen mit 19 % und 7 % tragen beide die Kategorie S („Standard rated“), unterscheiden sich aber im Satz. Für jede Kombination aus Kategorie und Satz bildet die Rechnung eine eigene Steueraufschlüsselung (BG-23) mit Bemessungsgrundlage (BT-116), Steuerbetrag (BT-117), Kategorie (BT-118) und Satz (BT-119). Steuerfreie Positionen brauchen eine andere Kategorie, etwa E („Exempt from VAT“), und nach BR-E-10 einen Befreiungsgrund als Text (BT-120) oder Code (BT-121). Stimmt die Bemessungsgrundlage eines Satzes nicht mit der Summe der zugehörigen Positionen überein, meldet die Prüfung BR-S-08.

Steueraufschlüsselung für 19 % und 7 % in CII
<ram:ApplicableTradeTax>
    <ram:CalculatedAmount>109.99</ram:CalculatedAmount>
    <ram:TypeCode>VAT</ram:TypeCode>
    <ram:BasisAmount>578.89</ram:BasisAmount>
    <ram:CategoryCode>S</ram:CategoryCode>
    <ram:RateApplicablePercent>19</ram:RateApplicablePercent>
</ram:ApplicableTradeTax>
<ram:ApplicableTradeTax>
    <ram:CalculatedAmount>7.59</ram:CalculatedAmount>
    <ram:TypeCode>VAT</ram:TypeCode>
    <ram:BasisAmount>108.39</ram:BasisAmount>
    <ram:CategoryCode>S</ram:CategoryCode>
    <ram:RateApplicablePercent>7</ram:RateApplicablePercent>
</ram:ApplicableTradeTax>

Quelle: KoSIT XRechnung-Testsuite 2026-08-31, Datei standard/03.01a-INVOICE_uncefact.xml (Apache 2.0)

Rundung: wo Excel und EN 16931 auseinanderlaufen

Excel rechnet intern mit vielen Nachkommastellen und zeigt nur zwei an. Die EN 16931 erlaubt bei Beträgen höchstens zwei Nachkommastellen und prüft Summen auf den Cent genau. Die Steuer wird je Steuersatz aus der Bemessungsgrundlage berechnet, nicht als Summe der Steuer je Zeile. So rechnet die Testrechnung oben:

  • 578,89 € × 19 % = 109,9891 €, gerundet 109,99 €.
  • 108,39 € × 7 % = 7,5873 €, gerundet 7,59 €.
  • Steuer gesamt (BT-110): 109,99 € + 7,59 € = 117,58 €.
  • Summe netto (BT-109) 687,28 € plus Steuer 117,58 € ergibt 804,86 € brutto (BT-112).
Summenblock derselben Rechnung (Auszug)
<ram:SpecifiedTradeSettlementHeaderMonetarySummation>
    <ram:LineTotalAmount>687.28</ram:LineTotalAmount>
    <ram:TaxBasisTotalAmount>687.28</ram:TaxBasisTotalAmount>
    <ram:TaxTotalAmount currencyID="EUR">117.58</ram:TaxTotalAmount>
    <ram:GrandTotalAmount>804.86</ram:GrandTotalAmount>
    <ram:TotalPrepaidAmount>1030</ram:TotalPrepaidAmount>
    <ram:DuePayableAmount>-225.14</ram:DuePayableAmount>

Quelle: KoSIT XRechnung-Testsuite 2026-08-31, Datei standard/03.01a-INVOICE_uncefact.xml (Apache 2.0)

Typische Rundungsfehler aus Excel-Vorlagen; Regeltexte aus dem CEN-Schematron 1.3.16
MeldungWas die Regel verlangtTypische Ursache in ExcelAbhilfe
BR-CO-10Summe der Positionen (BT-106) = Summe aller BT-131Positionsbeträge ungerundet addiert, erst die Summe gerundetjeden Positionsbetrag mit RUNDEN(…;2) auf zwei Stellen bringen und diese Werte addieren
BR-CO-15Brutto (BT-112) = Netto (BT-109) + Steuer (BT-110)Bruttosumme aus Bruttozeilen addiert statt aus Netto und Steuer berechnetBrutto immer als Netto plus Steuer berechnen
BR-CO-17Steuer je Satz = Bemessungsgrundlage × Satz, auf zwei Stellen gerundetSteuer je Zeile berechnet und addiertSteuer einmal je Steuersatz aus der Summe berechnen
BR-DEC-23Positionsbetrag (BT-131) mit höchstens zwei NachkommastellenFormelergebnis ohne Rundung übernommenWerte gerundet exportieren

Rechnen Sie mit Bruttopreisen, etwa bei preisgebundenen Büchern, kann die nettobasierte Rechnung der EN 16931 zu Differenzen führen. Für XRechnung und ZUGFeRD gibt es laut BMF-Schreiben vom 15. Oktober 2026 (Rn. 19) noch kein Bruttoformat. Bis zum 31. Dezember 2027 beanstandet die Verwaltung nicht, wenn der strukturierte Teil dann nur die Summen je Steuersatz enthält und die Einzelpositionen in einer eingebetteten, lesbaren Anlage stehen, auf die der strukturierte Teil hinweist.

Profil EN 16931 wählen

Die FeRD empfiehlt für EU-konforme Rechnungen das Profil EN 16931. BASIC ist für einfache Rechnungen zulässig, kann aber keine rechnungsbegründenden Unterlagen in das XML einbetten. MINIMUM und BASIC WL sind keine E-Rechnungen, weil sie keine Positionen enthalten. Mehr dazu unter ZUGFeRD-Profile.

Werkzeuge

Der Export „Als PDF speichern“ in Excel erzeugt ein PDF ohne eingebettetes XML und damit keine ZUGFeRD-Rechnung. Sie brauchen ein Programm, das aus Ihren Daten das XML schreibt und es in ein PDF/A-3 einbettet. Das übernimmt ein Rechnungs- oder Buchhaltungsprogramm mit ZUGFeRD-Ausgabe. Für Entwickler gibt es die Open-Source-Bibliothek Mustangproject (Apache 2.0); sie schreibt und prüft ZUGFeRD- und Factur-X-Dateien und wandelt PDF/A-1 in PDF/A-3 um. Die FeRD stellt zu jeder Version ein kostenfreies Infopaket mit Schemas, Beispielrechnungen und Codelisten bereit.

Speichern Sie die Excel-Rechnung als PDF und laden Sie das PDF bei Rechnung umwandeln hoch. Das Werkzeug liest die Angaben aus, Sie prüfen sie im Formular und erhalten ein ZUGFeRD-PDF (PDF/A-3, Profil EN 16931), das vor dem Download mit Mustang geprüft wird. Eine ZUGFeRD-Datei aus einem anderen Programm können Sie hier prüfen.

Danach prüfen

Laden Sie das fertige PDF bei ZUGFeRD prüfen hoch. Die Prüfung liest das eingebettete XML aus, rechnet die Summen nach und kontrolliert den PDF/A-Aufbau. Vergleichen Sie danach Bild und Daten: Seit 2025 ist bei Abweichungen das XML maßgeblich.

Darf ich die Excel-Datei zusätzlich mitschicken?

Als eingebettete Anlage ja, wenn die Pflichtangaben im XML stehen. Der strukturierte Teil muss die Leistung selbst so genau beschreiben, dass die Rechnung ihre Kontrollfunktion erfüllt (BMF-Schreiben vom 15.10.2026, Rn. 10 bis 12).

Warum meldet die Prüfung eine Differenz von einem Cent?

Meist wurden ungerundete Zwischenwerte addiert oder die Steuer je Zeile statt je Steuersatz berechnet. Prüfen Sie zuerst BR-CO-10 und BR-CO-15.

Muss jede Tabellenzeile als eigene Position ins XML?

Die Leistung muss im strukturierten Teil eindeutig beschrieben sein. Zeilen, die nur der internen Kalkulation dienen, gehören nicht hinein. Bei Bruttopreisrechnungen gilt bis Ende 2027 die beschriebene Erleichterung.

Quellen

  1. ZUGFeRD-FAQForum elektronische Rechnung Deutschland (FeRD) in der AWV · geprüft am 7. November 2026
  2. BMF-Schreiben vom 15. Oktober 2026: Einführung der obligatorischen elektronischen Rechnung bei Umsätzen zwischen inländischen Unternehmern ab dem 1. Januar 2025; Ergänzende RegelungenBundesministerium der Finanzen, 15. Oktober 2026 · geprüft am 7. November 2026
  3. Spezifikation Standard XRechnung 3.0.2 – CIUS und ExtensionKoSIT, 20. Juni 2024 · geprüft am 7. November 2026
  4. Validator-Konfiguration XRechnung 2026-08-31 (mit CEN-Schematron 1.3.16)KoSIT (GitHub itplr-kosit), 31. August 2026 · geprüft am 7. November 2026
  5. Mustangproject – Bibliothek und Kommandozeilenwerkzeug für ZUGFeRD, Factur-X und XRechnungMustangproject · geprüft am 7. November 2026

Weiterlesen

Grundlage: BMF-Schreiben vom 15. Oktober 2026 und XRechnung 3.0.2. Stand .