InvoiceValidator.eu

UBL-SR-30

fatalEN 16931syntax binding ruleUBL

Document level allowance reason shall occur maximum once

Why it fails

'Document level allowance reason' appears more than once, and this profile allows it at most once.

How to fix it

Keep the single correct 'Document level allowance reason' and delete the rest. Repeating an element that the semantic model treats as singular is usually a serialiser writing every value it has instead of choosing one.

What the validator checks

UBL — context cac:AllowanceCharge[cbc:ChargeIndicator = false()]

(count(cbc:AllowanceChargeReason) <= 1)

Related rules

Part of UBL-SR — UBL cardinality.

Check your own invoice against UBL-SR-30

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