ValidateFin
Zurück zum Blog
EN 169318 Min. LesezeitVon Eliel Nicaise

EN 16931 Pflichtfelder: Rechnungsfelder & Formate

Feldweise Referenz der EN-16931-Pflichtfelder: Codes, Formate und Beispiele für Verkäufer, Käufer, Positionen, USt.-Aufschlüsselung und Summen, inkl. B2C-Änderungen.

Validieren Sie Ihre Datei jetzt

Kostenlos, sofort und 100 % in Ihrem Browser - keine Datei wird hochgeladen.

UBL / Peppol Validator öffnen

So lesen Sie diese Referenz

EN 16931 definiert ein semantisches Datenmodell - eine Liste von „Business Terms“ (BT), die in „Business Groups“ (BG) gruppiert sind. Dieser Leitfaden listet die Felder auf, die Sie für eine konforme Basis-Rechnung benötigen - jedes Pflichtfeld, die wichtigsten bedingten Felder und die wesentlichen optionalen Felder - jeweils mit Format und einem realistischen Beispiel.

Jedes Feld ist gekennzeichnet als Pflicht (immer erforderlich), Bedingt (erforderlich, wenn eine Regel greift - etwa der USt-Satz, wenn die Kategorie „Standard“ ist) oder Optional (von der Basis-EN 16931 nicht gefordert, aber aufgeführt, weil nationale Regeln oder Peppol es häufig verpflichtend machen). Über das Basismodell hinaus können die CIUS Ihres Landes (ein nationales Profil wie XRechnung oder die französische Spezifikation) oder Peppol BIS weitere Pflichtfelder hinzufügen.

Dasselbe Modell wird in zwei XML-Syntaxen ausgedrückt - UBL 2.1 und UN/CEFACT CII (die Grundlage von Factur-X / ZUGFeRD). Die untenstehenden BT/BG-Codes sind in beiden identisch; nur die XML-Elementnamen unterscheiden sich. Die Beispiele verwenden einen Inlandsverkauf mit einem USt.-Satz von 21 %.

PflichtFür eine konforme Rechnung immer erforderlich.
BedingtErforderlich, wenn eine Bedingung zutrifft (siehe jede Zeile).
OptionalZur Orientierung aufgeführt - von der Basis-EN 16931 nicht gefordert, durch nationale Regeln oder Peppol jedoch häufig verpflichtend.

1. Dokumentebene

Identifizieren Sie die Rechnung selbst: ihre Nummer, Daten, Typ und Währung.

CodeFeldAnforderungFormatBeispiel
BT-1RechnungsnummerPflichtTextINV-2026-0001
BT-2RechnungsdatumPflichtYYYY-MM-DD2026-06-21
BT-3Rechnungstyp-CodePflichtUNCL 1001380
BT-24Spezifikationskennung (CIUS)PflichtIdentifierurn:cen.eu:en16931:2017
BT-5RechnungswährungscodePflichtISO 4217EUR
BT-10KäuferreferenzOptionalTextPO-4567
BT-9Fälligkeitsdatum der ZahlungBedingtYYYY-MM-DD2026-07-21

2. Verkäufer (BG-4 / BG-5)

Wer die Rechnung ausstellt. Der Ländercode ist immer Pflicht; die USt.-Identifikationsnummer ist erforderlich, sobald USt. berechnet wird.

CodeFeldAnforderungFormatBeispiel
BT-27Name des VerkäufersPflichtTextACME GmbH
BT-31USt.-Identifikationsnummer des VerkäufersBedingtTextDE123456789
BT-30Gesetzliche Registrierungsnummer des VerkäufersBedingtTextHRB 12345
BT-34Elektronische Adresse des VerkäufersOptionalIdentifier + EAS9930:DE123456789
BT-35Adresszeile 1 des VerkäufersOptionalTextHauptstraße 1
BT-37Stadt des VerkäufersOptionalTextBerlin
BT-38Postleitzahl des VerkäufersOptionalText10115
BT-40Ländercode des VerkäufersPflichtISO 3166-1DE

