errorbusinessESEN 16931

BR-AF-01:IGIC invoice must have a matching VAT breakdown entry

Fix: Add a TaxSubtotal block with TaxCategory ID = 'L' summarising the IGIC-taxed portion of the invoice. Invoice Navigator generates the missing breakdown from the line-level detail automatically. Upload your invoice to fix this automatically.

When an invoice contains a line, document-level allowance, or document-level charge with VAT category code (BT-151, BT-95, or BT-102) equal to 'L' (IGIC — Impuesto General Indirecto Canario), the VAT breakdown (BG-23) must include at least one entry with VAT category code (BT-118) equal to 'L'.

Severity
Fatal
Rule set
EN 16931
Country
ES
Fix type
AUTO-FIX
Confidence
90%
Category
calculation

Engine Classification

generate_breakdown_from_lines

Confidence: 90% · Applied automatically in pipeline

What is BR-AF-01?

BR-AF-01 is a fatal validation rule defined in the EN 16931 specification (ES national rules). It validates the ID must include at least one 'L' entry. The IGIC category applies to invoices issued in the Canary Islands under the Spanish special tax regime. element under TaxSubtotal > TaxCategory in the UBL invoice XML.

When this rule fires, the invoice is rejected by Peppol access points and never reaches the buyer.

Target path: Schematron rule BR-AF-01: if any of cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory/cbc:ID, cac:AllowanceCharge/cac:TaxCategory/cbc:ID or their document-level equivalents equals 'L', then cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID must include at least one 'L' entry. The IGIC category applies to invoices issued in the Canary Islands under the Spanish special tax regime.

Why This Error Matters

IGIC is the Canary Islands equivalent of VAT and has its own reporting requirements to the Spanish AEAT and the Canary Government. An invoice with IGIC lines but no IGIC VAT breakdown cannot be reconciled against the seller's SII / IGIC declarations and is rejected.

BR-AF-01 is a hard failure — the invoice must be corrected and re-sent before it can reach the recipient.

Invoice rejected by Peppol and by Spanish AEAT / Canary IGIC reporting. Blocks buyer input tax claim and creates a reconciliation gap in the seller's SII submissions.

Invoice Navigator can automatically correct this error in your pipeline. The fix is applied with full audit evidence, so your compliance trail remains intact.

Validator Behavior

  • ·Causes invoice rejection
  • ·Error returned: BR-AF-01
  • ·Specification: EN 16931

How to Fix It

1.

2.

3.

4.

5.

Before / After

Failing XML
<cac:InvoiceLine>
  <cac:Item>
    <cac:ClassifiedTaxCategory>
      <cbc:ID>L</cbc:ID>
      <cbc:Percent>7</cbc:Percent>
    </cac:ClassifiedTaxCategory>
  </cac:Item>
</cac:InvoiceLine>
<cac:TaxTotal>
  <!-- Only 'S' subtotals present, no 'L' block -->
</cac:TaxTotal>
Corrected XML
<cac:TaxTotal>
  <cac:TaxSubtotal>
    <cbc:TaxableAmount currencyID="EUR">1000.00</cbc:TaxableAmount>
    <cbc:TaxAmount currencyID="EUR">70.00</cbc:TaxAmount>
    <cac:TaxCategory>
      <cbc:ID>L</cbc:ID>
      <cbc:Percent>7</cbc:Percent>
      <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
    </cac:TaxCategory>
  </cac:TaxSubtotal>
</cac:TaxTotal>

Technical Reference

XPathSchematron rule BR-AF-01: if any of cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory/cbc:ID, cac:AllowanceCharge/cac:TaxCategory/cbc:ID or their document-level equivalents equals 'L', then cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID must include at least one 'L' entry. The IGIC category applies to invoices issued in the Canary Islands under the Spanish special tax regime.
SpecEN 16931
Strategygenerate_breakdown_from_lines

Common Causes

  • ·ERP treats IGIC as regular VAT and outputs only an S breakdown
  • ·Line-level IGIC category set but breakdown generator hardcoded to standard categories
  • ·Mainland Spain configuration reused for a Canary Islands legal entity
  • ·SII connector applied IGIC classification post-export, missing the UBL breakdown update
  • ·Manual XML authoring that copied a mainland template

Seeing this in production? The API handles BR-AF-01 automatically. See the fix response →

ERP-Specific Causes

Commonly Seen In

SAPOdooMicrosoft Dynamics 365SageA3 SoftwareCustom ERP

Frequently Asked Questions

Impuesto General Indirecto Canario — the general indirect tax of the Canary Islands. It replaces VAT (IVA) inside the Canary Islands and uses VAT category code L in EN 16931.

Zero rate (0%), reduced (3%), general (7%), increased (9.5%) and special (15%). Some services are exempt. BR-AF-01 only requires the breakdown exists — BR-AF-05 checks the rate value.

Yes. When line-level IGIC items exist, Invoice Navigator generates the missing L TaxSubtotal from the line detail with 0.90 confidence.

No. Mainland Spain uses IVA (category S). BR-AF-01 only applies when at least one item is classified L (IGIC).

BR-AF-01 requires a matching breakdown entry. BR-AF-02/03/04 additionally require the seller VAT identifier when IGIC appears on a line, a document allowance, or a document charge respectively.

Related Errors

Related Content

Last updated: 5 August 2026

Share this guide:

Validate your invoice

Drop your XML here to check for BR-AF-01

Auto-fix BR-AF-01 in seconds

Upload your invoice and we fix this error automatically. Financial fields are never touched.