InvoiceValidator.eu

PEPPOL-COMMON-R043

fatalPeppol BIS Billing 3.0profileCIIUBL

Belgian enterprise number MUST be stated in the correct format.

Why it fails

A Belgian enterprise number is malformed.

How to fix it

Ten digits beginning with 0 or 1, no dots. The last two digits are a check computed as 97 minus the first eight modulo 97.

What the validator checks

CII — context ram:URIID[@schemeID = '0208'] | ram:ID[@schemeID = '0208'] | ram:GlobalID[@schemeID = '0208']

matches(normalize-space(), '^[0-9]{10}$') and u:mod97-0208(normalize-space())

UBL — context cbc:EndpointID[@schemeID = '0208'] | cac:PartyIdentification/cbc:ID[@schemeID = '0208'] | cbc:CompanyID[@schemeID = '0208']

matches(normalize-space(), '^[0-9]{10}$') and u:mod97-0208(normalize-space())

Related rules

Part of PEPPOL-COMMON — Peppol identifier formats.

Check your own invoice against PEPPOL-COMMON-R043

…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.