3. Käufer (BG-7 / BG-8)

Wer die Rechnung erhält. Bei B2C ist der Käufer eine Privatperson, daher bleibt die USt.-Identifikationsnummer leer - aber Name und Ländercode bleiben Pflicht.

CodeFeldAnforderungFormatBeispiel
BT-44Name des KäufersPflichtTextJane Doe
BT-48USt.-Identifikationsnummer des KäufersBedingtText- (B2C)
BT-49Elektronische Adresse des KäufersOptionalIdentifier + EAS0002:73282932
BT-50Adresszeile 1 des KäufersOptionalText12 Rue de Paris
BT-52Stadt des KäufersOptionalTextLyon
BT-53Postleitzahl des KäufersOptionalText69001
BT-55Ländercode des KäufersPflichtISO 3166-1FR

4. Rechnungsposition (BG-25)

Mindestens eine Position ist erforderlich. Jede Position beschreibt einen Artikel mit seiner Menge, seinem Preis, Nettobetrag und seiner USt.-Kategorie.

CodeFeldAnforderungFormatBeispiel
BT-126Kennung der RechnungspositionPflichtText1
BT-129Berechnete MengePflichtDecimal2
BT-130Code der MaßeinheitPflichtUN/ECE Rec 20C62
BT-153ArtikelbezeichnungPflichtTextWireless keyboard
BT-146Artikel-NettopreisPflichtDecimal50.00
BT-131Nettobetrag der RechnungspositionPflichtDecimal (2)100.00
BT-151USt.-Kategoriecode des berechneten ArtikelsPflichtUNCL 5305S

5. USt.-Aufschlüsselung (BG-23)

Eine Aufschlüsselung pro USt.-Satz, die die Bemessungsgrundlage und den Steuerbetrag zusammenfasst. Auch für eine Rechnung mit nur einem Satz erforderlich.

CodeFeldAnforderungFormatBeispiel
BT-116Steuerpflichtiger Betrag der USt.-KategoriePflichtDecimal (2)100.00
BT-117Steuerbetrag der USt.-KategoriePflichtDecimal (2)21.00
BT-118USt.-KategoriecodePflichtUNCL 5305S
BT-119USt.-KategoriesatzBedingtPercentage21
BT-120Grund der USt-Befreiung (Text)BedingtTextExempt - Art. 44
BT-121Code für den Grund der USt-BefreiungBedingtCodeVATEX-EU-AE

6. Dokumentsummen (BG-22)

Die monetäre Zusammenfassung. Diese Beträge müssen in sich konsistent sein, sonst weisen die EN-16931-Berechnungsregeln die Rechnung zurück.

CodeFeldAnforderungFormatBeispiel
BT-106Summe der Nettobeträge der RechnungspositionenPflichtDecimal (2)100.00
BT-109Rechnungsgesamtbetrag ohne USt.PflichtDecimal (2)100.00
BT-110Gesamtbetrag der USt. der RechnungBedingtDecimal (2)21.00
BT-112Rechnungsgesamtbetrag mit USt.PflichtDecimal (2)121.00
BT-115Zu zahlender BetragPflichtDecimal (2)121.00

Formate und Codelisten

EN 16931 erlaubt es nicht, Werte für typisierte Felder zu erfinden - sie müssen diesen Standardformaten und Codelisten folgen.

Daten

ISO-8601-Kalenderdatum, Format YYYY-MM-DD (z. B. 2026-06-21). Keine Uhrzeit oder Zeitzone bei Rechnungsdaten.

Geldbeträge

Decimal mit höchstens 2 Nachkommastellen, einem Punkt als Dezimaltrennzeichen und ohne Tausendertrennzeichen (z. B. 1234.50).

Währung (BT-5)

Dreistelliger ISO-4217-Code (z. B. EUR, SEK, PLN). Eine Dokumentwährung pro Rechnung.

