Attestwire › XRechnung-Regeln › BR-DE-24-a
BR-DE-24-a Der Kartencode verlangt die Kartengruppe
Ihre Rechnung wurde abgelehnt, weil sie Kartenzahlung als Zahlungsart nennt, aber keine Karteninformationen enthält. Zu einer Zahlungsart gehört die passende Datengruppe; bei einer Karte ist das die maskierte Kartennummer. Im Standard ist das die Gruppe BG-18 bei Zahlungsart 48, 54 oder 55 (BT-81); BR-DE-24-a ist die Regel, die sie verlangt.
Die Regelnummer bezeichnet die fehlgeschlagene Prüfung. BT steht für ein Rechnungsfeld, BG für eine Gruppe von Feldern. XRechnung ergänzt die europäische Norm EN 16931 um deutsche Anforderungen (CIUS).
- Informationselement
BG-18- Schweregrad
fatal— Ablehnung: das Dokument ist nicht konform- Regelwerk
- XRechnung-CIUS (KoSIT) — nationale Verschärfung der EN 16931
Die Lösung
Setzen Sie payment.card mit der maskierten Kartennummer (BT-87) und optional dem Karteninhaber (BT-88). Wird die Rechnung nicht per Karte beglichen, ändern Sie stattdessen payment.meansCode — "58" mit payment.iban ist der Normalfall.
Ein Wert, der die Prüfung besteht
"payment": { "meansCode": "48", "card": { "primaryAccountNumber": "4111111111", "holderName": "M Mustermann" } }Was die Regel verlangt
Bei den Kartencodes 48, 54 und 55 ist die Gruppe BG-18 Pflicht, und zwar genau einmal.
BG-18 ist ausdrücklich keine Einladung, eine Kartennummer auf die Rechnung zu schreiben. BR-51 begrenzt die Kartennummer (BT-87) auf zehn Zeichen, und mehr erlaubt der PCI-Standard auch nicht: die ersten sechs und die letzten vier Stellen. Der Zweck der Gruppe ist Abstimmung — Ihr Kunde soll diese Rechnung einer Position auf seiner Kartenabrechnung zuordnen können, die ihm bereits belastet wurde.
Der offizielle Regeltext
Die Regel BR-DE-24-a stammt aus der XRechnung-CIUS und
wird im Schematron der KoSIT geführt, den offiziellen Prüfregeln.
Ein wörtliches Zitat des Regeltextes liegt uns für diese Regel nicht
vor; was Sie oben lesen, ist unsere Erklärung. Maßgeblich ist die
Veröffentlichung der KoSIT.
Warum es die Regel gibt
Kartenzahlungen laufen bereits, bevor die Rechnung geschrieben wird. Ohne einen Anker in der Rechnung kann die Buchhaltung Belastung und Beleg nicht zusammenführen, und der Vorgang bleibt in der Klärung hängen. Die maskierte Nummer ist genau so viel Information, wie für die Zuordnung nötig und datenschutzrechtlich vertretbar ist.
So sieht der Befund aus
Genau dieses Objekt liefert die Bibliothek in
result.errors,
wenn die Regel anschlägt. Es wird beim Bauen dieser Seite durch
Ausführen von @attestwire/en16931 erzeugt und entspricht
dem Text, den Sie in Ihrem eigenen Log sehen. Die Meldung selbst ist
englisch, weil die Bibliothek englisch meldet.
{
"rule": "BR-DE-24-a",
"field": "BG-18",
"severity": "fatal",
"message": "The payment means type code (BT-81) is \"48\", which XRechnung treats as a card payment, so exactly one PAYMENT CARD INFORMATION group (BG-18) must be present. BG-18 is not an invitation to put a card number on an invoice: BR-51 caps the primary account number (BT-87) at ten characters, which is the most the PCI Security Standards Council permits — the first six and the last four digits. What the group is actually for is letting the buyer reconcile this invoice against a card statement line they have already been charged for.",
"fix": "Set payment.card with the masked primary account number (BT-87) and, optionally, the cardholder name (BT-88). If the invoice is not settled by card, change payment.meansCode instead — \"58\" (SEPA credit transfer) with payment.iban is what most invoices want.",
"example": "\"payment\": { \"meansCode\": \"48\", \"card\": { \"primaryAccountNumber\": \"4111111111\", \"holderName\": \"M Mustermann\" } }",
"xpath": "/ubl:Invoice/cac:PaymentMeans/cac:CardAccount",
"docsUrl": "https://attestwire.com/rules/BR-DE-24-a"
}
xpath zeigt auf das Element in einem
UBL-Dokument — dort meldet auch ein KoSIT-Validator
denselben Mangel. Bei einer CII-Rechnung
(xrechnung-cii, ZUGFeRD, Factur-X) erhalten Sie dieselbe
Zeichenkette und müssen sie selbst auf das CII-Element übertragen.
Häufige Fragen
- Was bedeutet BR-DE-24-a?
- Ihre Rechnung wurde abgelehnt, weil sie Kartenzahlung als Zahlungsart nennt, aber keine Karteninformationen enthält. Zu einer Zahlungsart gehört die passende Datengruppe; bei einer Karte ist das die maskierte Kartennummer. Im Standard ist das die Gruppe BG-18 bei Zahlungsart 48, 54 oder 55 (BT-81); BR-DE-24-a ist die Regel, die sie verlangt.
- Wie behebe ich BR-DE-24-a?
- Setzen Sie payment.card mit der maskierten Kartennummer (BT-87) und optional dem Karteninhaber (BT-88). Wird die Rechnung nicht per Karte beglichen, ändern Sie stattdessen payment.meansCode — "58" mit payment.iban ist der Normalfall.
- Ist BR-DE-24-a Pflicht für XRechnung?
- Ja. Ein Verstoß führt zur Ablehnung, aber nur, wenn Ihre Rechnung einen der Kartencodes trägt.