BR-51: Kartennummer (BT-87) zu lang angegeben
Offizielle Meldung
[BR-51] In accordance with card payments security standards an invoice should never include a full card primary account number (BT-97). At the moment PCI Security Standards Council has defined that the first 6 digits and last 4 digits are the maximum number of digits to be shown.
[BR-51] In accordance with card payments security standards an invoice should never include a full card primary account number (BT-87). At the moment PCI Security Standards Council has defined that the first 6 digits and last 4 digits are the maximum number of digits to be shown.
[BR-51] In accordance with card payments security standards an invoice should never include a full card primary account number (BT-87). At the moment PCI Security Standards Council has defined that the first 6 digits and last 4 digits are the maximum number of digits to be shown.
- Schweregrad
- Fehler Die Rechnung gilt als ungültig und kann vom Empfänger abgelehnt werden.
- Gilt für
- EN 16931 (CII), EN 16931 (UBL), Factur-X / ZUGFeRD EN 16931
- Betroffene Felder
- BT-97, BT-87
Was bedeutet das?
Nach den Sicherheitsstandards für Kartenzahlungen darf eine Rechnung nie die vollständige Kartennummer (Payment card primary account number, BT-87) enthalten; der PCI Security Standards Council lässt höchstens die ersten 6 und die letzten 4 Ziffern zu. Die Prüfung erlaubt daher höchstens 10 Zeichen; die angegebene Kartennummer ist länger.
In CII ist die Regel ein Fehler, in UBL eine Warnung. Eine Fassung des offiziellen Textes nennt BT-97; gemeint ist die Kartennummer (BT-87).
Typische Ursachen
Die vollständige Kartennummer wurde übernommen.
Die Kartennummer wurde in voller Länge maskiert, z. B. 123456******1234; auch die Platzhalterzeichen zählen mit.
Leerzeichen oder Bindestriche zwischen den Zifferngruppen verlängern die Angabe.
So beheben Sie den Fehler
Nur einen Teil der Kartennummer angeben, höchstens 10 Zeichen, z. B. nur die letzten 4 Ziffern.
CII: ram:SpecifiedTradeSettlementPaymentMeans/ram:ApplicableTradeSettlementFinancialCard/ram:ID, UBL: cac:PaymentMeans/cac:CardAccount/cbc:PrimaryAccountNumberID.
Die Rechnung erneut erzeugen und prüfen.
In E-Rechnungsfreund
Im Rechnungsformular (Ansicht „Experte“) im Abschnitt „Zahlungsmittel (BG-16)“ im Feld „Karten-PAN (BT-87)“ höchstens 10 Zeichen eintragen, z. B. die letzten 4 Ziffern.
Beispiel
Fehlerhaft
<ram:SpecifiedTradeSettlementPaymentMeans>
<ram:TypeCode>48</ram:TypeCode>
<ram:ApplicableTradeSettlementFinancialCard>
<ram:ID>123456******1234</ram:ID>
<ram:CardholderName>Max Mustermann</ram:CardholderName>
</ram:ApplicableTradeSettlementFinancialCard>
</ram:SpecifiedTradeSettlementPaymentMeans>
Richtig
<ram:SpecifiedTradeSettlementPaymentMeans>
<ram:TypeCode>48</ram:TypeCode>
<ram:ApplicableTradeSettlementFinancialCard>
<ram:ID>1234</ram:ID>
<ram:CardholderName>Max Mustermann</ram:CardholderName>
</ram:ApplicableTradeSettlementFinancialCard>
</ram:SpecifiedTradeSettlementPaymentMeans>
Für Entwickler: Prüfausdruck je Syntax
EN 16931 (CII) (CII)
Kontext: //ram:ApplicableTradeSettlementFinancialCard
string-length(normalize-space(ram:ID)) <= 10
EN 16931 (UBL) (UBL)
Kontext: cac:PaymentMeans/cac:CardAccount/cbc:PrimaryAccountNumberID
string-length(normalize-space(.))<=10
Factur-X / ZUGFeRD EN 16931 (CII)
Technische ID in der Quelle: FX-SCH-A-000281
Kontext: //ram:ApplicableTradeSettlementFinancialCard
string-length(ram:ID)<=10
Verwandte Prüfregeln
Häufige Fragen
Warum schlägt eine maskierte Kartennummer wie 123456******1234 fehl?
Die Prüfung zählt alle Zeichen, auch die Sternchen. 16 Zeichen sind mehr als die erlaubten 10. Ohne Platzhalter angeben, z. B. nur 1234.
Zuletzt aktualisiert:
Erläuterung der Prüfregel, keine Rechts- oder Steuerberatung.