Faktura

BR-CO-03

fatalEN 16931EN 16931 business ruleCIIUBLBT-7BT-8

Value added tax point date (BT-7) and Value added tax point date code (BT-8) are mutually exclusive.

Why it fails

The invoice carries both a VAT point date (BT-7) and a VAT point date code (BT-8). EN 16931 treats them as two ways of saying the same thing, so only one may appear.

How to fix it

Keep whichever you actually mean and delete the other. Use BT-8 with a code (3 = invoice date, 35 = delivery date, 432 = payment date) when the tax point follows one of those events; use BT-7 only when the date is arbitrary and cannot be derived.

What the validator checks

CII — context $VAT_breakdown

((//ram:TaxPointDate) and not(//ram:DueDateTypeCode)) or (not (//ram:TaxPointDate) and (//ram:DueDateTypeCode)) or (not (//ram:TaxPointDate) and not (//ram:DueDateTypeCode))

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

(exists(cbc:TaxPointDate) and not(cac:InvoicePeriod/cbc:DescriptionCode)) or (not(cbc:TaxPointDate) and exists(cac:InvoicePeriod/cbc:DescriptionCode)) or (not(cbc:TaxPointDate) and not(cac:InvoicePeriod/cbc:DescriptionCode))

Related rules

Part of BR-CO — Calculation rules.

Validate an invoice against this rule →