Ländercodes

Zweistelliger ISO-3166-1-alpha-2-Code (z. B. DE, FR, BE) für jede Adresse.

USt.-Kategorie (BT-118 / BT-151)

UNCL 5305-Code: S (Standard), Z (Nullsatz), E (befreit), AE (Reverse-Charge), K (innergemeinschaftlich), G (Ausfuhr), O (außerhalb des Anwendungsbereichs).

Maßeinheit (BT-130)

UN/ECE Rec 20/21-Code (z. B. C62 = Stück, KGM = Kilogramm, HUR = Stunde, MTR = Meter).

Rechnungstyp (BT-3)

UNCL 1001-Code: 380 (Handelsrechnung), 381 (Gutschrift), 384 (korrigierte Rechnung), 389 (selbst ausgestellte Rechnung).

Kennungen und Schemata

Viele IDs tragen eine Schema-Kennung - z. B. eine USt.-ID des Verkäufers wie DE123456789 oder eine elektronische Adresse, qualifiziert durch ein Peppol-EAS-Schema (etwa 9930).

Was sich für B2C ändert (Rechnungsstellung an Privatpersonen)

EN 16931 wurde hauptsächlich für B2B und B2G entwickelt, aber ihr Kernmodell gilt für jede Rechnung - einschließlich Verkäufen an Privatpersonen. Die Struktur ändert sich nicht; einige Felder verhalten sich lediglich anders.

Die USt.-Identifikationsnummer des Käufers (BT-48) ist für Privatpersonen nicht erforderlich - lassen Sie sie weg. Der Name des Käufers (BT-44) und der Ländercode des Käufers (BT-55) bleiben Pflicht, und eine vollständige Postanschrift wird dringend empfohlen (und ist oft durch nationale USt.-Vorschriften erforderlich).

Die USt. gilt weiterhin in vollem Umfang: Jede Position benötigt einen USt.-Kategoriecode (BT-151), und die USt.-Aufschlüsselung (BG-23) muss vorhanden sein. Bei einem normalen inländischen B2C-Verkauf ist dies die Kategorie S mit Ihrem nationalen Standardsatz.

Das Routing ist der eigentliche Unterschied. Das Peppol-Netzwerk richtet sich an B2B/B2G, sodass Sie für reines B2C zwar weiterhin ein EN-16931-konformes XML erzeugen (zur Archivierung, USt./OSS-Meldung oder zur Übergabe an den Kunden), es aber in der Regel nicht über Peppol versenden. Prüfen Sie stets das Mandat Ihres Landes - manche verlangen strukturierte Rechnungen nur für B2B oder ab einem Schwellenwert.

Ein vollständiges Beispiel (alle Pflichtfelder)

Hier ist eine minimale, aber vollständig EN 16931-konforme Rechnung in UBL 2.1, passend zum B2C-Beispiel oben (ein Verkauf über 100 € mit 21 % USt). Jeder Pflicht-Business-Term ist vorhanden und mit seinem BT-Code gekennzeichnet.

