Skip to content

Warning

UBL-CR-629: Check the price validity period element

In short

Warning: worth checking.

UBL-CR-629 checks for cbc:ValidityPeriod inside cac:Price on invoice and credit note lines. If that exact element is present, remove it. The rule's XPath does not select cac:ValidityPeriod, so the two namespace variants must not be treated as equivalent.

On this page

What it means

The XPath checks every cac:InvoiceLine and cac:CreditNoteLine for cac:Price/cbc:ValidityPeriod. It does not select cac:Price/cac:ValidityPeriod and does not check a period directly under the line.

Why it matters

An XML element's namespace is part of its identity, so this XPath matches cbc:ValidityPeriod but not cac:ValidityPeriod.

How to fix it

Check the element's namespace, then remove cbc:ValidityPeriod from cac:Price in each affected cac:InvoiceLine or cac:CreditNoteLine. If you need to keep price validity dates as text, use the line note (BT-127) or invoice note (BT-22). Review cac:ValidityPeriod separately if present, because this XPath does not check it. Export the corrected file and recheck it.

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 InvoiceLine Item Price 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
Rule text from phive-rules 4.6.4.

Check your file

Drop your e-invoice to see whether UBL-CR-629 still fails, and which other rules do.

Updated 6 November 2026