Direkt zum Seiteninhalt

Die E-Rechnung - ZIEHL Computersysteme

Logo ZIEHL Computersysteme
+49 (0) 6205 - 104833
Menü überspringen
Menü überspringen

Die E-Rechnung

📄 E-Rechnung – Benutzerhandbuch

Zweck, Funktionsweise und implementierte Felder unserer E-Rechnungs-Lösung

Stand: Mai 2026 · Konform zu EN 16931 / ZUGFeRD / XRechnung

1. Zweck und Sinn der E-Rechnung

Eine E-Rechnung ist keine PDF-Datei und kein eingescanntes Papier. Sie ist eine Rechnung in einem strukturierten, maschinenlesbaren XML-Format, das eine vollständig automatisierte Verarbeitung durch IT-Systeme ermöglicht – ohne Medienbrüche, ohne manuelle Erfassung.

💡 Definition: Eine E-Rechnung erfüllt die europäische Norm EN 16931 und kann von Computern direkt gelesen, geprüft und verbucht werden.

Vorteile auf einen Blick

  • ⏱️ Zeitersparnis durch automatisierte Verarbeitung
  • 💰 Kostensenkung – keine Druck-, Porto- oder Archivkosten
  • Höhere Datenqualität durch strukturierte, validierte Felder
  • 🔍 Bessere Nachvollziehbarkeit bei Prüfungen
  • 🌱 Umweltfreundlich – kein Papier, keine Logistik
  • ⚖️ Rechtssicherheit durch normierte Pflichtangaben

2. Rechtlicher Hintergrund

Seit dem 1. Januar 2025 ist die E-Rechnung im B2B-Bereich in Deutschland gesetzlich verankert (Wachstumschancengesetz). Es gelten gestaffelte Übergangsfristen:

ZeitraumPflicht
ab 01.01.2025Empfang von E-Rechnungen für alle Unternehmen verpflichtend
ab 01.01.2027Versand für Unternehmen mit Vorjahresumsatz > 800.000 €
ab 01.01.2028Versand für alle Unternehmen verpflichtend
⚠️ Wichtig: Die akzeptierten Formate in Deutschland sind XRechnung (reines XML, UBL- oder CII-Syntax) und ZUGFeRD ab Version 2.0.1 (Hybrid: PDF/A-3 mit eingebetteter XML).

3. Wie wir die E-Rechnung umgesetzt haben

Unsere Lösung ist ein vollständiger E-Rechnungs-Viewer und -Validator, der eingehende E-Rechnungen aller gängigen Formate liest, prüft und übersichtlich darstellt.

Unterstützte Formate

  • ZUGFeRD / Factur-X ab Version 2.0.1 (Profile: MINIMUM, BASIC WL, BASIC, EN 16931, EXTENDED, XRECHNUNG)
  • XRechnung in UBL-Syntax (ubl:Invoice)
  • XRechnung in CII-Syntax (rsm:CrossIndustryInvoice)
  • PDF/A-3 mit eingebetteter XML (automatische Extraktion)

Technologische Basis

  • XML-Parser mit XPath-basierter Navigation
  • Schema-Validierung gegen die offiziellen XSDs der Norm EN 16931
  • Geschäftsregelprüfung (BR-Regeln) gemäß Spezifikation
  • PDF/A-3-Extraktion zur Trennung von visueller Anzeige und strukturierten Daten

4. Was das Programm konkret macht

  1. Datei einlesen – akzeptiert PDF (mit eingebetteter XML) oder reine XML-Dateien.
  2. Format erkennen – identifiziert automatisch UBL vs. CII und ZUGFeRD-Profil.
  3. XML extrahieren – bei PDF/A-3 wird die eingebettete factur-x.xml oder xrechnung.xml gezogen.
  4. Felder auslesen – über fest definierte XPath-Pfade werden alle BT-/BG-Felder extrahiert.
  5. Validieren – Schema-Konformität und Geschäftsregeln (BR) werden geprüft.
  6. Aufbereiten – Datumswerte werden formatiert (z. B. „20260401" → „01.04.2026"), Beträge mit Währung versehen.
  7. Anzeigen – strukturierte Darstellung in Blöcken: Dokumentinformationen, Verkäufer, Käufer, Positionen, Summen, Zahlungsinformationen.
  8. Fehler/Warnungen melden – Validierungsergebnisse werden klar gekennzeichnet ausgegeben.

5. Bedeutung der Kennungen

In der EN 16931 ist jedes Feld eindeutig nummeriert. Diese Kennungen erscheinen im Viewer und ermöglichen die genaue Zuordnung zur Norm:

