InvoiceValidator.eu

NL-R-009

fatalPeppol BIS Billing 3.0profileCIIUBL

For suppliers in the Netherlands, if an order line reference (cac:OrderLineReference/cbc:LineID) is used, there must be an order reference on the document level (cac:OrderReference/cbc:ID)

Why it fails

An order LINE reference is given but the document-level order reference is missing.

How to fix it

Add cac:OrderReference/cbc:ID (BT-13) at document level. A line cannot reference a line of an order that the invoice never names.

What the validator checks

CII — context rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedLineTradeAgreement/ram:BuyerOrderReferencedDocument/ram:LineID[$supplierCountryIsNL]

exists(/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:BuyerOrderReferencedDocument/ram:IssuerAssignedID)

UBL — context cac:OrderLineReference/cbc:LineID[$supplierCountryIsNL]

exists(/*/cac:OrderReference/cbc:ID)

Related rules

Part of NL-R — Netherlands.

Check your own invoice against NL-R-009

…or paste the XML instead

Nothing is stored, and the whole invoice is checked, not just this rule. A PDF only works if it is Factur-X / ZUGFeRD — a PDF with the invoice XML inside it.

This is a Peppol BIS Billing 3.0 rule: an invoice can be perfectly valid EN 16931 and still be rejected by it.