<?xml version="1.0" encoding="UTF-8"?>
<Invoice xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2"
         xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2"
         xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2">
  <cbc:CustomizationID>urn:cen.eu:en16931:2017</cbc:CustomizationID>   <!-- BT-24 -->
  <cbc:ID>INV-2026-0001</cbc:ID>                                       <!-- BT-1 -->
  <cbc:IssueDate>2026-06-21</cbc:IssueDate>                            <!-- BT-2 -->
  <cbc:DueDate>2026-07-21</cbc:DueDate>                                <!-- BT-9 -->
  <cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>                       <!-- BT-3 -->
  <cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>             <!-- BT-5 -->

  <cac:AccountingSupplierParty>                                        <!-- BG-4 Seller -->
    <cac:Party>
      <cac:PostalAddress>
        <cbc:StreetName>Hauptstraße 1</cbc:StreetName>                <!-- BT-35 -->
        <cbc:CityName>Berlin</cbc:CityName>                           <!-- BT-37 -->
        <cbc:PostalZone>10115</cbc:PostalZone>                        <!-- BT-38 -->
        <cac:Country><cbc:IdentificationCode>DE</cbc:IdentificationCode></cac:Country> <!-- BT-40 -->
      </cac:PostalAddress>
      <cac:PartyTaxScheme>
        <cbc:CompanyID>DE123456789</cbc:CompanyID>                    <!-- BT-31 -->
        <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
      </cac:PartyTaxScheme>
      <cac:PartyLegalEntity>
        <cbc:RegistrationName>ACME GmbH</cbc:RegistrationName>        <!-- BT-27 -->
      </cac:PartyLegalEntity>
    </cac:Party>
  </cac:AccountingSupplierParty>

  <cac:AccountingCustomerParty>                                       <!-- BG-7 Buyer (B2C) -->
    <cac:Party>
      <cac:PostalAddress>
        <cac:Country><cbc:IdentificationCode>FR</cbc:IdentificationCode></cac:Country> <!-- BT-55 -->
      </cac:PostalAddress>
      <cac:PartyLegalEntity>
        <cbc:RegistrationName>Jane Doe</cbc:RegistrationName>         <!-- BT-44 -->
      </cac:PartyLegalEntity>
    </cac:Party>
  </cac:AccountingCustomerParty>

  <cac:TaxTotal>
    <cbc:TaxAmount currencyID="EUR">21.00</cbc:TaxAmount>             <!-- BT-110 -->
    <cac:TaxSubtotal>                                                 <!-- BG-23 VAT breakdown -->
      <cbc:TaxableAmount currencyID="EUR">100.00</cbc:TaxableAmount>  <!-- BT-116 -->
      <cbc:TaxAmount currencyID="EUR">21.00</cbc:TaxAmount>           <!-- BT-117 -->
      <cac:TaxCategory>
        <cbc:ID>S</cbc:ID>                                           <!-- BT-118 -->
        <cbc:Percent>21</cbc:Percent>                                <!-- BT-119 -->
        <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
      </cac:TaxCategory>
    </cac:TaxSubtotal>
  </cac:TaxTotal>

  <cac:LegalMonetaryTotal>                                            <!-- BG-22 Totals -->
    <cbc:LineExtensionAmount currencyID="EUR">100.00</cbc:LineExtensionAmount> <!-- BT-106 -->
    <cbc:TaxExclusiveAmount currencyID="EUR">100.00</cbc:TaxExclusiveAmount>   <!-- BT-109 -->
    <cbc:TaxInclusiveAmount currencyID="EUR">121.00</cbc:TaxInclusiveAmount>   <!-- BT-112 -->
    <cbc:PayableAmount currencyID="EUR">121.00</cbc:PayableAmount>             <!-- BT-115 -->
  </cac:LegalMonetaryTotal>

  <cac:InvoiceLine>                                                   <!-- BG-25 Invoice line -->
    <cbc:ID>1</cbc:ID>                                               <!-- BT-126 -->
    <cbc:InvoicedQuantity unitCode="C62">2</cbc:InvoicedQuantity>     <!-- BT-129 / BT-130 -->
    <cbc:LineExtensionAmount currencyID="EUR">100.00</cbc:LineExtensionAmount> <!-- BT-131 -->
    <cac:Item>
      <cbc:Name>Wireless keyboard</cbc:Name>                         <!-- BT-153 -->
      <cac:ClassifiedTaxCategory>
        <cbc:ID>S</cbc:ID>                                           <!-- BT-151 -->
        <cbc:Percent>21</cbc:Percent>
        <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
      </cac:ClassifiedTaxCategory>
    </cac:Item>
    <cac:Price>
      <cbc:PriceAmount currencyID="EUR">50.00</cbc:PriceAmount>       <!-- BT-146 -->
    </cac:Price>
  </cac:InvoiceLine>
