fatalEN 16931EN 16931 business ruleCIIUBLBT-24
An Invoice shall have a Specification identifier (BT-24).
The Specification identifier (BT-24) is missing. It tells the receiver which flavour of EN 16931 the document follows, so it is read before anything else.
Set BT-24 to the customisation ID of the profile you are sending. Plain EN 16931: urn:cen.eu:en16931:2017. Peppol BIS Billing 3.0: urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0. XRechnung adds a further #conformant# suffix. In UBL it is cbc:CustomizationID on the root; in CII it is GuidelineSpecifiedDocumentContextParameter/ram:ID. Copy the string exactly - one wrong character and the receiver applies the wrong rule set.
CII — context /rsm:CrossIndustryInvoice
normalize-space(rsm:ExchangedDocumentContext/ram:GuidelineSpecifiedDocumentContextParameter/ram:ID) != ''
UBL — context /ubl:Invoice | /cn:CreditNote
normalize-space(cbc:CustomizationID) != ''