BT-xxx Business Term – einzelnes Feld (z. B. Rechnungsnummer)
BG-xx Business Group – Gruppe zusammengehöriger Felder
BR-xx Business Rule – Geschäftsregel (Validierung)
KU-xx Kundenspezifische Erweiterung
KennungBedeutungBeispiel
BTEinzelnes Datenfeld („Business Term")BT-1 = Rechnungsnummer
BGGruppe von Feldern („Business Group")BG-4 = Verkäufer
BRPflicht- bzw. GeschäftsregelBR-01 = Rechnung muss BT-24 enthalten

6. Implementierte Felder im Detail

📋 Dokumentinformationen (Header)

KennungBezeichnungBeschreibung
BT-1RechnungsnummerEindeutige Kennung der Rechnung
BT-2RechnungsdatumAusstellungsdatum der Rechnung
BT-3Rechnungstyp-Codez. B. 380 (Handelsrechnung), 381 (Gutschrift), 384 (Korrektur)
BT-5Währungscodez. B. EUR, USD nach ISO 4217
BT-6SteuerwährungAbweichende Währung für Steuern (selten)
BT-9FälligkeitsdatumDatum, bis zu dem zu zahlen ist
BT-10Käuferreferenz / Leitweg-IDPflicht bei Behörden
BT-11ProjektreferenzBezugsprojekt
BT-12VertragsreferenzBezugsvertrag
BT-13BestellnummerKundenbestellung
BT-14AuftragsnummerVerkäuferseitige Auftragsnummer
BT-22BemerkungenFreitextkommentare
BT-23Geschäftsprozess-Typz. B. urn:fdc:peppol.eu:2017:poacc:billing:01:1.0
BT-24SpezifikationskennungProfil/Norm-Kennung

📅 Abrechnungs-/Leistungszeitraum

KennungBezeichnungBeschreibung
BG-14AbrechnungszeitraumGesamtzeitraum auf Header-Ebene
BT-73Beginn AbrechnungszeitraumStartdatum (Header)
BT-74Ende AbrechnungszeitraumEnddatum (Header)
BT-134Beginn Positions-ZeitraumStartdatum auf Positionsebene
BT-135Ende Positions-ZeitraumEnddatum auf Positionsebene

🏢 Verkäufer (BG-4)

KennungBezeichnungBeschreibung
BT-27NameFirmenname
BT-28HandelsnameMarketing-Name (optional)
BT-29Kennungz. B. GLN, DUNS
BT-30RechtsformkennungHandelsregisterauszug
BT-31USt-IdNr.z. B. DE123456789
BT-32SteuernummerNationale Steuernummer
BG-5PostanschriftStraße, PLZ, Ort, Land
BT-35Adresszeile 1Straße/Hausnummer
BT-37StadtOrt
BT-38PostleitzahlPLZ
BT-40Ländercodez. B. DE, AT
BG-6KontaktdatenAnsprechpartner
BT-41KontaktnameName des Ansprechpartners
BT-42TelefonTelefonnummer
BT-43E-MailE-Mail-Adresse

🏬 Käufer (BG-7)

KennungBezeichnungBeschreibung
BT-44NameFirmenname Käufer
BT-46Kennungz. B. Kundennummer
BT-47RechtsformkennungRegistereintrag
BT-48USt-IdNr.USt-Identifikationsnummer
BG-8PostanschriftAdresse Käufer
BT-50Adresszeile 1Straße/Hausnummer
BT-52StadtOrt
BT-53PostleitzahlPLZ
BT-55LändercodeISO-Ländercode
BG-9Kontaktdaten KäuferAnsprechpartner Käufer

🚚 Lieferinformationen (BG-13)

KennungBezeichnungBeschreibung
BT-70Name EmpfängerLieferadressat
BT-71Lieferortkennungz. B. Standortcode
BT-72LieferdatumTatsächliches Lieferdatum
BG-15LieferadresseVollständige Adresse

💰 Zahlungsinformationen (BG-16)

KennungBezeichnungBeschreibung
BT-81Zahlungsmittelcodez. B. 30 (Überweisung), 59 (SEPA-Lastschrift), 58 (SEPA-Überweisung)
BT-82Zahlungsmittel-TextKlartextbeschreibung
BT-83VerwendungszweckReferenz zur Zahlungszuordnung
BG-17ÜberweisungsdatenBankkonto Empfänger
BT-84IBAN EmpfängerBankkontonummer
BT-85KontoinhaberName Kontoinhaber
BT-86BICBankidentifikation
BG-19SEPA-LastschriftdatenNur bei Lastschrift
BT-89MandatsreferenzSEPA-Mandat
BT-90Gläubiger-IDSEPA-Creditor-Identifier
BT-91IBAN ZahlerKonto, das belastet wird

📦 Rechnungspositionen (BG-25)

KennungBezeichnungBeschreibung
BT-126PositionsnummerLaufende Nummer
BT-127PositionsbeschreibungFreitext zur Position
BT-129MengeLiefermenge
BT-130Mengeneinheitz. B. C62, H87, KGM
BT-131Nettobetrag der PositionMenge × Einzelpreis
BT-146EinzelpreisNettopreis pro Einheit
BT-148ListenpreisUVP (optional)
BT-153ArtikelnameBezeichnung des Artikels
BT-154ArtikelbeschreibungDetaillierte Beschreibung
BT-155Artikelnummer VerkäuferInterne Artikelnummer
BT-156Artikelnummer KäuferKäuferseitige Nummer
BT-157GTIN/EANStandard-Artikelkennung
BT-151USt-Code Positionz. B. S, Z, AE, K, O
BT-152USt-Satz Positionz. B. 19.00, 7.00

🧮 Summenblock (BG-22)

KennungBezeichnungBeschreibung
BT-106Summe PositionsbeträgeSumme aller BT-131
BT-107Summe NachlässeGesamtnachlass
BT-108Summe ZuschlägeGesamtzuschläge
BT-109NettogesamtbetragBT-106 − BT-107 + BT-108
BT-110USt-GesamtbetragSumme der Steuerbeträge
BT-112BruttogesamtbetragBT-109 + BT-110
BT-113Bereits gezahlter Betragz. B. Anzahlung
BT-114RundungsbetragAuf-/Abrundung
BT-115ZahlbetragBT-112 − BT-113 ± BT-114

💸 Steueraufschlüsselung (BG-23)

KennungBezeichnungBeschreibung
BT-116SteuerbasisbetragNettobetrag je Steuersatz
BT-117SteuerbetragBerechnete USt
BT-118Kategorie-CodeS = Standard, Z = Nullsatz, AE = Reverse Charge usw.
BT-119Steuersatzz. B. 19.00
BT-120BefreiungsgrundBegründung bei steuerfrei

7. Lastschrift- vs. normale Rechnungen

Beide Rechnungstypen verwenden die gleiche Norm – sie unterscheiden sich aber in den Pflichtfeldern für die Zahlungsinformationen.

📨 Normale Rechnung (Überweisung)

Zahlungsmittelcode BT-81: 30, 58 oder 1

Pflichtfelder:

  • BT-84 IBAN Empfänger
  • BT-85 Kontoinhaber
  • BT-86 BIC (optional bei SEPA)
  • BT-9 Fälligkeitsdatum

Aktion des Käufers: Muss aktiv überweisen.

🏦 SEPA-Lastschrift

Zahlungsmittelcode BT-81: 59 (SEPA Direct Debit) oder 49

Zusätzliche Pflichtfelder (BG-19):

  • BT-89 Mandatsreferenz (Mandate-ID)
  • BT-90 Gläubiger-Identifikationsnummer
  • BT-91 IBAN des Zahlungspflichtigen

Aktion des Käufers: Keine – Betrag wird eingezogen.

🔍 So erkennt das Programm den Typ: Es liest BT-81 aus. Bei Code 59 oder 49 werden die SEPA-Lastschriftfelder (BG-19) angezeigt; bei 30/58/1 die Überweisungsfelder (BG-17). Andere Codes (z. B. 10 = Bar, 48 = Karte) werden ebenfalls erkannt.

Rechtliche Anforderungen an Lastschrift-Rechnungen

  • Es muss ein gültiges SEPA-Mandat des Zahlers vorliegen.
  • Die Rechnung muss als Vorabankündigung (Pre-Notification) dienen oder darauf verweisen.
  • Die Frist (mindestens 1 Bankarbeitstag bei COR1) ist einzuhalten.
  • Mandatsreferenz und Gläubiger-ID müssen mit den im Mandat hinterlegten Werten übereinstimmen.

8. Zeiträume: Header (BG-14) vs. Position (BT-134/135)

Eine häufige Frage: Warum stehen manchmal zwei unterschiedliche Zeiträume in einer Rechnung?

BG-14 Abrechnungszeitraum (Header): Der gesamte Vertrags- oder Abrechnungszeitraum, den die Rechnung abdeckt – z. B. „April 2026" für eine Monatsrechnung.
BT-134 / BT-135 Positions-Zeitraum: Der konkrete Leistungszeitraum einer einzelnen Position – kann kürzer als BG-14 sein, wenn z. B. ein Service nur an wenigen Tagen erbracht wurde.

Beispiel: Eine Wartungsrechnung deckt den Monat April (BG-14: 01.04.–30.04.2026) ab, der Techniker war aber nur vom 01.04.–04.04.2026 vor Ort (BT-134/135).

Die Werte werden direkt aus der XML gelesen – das Programm berechnet oder rät nichts:

<ram:ApplicableHeaderTradeSettlement>
						  <ram:BillingSpecifiedPeriod>
						    <ram:StartDateTime>
						      <udt:DateTimeString format="102">20260401</udt:DateTimeString>  <!-- BT-73 -->
						    </ram:StartDateTime>
						    <ram:EndDateTime>
						      <udt:DateTimeString format="102">20260430</udt:DateTimeString>  <!-- BT-74 -->
						    </ram:EndDateTime>
						  </ram:BillingSpecifiedPeriod>
						</ram:ApplicableHeaderTradeSettlement>

9. Validierung & Geschäftsregeln (BR)

Das Programm prüft die Rechnung auf drei Ebenen:

Ebene 1: Schema-Validierung

Prüfung der XML gegen die XSD-Schemata der Norm – stellt sicher, dass die Struktur formal korrekt ist.

Ebene 2: Geschäftsregeln (BR)

Inhaltliche Regeln, z. B.:

RegelBedeutung
BR-01Eine Rechnung muss eine Spezifikationskennung (BT-24) haben
BR-02Eine Rechnung muss eine Rechnungsnummer (BT-1) haben
BR-03Eine Rechnung muss ein Rechnungsdatum (BT-2) haben
BR-04Eine Rechnung muss einen Rechnungstyp-Code (BT-3) haben
BR-05Eine Rechnung muss einen Währungscode (BT-5) haben
BR-06Verkäufername (BT-27) ist Pflicht
BR-07Käufername (BT-44) ist Pflicht
BR-08Verkäuferadresse muss vollständig sein
BR-16Eine Rechnung muss mindestens eine Position enthalten
BR-CO-10BT-106 = Summe aller BT-131
BR-CO-13BT-109 = BT-106 − BT-107 + BT-108
BR-CO-15BT-112 = BT-109 + BT-110
BR-CO-16BT-115 = BT-112 − BT-113 + BT-114
BR-DE-1Deutsche Erweiterung: Käuferreferenz (BT-10) Pflicht
BR-DE-2Telefon des Verkäufers (BT-42) Pflicht in DE
BR-DE-3E-Mail des Verkäufers (BT-43) Pflicht in DE

Ebene 3: Rechnerische Konsistenz

Plausibilitätsprüfungen, z. B. ob die Summe der Positionsbeträge mit dem Nettogesamtbetrag übereinstimmt, ob die Steuerberechnung korrekt ist und ob der Zahlbetrag schlüssig ist.

❗ Bei Validierungsfehlern: Die Rechnung wird trotzdem angezeigt, aber mit deutlichem Warnhinweis. Es liegt am Empfänger zu entscheiden, ob er die Rechnung akzeptiert oder zurückweist.

10. Praktische Hinweise für Anwender

Was tun bei…

… einer fehlerhaften Rechnung?

  • Genaue Fehlermeldung im Validierungsbereich beachten (BR-Nummer angeben).
  • Verkäufer kontaktieren und korrekte Rechnung anfordern.
  • Bei Pflichtfeld-Verstößen: Rechnung kann formal abgelehnt werden.

… abweichenden Beträgen zwischen XML und PDF?

  • Bei ZUGFeRD ist die XML rechtlich verbindlich, nicht das visuelle PDF.
  • Differenzen sind ein Indiz für eine fehlerhafte Erstellung.

… einer Gutschrift?

  • Rechnungstyp-Code BT-3 = 381 erkennen.
  • Beträge sind in der Regel positiv ausgewiesen, der Typ-Code dreht das Vorzeichen.

Empfohlener Workflow

  1. Rechnung in den Viewer laden (PDF oder XML).
  2. Validierungsstatus prüfen (grün ✅ / gelb ⚠️ / rot ❌).
  3. Stammdaten (Verkäufer, Käufer) gegen interne Daten abgleichen.
  4. Positionen und Summen sichten.
  5. Bei Lastschrift: Mandatsreferenz mit hinterlegten Mandaten abgleichen.
  6. Rechnung freigeben oder zur Klärung markieren.
✅ Tipp: Halten Sie die XML-Datei archiviert – nach GoBD und §14b UStG müssen E-Rechnungen 10 Jahre maschinenlesbar aufbewahrt werden.
Zurück zum Seiteninhalt