</Invoice>

Dies ist die Basis-EN 16931. Für den Versand über Peppol fügen Sie zusätzlich die elektronischen Adressen (BT-34 / BT-49), die ProfileID (BT-23) und eine Käuferreferenz (BT-10) hinzu. Dieselbe Rechnung in CII (Factur-X) verwendet dieselben BT-Codes mit anderen Elementnamen.

Validieren Sie Ihre EN-16931-Rechnung kostenlos

Erzeugen Sie Ihre UBL- oder CII-Datei und legen Sie sie dann in unseren Validator, um jedes Pflichtfeld, jede Codeliste und jede EN-16931-Geschäftsregel zu prüfen - vollständig in Ihrem Browser, ohne dass Daten an einen Server hochgeladen werden.

UBL-/Peppol-Validator öffnen

Häufig gestellte Fragen

Wie viele Felder verlangt EN 16931?

Das Kernmodell hat rund 160 Geschäftsterme, aber nur eine Teilmenge ist Pflicht. Eine minimale konforme Rechnung benötigt etwa 25–30 Pflichtfelder, verteilt auf den Dokumentkopf, den Verkäufer, den Käufer, mindestens eine Position, die USt.-Aufschlüsselung und die Summen.

Ist die USt.-Nummer des Käufers Pflicht?

Nein. BT-48 ist bedingt - erforderlich für B2B-Reverse-Charge oder innergemeinschaftliche Lieferungen, aber nicht für B2C-Verkäufe an Privatpersonen. Der Name und der Ländercode des Käufers sind immer Pflicht.

Welches Datumsformat verwendet EN 16931?

ISO-8601-Kalenderdaten, YYYY-MM-DD (z. B. 2026-06-21). Rechnungsdaten enthalten keine Uhrzeit- oder Zeitzonenkomponente.

Wie viele Nachkommastellen sind bei Beträgen erlaubt?

Geldbeträge verwenden höchstens 2 Nachkommastellen mit einem Punkt als Dezimaltrennzeichen. Mengen und Einzelpreise dürfen mehr Nachkommastellen verwenden.

Was ist der Unterschied zwischen Pflicht- und bedingten Feldern?

Pflichtfelder müssen immer vorhanden sein. Bedingte Felder werden zur Pflicht, wenn eine Regel zutrifft - zum Beispiel ist der USt.-Satz (BT-119) erforderlich, wenn die USt.-Kategorie „Standard“ ist.

Welchen Rechnungstyp-Code soll ich verwenden?

BT-3 verwendet die Codeliste UNCL 1001. Verwenden Sie 380 für eine Handelsrechnung und 381 für eine Gutschrift; 384 ist eine korrigierte Rechnung.

Benötige ich sowohl UBL als auch CII?

Nein - wählen Sie eine Syntax. UBL 2.1 ist auf Peppol verbreitet; CII liegt Factur-X/ZUGFeRD zugrunde. Die Pflicht-Geschäftsterme sind in beiden identisch.

Gibt es über das Kernmodell hinaus zusätzliche Pflichtfelder?

Ja. Nationale CIUS (z. B. XRechnung in Deutschland, das französische Profil) und Peppol BIS fügen Regeln hinzu - zum Beispiel verlangt XRechnung eine Käuferreferenz (BT-10) und Kontaktdaten des Verkäufers.

Welchen USt.-Kategoriecode verwende ich für einen normalen inländischen Verkauf?

Kategorie S (Standardsatz) mit dem anwendbaren Prozentsatz in BT-119. Verwenden Sie Z für Nullsatz, E für befreit und AE für Reverse-Charge.

Wie prüfe ich, ob meine Rechnung vollständig ist?

Validieren Sie sie gegen die EN-16931-Geschäftsregeln (Schematron), nicht nur gegen das XSD-Schema. Unser kostenloser UBL-/Peppol-Validator prüft Pflichtfelder, Codelisten und die EN-16931-Berechnungsregeln.