Skip to content

Warning

UBL-CR-101: Leave the language out of the contract reference

In short

Warning: worth checking.

UBL-CR-101 means the contract reference in your UBL file contains a language identifier (cbc:LanguageID), which EN 16931 does not use there. Remove that element 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:LanguageID. This element identifies the contract document's language. An empty element still counts as present.

Why it matters

EN 16931 does not use a language identifier in the contract reference.

How to fix it

In your invoicing software, clear the language stored with the contract reference. If the software adds the element automatically, ask its supplier to stop exporting it. If you build the XML yourself, remove cbc:LanguageID from cac:ContractDocumentReference and keep cbc:ID with the contract number. 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 LanguageID

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

Updated 6 November 2026