Skip to main content

BR-AG-08 IPSI taxable amount must equal the summed base

For each different value of VAT category rate (BT-119) where the VAT category code (BT-118) is "IPSI", the VAT category taxable amount (BT-116) in a VAT breakdown (BG-23) shall equal the sum of Invoice line net amounts (BT-131) plus the sum of document level charge amounts (BT-99) minus the sum of document level allowance amounts (BT-92) where the VAT category code (BT-151, BT-102, BT-95) is "IPSI" and the VAT rate (BT-152, BT-103, BT-96) equals the VAT category rate (BT-119).

Problem Description

ERROR

EN 16931 rule for IGIC/IPSI (Canary Islands, Ceuta, Melilla)

Context and Significance

The IPSI category (the indirect tax of Ceuta and Melilla) comes from the updated EN16931 code lists supported by the current XRechnung 3.0.2 rulepack; this arithmetic tie keeps the IPSI breakdown base consistent with the underlying lines, charges and allowances at the same rate.

Solution

Recompute BT-116 for each "IPSI" rate as Σ BT-131 + Σ BT-99 − Σ BT-92 restricted to that rate, then write it into the matching cac:TaxSubtotal/cbc:TaxableAmount.

Quick actions

Valid Examples

  • One "M" (IPSI) line net 100.00 at 10.00 %, no charges or allowances, and BT-116 = 100.00

Invalid Examples

  • One "M" (IPSI) line net 100.00 at 10.00 % but BT-116 = 90.00

Code Examples

Valid XML
<cac:InvoiceLine>
  <cbc:LineExtensionAmount currencyID="EUR">100.00</cbc:LineExtensionAmount>
  <cac:Item>
    <cac:ClassifiedTaxCategory>
      <cbc:ID>M</cbc:ID>
      <cbc:Percent>10.00</cbc:Percent>
      <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
    </cac:ClassifiedTaxCategory>
  </cac:Item>
</cac:InvoiceLine>
<cac:TaxSubtotal>
  <cbc:TaxableAmount currencyID="EUR">100.00</cbc:TaxableAmount>
  <cac:TaxCategory>
    <cbc:ID>M</cbc:ID>
    <cbc:Percent>10.00</cbc:Percent>
    <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
  </cac:TaxCategory>
</cac:TaxSubtotal>
Invalid XML
<cac:InvoiceLine>
  <cbc:LineExtensionAmount currencyID="EUR">100.00</cbc:LineExtensionAmount>
  <cac:Item>
    <cac:ClassifiedTaxCategory>
      <cbc:ID>M</cbc:ID>
      <cbc:Percent>10.00</cbc:Percent>
      <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
    </cac:ClassifiedTaxCategory>
  </cac:Item>
</cac:InvoiceLine>
<cac:TaxSubtotal>
  <cbc:TaxableAmount currencyID="EUR">90.00</cbc:TaxableAmount>
  <cac:TaxCategory>
    <cbc:ID>M</cbc:ID>
    <cbc:Percent>10.00</cbc:Percent>
    <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
  </cac:TaxCategory>
</cac:TaxSubtotal>

Affected Fields

Validation Tools