Peppol BIS Billing 3.0.20 · UBL

UBL-SR-43: Scheme identifier shall only be used for invoiced object (document type code with value…

Peppol BIS Billing 3.0.20 · UBL

fatalschema

Original rule text

[UBL-SR-43]-Scheme identifier shall only be used for invoiced object (document type code with value 130 or 50)

Stored validation assertion
((cbc:DocumentTypeCode='130') or ((local-name(/*) = 'CreditNote') and (cbc:DocumentTypeCode='50')) or (not(cbc:ID/@schemeID) and not(cbc:DocumentTypeCode)))

UBL-SR-43 is a fatal rule in the schema layer of Peppol BIS Billing 3.0.20 · UBL. An invoice that breaks it is rejected.

What this rule requires

For each cac:AdditionalDocumentReference, the rule allows only three situations: cbc:DocumentTypeCode equals 130; or, on a CreditNote, cbc:DocumentTypeCode equals 50; or neither cbc:ID/@schemeID nor cbc:DocumentTypeCode is present. If a reference has a cbc:ID/@schemeID without one of the allowed document type codes, or has a cbc:DocumentTypeCode other than 130/50 (with the credit note condition), the document is rejected. This is a fatal rule, so a violation fails validation.

How to fix

Check each cac:AdditionalDocumentReference. If it represents an invoiced object, set cbc:DocumentTypeCode to 130 (or 50 if the document is a CreditNote). If it does not, remove both cbc:ID/@schemeID and cbc:DocumentTypeCode from that reference. Do not leave cbc:DocumentTypeCode with an unlisted value, and do not include cbc:ID/@schemeID without the required document type code.

Guidance on this rule. The original text above is authoritative.

Where to go next

No published Peppol BIS Billing UBL release comparison lists a change to UBL-SR-43.

Validate an invoice against these rules · All release changes