SchemaGuard by Ironbark Digital · EN 16931 / Peppol / XRechnung Reference
← All 294 EN 16931 / Peppol Rules & Live Validator
WARNING Official EN 16931 / Peppol / CIUS Rule BT/BG Fields: BT-87

BR-51 — E-Invoice Validation Rule & Fix

Fixture ID: cardPanTooLong · XPath: /ubl:Invoice/cac:PaymentMeans/cac:CardAccount/cbc:PrimaryAccountNumberID

1. Why This Rule Triggers (Diagnostic Message)

The payment card primary account number (BT-87) is 16 characters long, and BR-51 admits at most 10. The PCI Security Standards Council permits an invoice to show the first six digits and the last four and nothing else, which is where the ten comes from. This is a warning rather than an error, so the document will be accepted — but an invoice is forwarded, archived, printed and emailed by people who never think of it as cardholder data, and a full PAN inside one puts every system it touches into PCI DSS scope. If it leaks, the disclosure obligation and the card-scheme fines are yours, not the validator's.

2. How to Fix BR-51

Truncate before you build the payload: set payment.card.primaryAccountNumber to the first six and last four digits only, e.g. "411111" + "1111" as "4111111111", or simply the last four. Never store or transmit the full number here.

3. Valid Code / Payload Example

"card": { "primaryAccountNumber": "4111111111", "holderName": "M Mustermann" }
Test & Validate XML / JSON in Live SchemaGuard Validator →