InvoiceValidator.eu

UBL-CR-442

warningEN 16931syntax binding ruleUBL

A UBL invoice should not include the PaymentMeans PaymentMandate PayerFinancialAccount AccountTypeCode

Why it fails

The element 'PaymentMeans PaymentMandate PayerFinancialAccount AccountTypeCode' is present, but it carries no meaning in the EN 16931 semantic model, so a receiver is free to ignore or reject it.

How to fix it

Remove 'PaymentMeans PaymentMandate PayerFinancialAccount AccountTypeCode' from the document. Look for cac:PaymentMeans/cac:PaymentMandate/cac:PayerFinancialAccount/cbc:AccountTypeCode — that is the exact location. Nothing in EN 16931 maps to it - it is almost always left over from a generic UBL template. Reported as a warning.

What the validator checks

UBL — context /ubl:Invoice | /cn:CreditNote

not(cac:PaymentMeans/cac:PaymentMandate/cac:PayerFinancialAccount/cbc:AccountTypeCode)

Related rules

Part of UBL-CR — UBL restrictions.

Check your own invoice against UBL-CR-442

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