VRBL-INV-AU-1p0-6
Basic Info
| Rule | An Invoice that contains Allowance Tax ID, Charge Tax ID or Invoice Line Tax ID equal to "Not subject to tax" must contain exactly one Tax Subtotal with the Tax Subtotal Category ID equal to "Not subject to tax". |
| Context |
/ubl:Invoice
|
| Pattern | vrbl-invoice-au-1p0 |
| Severity | fatal |
Used Template: VRBL-AU-GST-Tax-Summary
| Parameter | Value | |
|---|---|---|
| TaxSchemeID | = |
O
|
| TaxSchemeDescription | = |
Not subject to tax
|
Implementation
(
(
boolean(cac:AllowanceCharge[string(cbc:ChargeIndicator) = 'false']/cac:TaxCategory[cac:TaxScheme/cbc:ID = 'GST']/cbc:ID = 'O')
or
boolean(cac:AllowanceCharge[string(cbc:ChargeIndicator) = 'true']/cac:TaxCategory[cac:TaxScheme/cbc:ID = 'GST']/cbc:ID = 'O')
or
boolean(cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[cac:TaxScheme/cbc:ID = 'GST']/cbc:ID = 'O')
)
and
count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cac:TaxScheme/cbc:ID = 'GST'][cbc:ID='O']/cbc:ID) = 1
)
or
(
not(cac:AllowanceCharge[string(cbc:ChargeIndicator) = 'false']/cac:TaxCategory[cac:TaxScheme/cbc:ID = 'GST']/cbc:ID = 'O')
and
not(cac:AllowanceCharge[string(cbc:ChargeIndicator) = 'true']/cac:TaxCategory[cac:TaxScheme/cbc:ID = 'GST']/cbc:ID = 'O')
and
not(cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[cac:TaxScheme/cbc:ID = 'GST']/cbc:ID = 'O')
and
not(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cac:TaxScheme/cbc:ID = 'GST']/cbc:ID = 'O')
)