ALIGNED-IBRP-TTX-09

[aligned-ibrp-ttx-09] – Tourism Tax (TTX/AAL) amount MUST equal the sum of line-level TTX tax amounts and TTX amounts on document-level allowances/charges.

About

ID
aligned-ibrp-ttx-09
Flag
fatal
Context
/*/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID)='TTX'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='AAL']
Test
(exists(//cac:InvoiceLine) and u:slack( abs(xs:decimal(../cbc:TaxAmount)), sum(../../../cac:InvoiceLine [cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID)='TTX'] /cac:TaxTotal/xs:decimal(cbc:TaxAmount)) + sum(../../../cac:AllowanceCharge [cbc:ChargeIndicator=true()] [cac:TaxCategory/normalize-space(cbc:ID)='TTX'] /xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge [cbc:ChargeIndicator=false()] [cac:TaxCategory/normalize-space(cbc:ID)='TTX'] /xs:decimal(cbc:Amount)), 0.02 ) ) or (exists(//cac:CreditNoteLine) and u:slack( abs(xs:decimal(../cbc:TaxAmount)), sum(../../../cac:CreditNoteLine [cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID)='TTX'] /cac:TaxTotal/xs:decimal(cbc:TaxAmount)) + sum(../../../cac:AllowanceCharge [cbc:ChargeIndicator=true()] [cac:TaxCategory/normalize-space(cbc:ID)='TTX'] /xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge [cbc:ChargeIndicator=false()] [cac:TaxCategory/normalize-space(cbc:ID)='TTX'] /xs:decimal(cbc:Amount)), 0.02 ) )