What it means
The check counts every name attribute in the file and subtracts the ones on the payment means code (cbc:PaymentMeansCode). Anything left over triggers the warning. This rule makes an exception for name on cbc:PaymentMeansCode, where it carries the payment means text (BT-82), such as Credit transfer. It does not make an exception for other elements within the payment means group.
Why it matters
EN 16931 asks you to omit name attributes except those on cbc:PaymentMeansCode.
How to fix it
It is worth fixing when your software writes it on every invoice. Ask the supplier of your invoicing software to omit name attributes everywhere except cbc:PaymentMeansCode. If you build the XML yourself, remove name from every element except cbc:PaymentMeansCode. Export again and recheck the file.
Once the file is corrected, check it again for free: Validate an invoice against EN 16931
Or fix the invoice in a form and download the corrected file, for 1 credit: Fix a rejected e-invoice
The rule as published
Name attribute should not be present Where this rule applies
| Rule set | Version |
|---|---|
| EN 16931 (UBL) | 1.3.17 |
| EN 16931 (UBL credit note) | 1.3.17 |
| XRechnung 3.0 (UBL) | 3.0.2 |
| XRechnung 3.0 (UBL credit note) | 3.0.2 |
| Peppol BIS Billing 3.0 (invoice) | 2026.5 |
| Peppol BIS Billing 3.0 (credit note) | 2026.5 |
| SI-UBL 2.0 / NLCIUS (invoice) | 2.0.3.13 |
| SI-UBL 2.0 / NLCIUS (credit note) | 2.0.3.13 |
| France CTC (UBL invoice) | 1.4.0-04 |
| France CTC (UBL credit note) | 1.4.0-04 |
| CIUS-RO UBL Invoice 1.0.9 | 1.0.9 |
| CIUS-RO UBL Credit Note 1.0.9 | 1.0.9 |
Check your file
Drop your e-invoice to see whether UBL-DT-18 still fails, and which other rules do.