BT-81Payment means type codeBT-84Payment account identifier
Offizieller Regeltext
[BR-DE-19] "Payment account identifier" (BT-84) soll eine korrekte IBAN enthalten, wenn in "Payment means type code" (BT-81) mit dem Code 58 SEPA als Zahlungsmittel gefordert wird.
Warum dieser Fehler auftritt
Ist der Zahlungsmittelcode (BT-81) 58 (SEPA-Überweisung), erwartet XRechnung in der Kontokennung des Zahlungsempfängers (BT-84) eine gültige IBAN. Die Regel wendet die IBAN-Prüfung (Länderformat und Mod-97-Prüfsumme) auf cac:PaymentMeans/cac:PayeeFinancialAccount/cbc:ID (UBL) bzw. ram:PayeePartyCreditorFinancialAccount/ram:IBANID (CII) an, sobald der Code 58 ist. Typische Ursachen: Tippfehler oder Zahlendreher, Leerzeichen oder Formatierung in der IBAN, eine nationale Kontonummer statt IBAN oder Code 58 für ein Nicht-SEPA-Konto.
So beheben Sie den Fehler
Die IBAN als durchgehende Zeichenkette aus Großbuchstaben und Ziffern ohne Leerzeichen eintragen, z. B. DE89370400440532013000, und gegen den Kontoauszug prüfen. Ist das Konto kein SEPA-Konto (keine IBAN), Zahlungsmittelcode 30 (Überweisung) statt 58 verwenden und Kontonummer plus BIC in cac:FinancialInstitutionBranch/cbc:ID angeben. Den Kontoinhaber in cbc:Name / ram:AccountName führen. Es ist eine Warnung, eine falsche IBAN verzögert aber die Zahlung.
Beispiel (gültig)
<cac:PaymentMeans>
<cbc:PaymentMeansCode>58</cbc:PaymentMeansCode>
<cac:PayeeFinancialAccount>
<cbc:ID>DE89370400440532013000</cbc:ID>
<cbc:Name>Muster GmbH</cbc:Name>
</cac:PayeeFinancialAccount>
</cac:PaymentMeans>
Was der Validator prüft
Geprüftes Element (Kontext):
UBL
/ubl:Invoice/cac:PaymentMeans[normalize-space(cbc:PaymentMeansCode) = ('30','58')] | /cn:CreditNote/cac:PaymentMeans[normalize-space(cbc:PaymentMeansCode) = ('30','58')]Test (XPath):
not(normalize-space(cbc:PaymentMeansCode) = '58') or xr:checkIBAN(string(cac:PayeeFinancialAccount/cbc:ID))CII
/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeSettlementPaymentMeans[normalize-space(ram:TypeCode) = ('30','58')]Test (XPath):
not(normalize-space(ram:TypeCode) = '58') or xr:checkIBAN(string(ram:PayeePartyCreditorFinancialAccount/ram:IBANID))
Rechnung prüfen
Legen Sie Ihre XML- oder PDF-Datei im Validator ab; jede verletzte Regel ist mit ihrer Seite hier verlinkt. Kostenlos, ohne Konto, die Datei wird nicht gespeichert.
Dieselbe Prüfung per API:
curl -F file=@invoice.xml https://einvoicechecker.com/v1/validateVerwandte Regeln
BR-DE-20"Debited account identifier" soll eine korrekte IBAN enthalten, wenn in "Payment means…BR-DE-23-aÜberweisung gewählt, aber kein Empfängerkonto (BG-17)BR-DE-23-bWenn BT-81 "Payment means type code" einen Schlüssel für Überweisungen enthält (30,…BR-DE-24-aWenn BT-81 "Payment means type code" einen Schlüssel für Kartenzahlungen enthält (48,…BR-DE-24-bWenn BT-81 "Payment means type code" einen Schlüssel für Kartenzahlungen enthält (48,…BR-DE-25-aWenn BT-81 "Payment means type code" einen Schlüssel für Lastschriften enthält (59),…BR-DE-25-bWenn BT-81 "Payment means type code" einen Schlüssel für Lastschriften enthält (59),…BR-DE-1Zahlungsinformationen (BG-16) fehlen
Häufige Fragen
Was bedeutet BR-DE-19?
BR-DE-19 ist eine XRechnung-Regel: "Payment account identifier" (BT-84) soll eine korrekte IBAN enthalten, wenn in "Payment means type code" (BT-81) mit dem Code 58 SEPA als Zahlungsmittel gefordert wird.
Wird meine Rechnung wegen BR-DE-19 abgelehnt?
Nein. BR-DE-19 ist eine Warnung: Die Rechnung wird angenommen, der Empfänger sieht aber den Hinweis. Beheben Sie ihn trotzdem, Warnungen werden in späteren Versionen oft zu Fehlern.
Für welche Formate gilt BR-DE-19?
XRechnung in UBL- oder CII-Syntax, einschließlich ZUGFeRD-/Factur-X-PDFs mit dem Profil XRECHNUNG. Rechnungen an deutsche öffentliche Auftraggeber (Bund, Länder, Kommunen) müssen sie bestehen. Syntax: UBL und CII.
Quelle: XRechnung 3.0.2, schematron 2.6.0 (KoSIT, September 2026). Katalog erzeugt aus dem offiziellen Schematron am 2026-10-14.