In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "IGIC" the Document level allowance VAT rate (BT-96) shall be 0 (zero) or greater than zero.
For this category L allowance, RateApplicablePercent is not greater than zero. The test explicitly requires a value greater than zero.
The rule requires a positive VAT rate for an allowance in category L. A zero VAT rate does not satisfy the XPath test.
The IGIC allowance is recorded with a VAT rate of zero or a negative value. The test requires a value greater than zero.
- Locate the category
Lallowance inSpecifiedTradeAllowanceCharge. - Check the
AddTradeAllowance(...)call and enter a VAT rate greater than zero. - Generate the invoice again and validate it again.
<ram:SpecifiedTradeAllowanceCharge> <ram:ChargeIndicator> <udt:Indicator>false</udt:Indicator> </ram:ChargeIndicator> <ram:CategoryTradeTax> <ram:CategoryCode>L</ram:CategoryCode> <ram:RateApplicablePercent>0</ram:RateApplicablePercent> </ram:CategoryTradeTax> </ram:SpecifiedTradeAllowanceCharge>
<ram:SpecifiedTradeAllowanceCharge> <ram:ChargeIndicator> <udt:Indicator>false</udt:Indicator> </ram:ChargeIndicator> <ram:CategoryTradeTax> <ram:CategoryCode>L</ram:CategoryCode> <ram:RateApplicablePercent>1</ram:RateApplicablePercent> </ram:CategoryTradeTax> </ram:SpecifiedTradeAllowanceCharge>
TaxCategoryCodes(BT-95)FacturXInvoice.AddTradeAllowance(basisAmount, currency, actualAmount, chargePercentage, reason, taxTypeCode, taxCategoryCode, taxPercent, reasonCode)(BG-20)FacturXInvoice.GetTradeAllowances()(BG-20)FacturXInvoice.TradeAllowanceCharges(BG-20)AbstractTradeAllowanceCharge(Document level allowance: BG-20)
Technical details
The XPath selects allowances with ChargeIndicator equal to false and CategoryCode equal to L, then strictly checks whether RateApplicablePercent is greater than zero.
The rule applies to a document-level allowance in SpecifiedTradeAllowanceCharge whose CategoryCode is L for IGIC.
rule/@context)assert/@test)