Skip to content

Warning

UBL-CR-100: Leave the XPath out of the contract reference

In short

Warning: worth checking.

UBL-CR-100 means the contract reference contains an XPath, a technical pointer that EN 16931 does not use there. Remove cbc:XPath from cac:ContractDocumentReference and keep the contract number.

On this page

What it means

In a UBL invoice or credit note, this rule checks that the document-level contract reference (BT-12), cac:ContractDocumentReference, contains no cbc:XPath. An empty element still counts as present.

Why it matters

EN 16931 does not use an XPath in the contract reference.

How to fix it

Remove the XPath stored with the contract reference. If your invoicing software adds it automatically, ask its supplier to stop exporting this element. If you build the XML yourself, remove cbc:XPath from cac:ContractDocumentReference. Keep the contract number, then export the corrected file and check it 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 ContractDocumentReference Xpath

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-100 still fails, and which other rules do.

Updated 6 November 2026