Account
English

PEPPOL-EN16931-R101: Line document reference is not an invoiced object (code 130)

Peppol BIS Billing 3.0 rule · Error · UBL / CII

StandardPeppol BIS Billing 3.0 (OpenPeppol)SeverityError: the invoice is rejectedSyntaxUBL, CIIApplies toInvoices and credit notes sent over the Peppol network (UBL) and, because XRechnung embeds the Peppol rule set, every XRechnung as well.

Official rule text

[PEPPOL-EN16931-R101] Element Document reference can only be used for Invoice line object

Why this error occurs

At line level the document reference element is reserved for the invoiced object identifier (BT-128), which must be typed with document type code 130. The rule checks that any cac:DocumentReference in a line has cbc:DocumentTypeCode 130 (UBL) or that ram:SpecifiedLineTradeSettlement/ram:AdditionalReferencedDocument has ram:TypeCode 130 (CII). It fails when the type code is missing or when another code (e.g. 50 for delivery note, 916 for supporting document) is used because the ERP maps delivery or contract references to the line.

How to fix it

Set cbc:DocumentTypeCode to 130 for the one line reference that identifies the invoiced object. If the reference is something else, remove it from the line: delivery notes belong in the header cac:DespatchDocumentReference, order line numbers in cac:OrderLineReference/cbc:LineID, supporting documents in header cac:AdditionalDocumentReference. In CII set ram:TypeCode 130 on the line's ram:AdditionalReferencedDocument and move other references to header level.

Example (valid)

<cac:DocumentReference>
  <cbc:ID>SUBSCRIPTION-4711</cbc:ID>
  <cbc:DocumentTypeCode>130</cbc:DocumentTypeCode>
</cac:DocumentReference>

What the validator checks

Checked element (context):

UBL

cac:InvoiceLine | cac:CreditNoteLine

Test (XPath):

(not(cac:DocumentReference) or (cac:DocumentReference/cbc:DocumentTypeCode='130'))

CII

ram:IncludedSupplyChainTradeLineItem

Test (XPath):

(not(ram:SpecifiedLineTradeSettlement/ram:AdditionalReferencedDocument) or (ram:SpecifiedLineTradeSettlement/ram:AdditionalReferencedDocument/ram:TypeCode='130'))

Check your invoice

Drop your XML or PDF on the validator and every failed rule is linked to its page here. Free, no account, the file is not stored.

Check your invoice →

Same check via API:

curl -F file=@invoice.xml https://einvoicechecker.com/v1/validate

Related rules

Frequently asked questions

What does PEPPOL-EN16931-R101 mean?

PEPPOL-EN16931-R101 is a peppol bis billing 3.0 rule: Element Document reference can only be used for Invoice line object

Will my invoice be rejected because of PEPPOL-EN16931-R101?

Yes. PEPPOL-EN16931-R101 is flagged "fatal"; validators (KoSIT, Peppol access points, the German ZRE/OZG-RE portals) reject the invoice until it is fixed.

Which formats does PEPPOL-EN16931-R101 apply to?

Invoices and credit notes sent over the Peppol network (UBL) and, because XRechnung embeds the Peppol rule set, every XRechnung as well. Syntax: UBL and CII.

Source: Peppol BIS Billing 3.0.20 (November 2025). Catalogue generated from the official schematron on 2026-10-14.