PEPPOL-EN16931-R004: Specification identifier MUST begin with the value…
Peppol BIS Billing 3.0.21 · UBL
Original rule text
[PEPPOL-EN16931-R004]-Specification identifier MUST begin with the value 'urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0' and follow the format rules for the identifier.
starts-with(normalize-space(cbc:CustomizationID/text()), 'urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0') and not(contains(normalize-space(cbc:CustomizationID/text()), '::'))PEPPOL-EN16931-R004 is a fatal rule in the format layer of Peppol BIS Billing 3.0.21 · UBL. An invoice that breaks it is rejected.
What this rule requires
The cbc:CustomizationID element in an Invoice or CreditNote must contain a value that starts with urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0 and does not contain ::. The check uses normalize-space(), so surrounding whitespace is ignored, but the value cannot be empty or only whitespace. Because the rule is fatal, an invoice that does not meet these conditions fails validation.
How to fix
Set cbc:CustomizationID to a value that begins with exactly urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0 and avoid the substring ::. If your system adds a suffix after the prefix, make sure it does not contain ::. Use the full prefix alone if no suffix is required.
Guidance on this rule. The original text above is authoritative.
Where to go next
PEPPOL-EN16931-R004 changed in 1 published Peppol BIS Billing UBL release comparison:
- PEPPOL-EN16931-R004 in 3.0.20 → 3.0.21: Test expression rewritten
Validate an invoice against these rules · All release changes