What it means
This rule checks that cac:PaymentMeans/cac:PaymentMandate contains no cac:ValidityPeriod block. It applies to invoices and credit notes, including when the block is empty.
Why it matters
EN 16931 does not use a mandate validity period block in its UBL payment details. This check concerns the exported XML, not the mandate's actual validity dates.
How to fix it
Remove cac:ValidityPeriod from cac:PaymentMeans/cac:PaymentMandate in the XML export. Keep cbc:ID, which holds the mandate reference (BT-89). If your software adds the block automatically, ask its supplier to omit it rather than clearing the mandate dates in your records. Recheck the resulting 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
A UBL invoice should not include the PaymentMeans PaymentMandate ValidityPeriod 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-448 still fails, and which other rules do.
Related rules
- UBL-CR-449 Mandate reversal period in the XML
- UBL-CR-450 Mandate clauses in the XML
- UBL-CR-451 Payment means must not carry trade financing details
- UBL-CR-452 Payment terms must not carry an identifier
- UBL-CR-453 Payment terms must not carry a payment method identifier
- UBL-CR-454 Payment terms must not carry a prepaid payment reference