Rules
VRBL-INV-PEPPOL-RS-10
Basic Info
| Rule | The Total Tax Amount in accounting currency must have the same operational sign. |
| Context |
/ubl:Invoice
|
| Pattern | vrbl-invoice-peppol-bis3p0-reduced-syntax |
| Severity | fatal |
Implementation
not(boolean(cbc:TaxCurrencyCode))
or
(
number(cac:TaxTotal[cbc:TaxAmount/@currencyID = /ubl:Invoice/cbc:TaxCurrencyCode]/cbc:TaxAmount) <= 0
and
number(cac:TaxTotal[cbc:TaxAmount/@currencyID = /ubl:Invoice/cbc:DocumentCurrencyCode]/cbc:TaxAmount) <= 0
)
or
(
number(cac:TaxTotal[cbc:TaxAmount/@currencyID = /ubl:Invoice/cbc:TaxCurrencyCode]/cbc:TaxAmount) >= 0
and
number(cac:TaxTotal[cbc:TaxAmount/@currencyID = /ubl:Invoice/cbc:DocumentCurrencyCode]/cbc:TaxAmount) >= 0
)