BR-44

This id stands for 2 different rules, one per rule set below: Factur-X numbers its rules in each profile separately.

error: the document is invalid Peppol documentation ↗

What the rule checks

As the rule set's publisher wrote it. The rule runs on every element the context matches, and fails where the test is false; the validator reports the line of that element.

Message

Each Invoice line charge shall have an Invoice line charge reason or an invoice line allowance reason code.

Context
//cac:InvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = true()] | //cac:CreditNoteLine/cac:AllowanceCharge[cbc:ChargeIndicator = true()]
Test
exists(cbc:AllowanceChargeReason) or exists(cbc:AllowanceChargeReasonCode)

Checked with EN 16931 Invoice (UBL), EN 16931 Credit Note (UBL), Croatia eRačun Invoice (UBL), Croatia eRačun Credit Note (UBL)

Message

Each Invoice line charge (BG-28) shall have an Invoice line charge reason (BT-144) or an Invoice line charge reason code (BT-145).

Context
//ram:SpecifiedLineTradeSettlement/ram:SpecifiedTradeAllowanceCharge/ram:ChargeIndicator[udt:Indicator = 'true']
Test
(../ram:Reason) or (../ram:ReasonCode)

Checked with EN 16931 Invoice (CII)