What it means
This rule checks the payment means code (BT-81), the cbc:PaymentMeansCode inside cac:PaymentMeans, and flags it if it has a listID attribute. The code says how the invoice is to be paid, such as 58 for a SEPA bank transfer or 30 for a bank transfer, from the UNTDID 4461 list. EN 16931 fixes that list, so naming it with listID is not used.
Why it matters
EN 16931 uses the payment means code without a listID attribute. This rule does not check the payment method code value.
How to fix it
Remove listID from cbc:PaymentMeansCode inside cac:PaymentMeans and keep the code unchanged. If your software adds the attribute, ask its supplier to correct the export, then check the new file again.
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
A UBL invoice should not include the PaymentMeansCode listID 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-CR-661 still fails, and which other rules do.
Related rules
- UBL-CR-662 Discount and charge reason codes should have no listID attribute
- UBL-CR-663 The file should have no unitCodeListID attributes
- UBL-CR-664 Do not add a bank name and address block to the payment account
- UBL-CR-665 Only an invoiced object reference may carry a scheme identifier
- UBL-CR-666 An invoiced object reference must not carry an attachment
- UBL-CR-667 The buyer's item number must be written without a scheme