Factuarea API

Impuestos territoriales — IVA, IGIC e IPSI

España tiene tres impuestos indirectos, no uno. Qué tipos son legales en cada uno, cómo se elige el régimen por documento, qué declara el desglose de la AEAT y por qué el IGIC y el IPSI nunca aparecen en la declaración trimestral de IVA.

La península y Baleares repercuten IVA. Canarias repercute IGIC. Ceuta y Melilla repercuten IPSI. Son tres impuestos distintos con tres rejillas de tipos distintas, tres códigos AEAT distintos y tres administraciones distintas — y tratarlos como uno solo es la vía por la que una empresa canaria acaba sobredeclarando su IVA.

Cuándo aplica

El régimen aplicable se deriva de la zona AEAT de la empresa emisora: península → IVA, Canarias → IGIC, Ceuta y Melilla → IPSI (BR-TAX-020, art. 1.3 RRSIF).

La derivación es el valor por defecto, no toda la historia. Como una operación puede localizarse en un sitio distinto de donde está establecido el emisor, un documento puede sobrescribir el régimen de forma explícita (BR-TAX-027) — ver Elegir el régimen.

Las tres rejillas de tipos

Cada régimen tiene una rejilla cerrada de tipos legales y un tipo general (BR-TAX-020):

RégimenCódigo AEATTipos legalesTipo general
IVA010, 4, 10, 2121 %
IPSI020, 0,5, 1, 2, 4, 8, 108 %
IGIC030, 3, 5, 7, 9,5, 15, 207 %

El 0 % es válido en los tres — representa la operación exenta.

Fíjate en los códigos AEAT: el IPSI es el 02 y el IGIC el 03, no al revés. Un objeto de valor interno anterior los tenía invertidos; emitir el equivocado produce un rechazo o una declaración errónea.

La rejilla se impone al crear o editar un impuesto de IGIC o de IPSI: un tipo fuera de la rejilla de su régimen responde 422 listando los tipos legales (BR-TAX-021). Mover un impuesto existente a otra zona revalida su tipo contra el régimen nuevo, así que un impuesto al 21 % no puede reetiquetarse como canario sin cambiar antes el tipo.

Al IVA no se le estrecha así a propósito. El catálogo sembrado contiene tipos históricos y transitorios —2 %, 5 %, 7,5 % de las medidas antiinflación— que no pertenecen a una rejilla cerrada, y rechazarlos rompería los datos existentes.

Qué envía la API

Encontrar los impuestos correctos

GET /v1/taxes acepta tanto country_aeat_zone (peninsula, canarias, ceuta, melilla) como el derivado indirect_tax_regime (iva, igic, ipsi). Son dos vistas equivalentes de la misma dimensión: ?indirect_tax_regime=igic equivale a ?country_aeat_zone=canarias (BR-TAX-026).

curl "https://api.factuarea.com/v1/taxes?indirect_tax_regime=igic" \
  -H "Authorization: Bearer fact_live_3pXnR2VbY7TcA9eFmN5z8KqW"

Cada impuesto expone su indirect_tax_regime, derivado en solo lectura de su zona, y linked_surcharge_taxes_id, el recargo de equivalencia legalmente emparejado con él. Un régimen desconocido en el filtro degenera en una lista vacía — nunca inventa resultados. Los impuestos que no gravan el consumo —retenciones, recargos— llevan un régimen nulo.

Elegir el régimen de un documento

lines[].indirect_tax_regime acepta iva, igic o ipsi en POST /v1/invoices y PUT /v1/invoices/{id}. La precedencia es sobrescritura sobre zona (BR-TAX-027):

Una sobrescritura válida gana al régimen derivado de la zona del impuesto.

Sin sobrescritura → el régimen se deriva de la zona, el comportamiento histórico.

Ni impuesto resoluble ni sobrescritura → el snapshot se queda vacío. No se infiere nada.

Aplican dos guardas, ambas con 422:

  • Un valor fuera de iva|igic|ipsi se rechaza como invariante de dominio, no solo de formulario — la misma respuesta venga de la superficie que venga.
  • Todas las líneas de un documento deben compartir el mismo régimen. La sobrescritura es de documento, no de línea; mezclar dos regímenes responde 422 con una violación de regla de negocio. Las líneas sin régimen las ignora la comprobación, así que un documento que combine líneas igic explícitas con líneas sin tipar es homogéneo.
{
  "lines": [
    { "description": "Servicio prestado en Canarias", "quantity": 1, "unit_price": 100, "indirect_tax_regime": "igic" },
    { "description": "Materiales", "quantity": 2, "unit_price": 50, "indirect_tax_regime": "igic" }
  ]
}

El régimen elegido forma parte del snapshot fiscal inmutable de la línea, así que sobrevive a la conversión: un presupuesto o una proforma convertidos en factura heredan el régimen que se eligió, en lugar de recalcularlo con la zona que tenga hoy la empresa (BR-TAX-023). El campo hermano aeat_tax_code se deriva siempre del impuesto y no es sobrescribible nunca; si llega un valor, se ignora.

Qué sale en el PDF

La columna de impuesto y el bloque de totales muestran los tipos que se aplicaron de verdad, así que una factura con IGIC imprime tipos de IGIC. El nombre del régimen no es un elemento impreso aparte; se ve a través de los tipos y, cuando el documento la lleva, de la mención legal de su causa de exención (BR-TAX-024).

Como el snapshot es inmutable, una empresa que traslade después su domicilio fiscal no cambia retroactivamente los documentos que ya emitió.

Qué llega a la AEAT

En el registro VeriFactu, el campo Impuesto de cada grupo de desglose se deriva del régimen de la línea —01 para IVA, 02 para IPSI, 03 para IGIC— y no se fija a fuego nunca (BR-VFC-034). Una factura mixta produce un grupo de desglose por cada par (tipo, régimen), y la huella sella el conjunto. Las líneas históricas sin snapshot de régimen conservan 01, de modo que no se altera el XML de facturas ya declaradas.

La clave de régimen viaja de otra manera: bajo IPSI no se emite en absoluto, y bajo IVA e IGIC se deriva en lugar de fijarse a fuego — ver Claves de régimen.

En la declaración trimestral de IVA, la regla es absoluta: POST /v1/tax_reports/303 agrega solo las líneas cuyo régimen sea IVA (BR-TXR-039, BR-TXR-020):

  • IVA repercutido. Una línea de cualquier otro régimen se salta. No llega nunca a una casilla de IVA.
  • IVA soportado. La base y la cuota de las líneas que no son de IVA se restan del total de la factura, de modo que una compra puramente de IVA conserva exactamente su importe anterior, y una compra mixta aporta solo su parte de IVA. El IGIC y el IPSI soportados no son deducibles en esta declaración — son impuestos distintos.

El IGIC se liquida ante la Agencia Tributaria Canaria; el IPSI, ante la administración local de Ceuta o Melilla. Ninguno de los dos tiene nada que ver con la declaración estatal de IVA.

Las líneas del snapshot se agrupan por la clave compuesta (régimen, tipo) y no solo por el tipo, que es lo que impide que una línea de IPSI al 10 % se fusione con una línea de IVA al 10 % (BR-TXR-038). Entre las líneas de IVA se emite todo tipo presente —incluidos el 2 %, el 5 % y el 7,5 %—, así que no se pierde nada del fichero de la AEAT por caer fuera de los tres habituales.

El aviso territorial es un aviso, nunca un bloqueo

Una empresa de territorio especial que genere su declaración de IVA recibe un aviso en español en la lista warnings, nombrando la administración ante la que se liquida el impuesto indirecto. El fichero se produce igualmente, solo con la parte de IVA (BR-TXR-040).

No es un 422 a propósito. Una empresa canaria puede tener IVA perfectamente legítimo —ventas a la península, por ejemplo— y bloquear le negaría una declaración válida. El aviso aparece solo cuando la zona es especial y el periodo contiene realmente operaciones de impuesto indirecto, y se acumula con los demás avisos de calidad fiscal.

La declaración anual de operaciones con terceras personas (Modelo 347) se comporta de otra manera: incluye las operaciones de IGIC y de IPSI por su importe total con el impuesto incluido, porque es agnóstica a qué impuesto indirecto aplica. Ver Suplidos para lo que cambia su base.

Trazabilidad

Derivado de las reglas de dominio del backend de Factuarea:

  • BR-TAX-020 — el régimen indirecto como objeto de valor derivado de la zona AEAT, sus rejillas de tipos legales y sus códigos AEAT.
  • BR-TAX-021 — la imposición de la rejilla de tipos al crear o editar un impuesto de IGIC o de IPSI, y por qué al IVA no se le estrecha.
  • BR-TAX-023 — el snapshot fiscal inmutable por línea.
  • BR-TAX-024 — la causa de exención a nivel de documento y su mención legal.
  • BR-TAX-026 — el filtrado del catálogo por zona y por régimen, y el recargo vinculado que se expone.
  • BR-TAX-027 — la sobrescritura de régimen por documento, su precedencia, sus dos guardas con 422 y su supervivencia a la conversión.
  • BR-VFC-034 — el Impuesto del desglose derivado por línea, nunca fijado a fuego.
  • BR-TXR-020 — la declaración de IVA agrega solo líneas de IVA, y no pierde ningún tipo de IVA.
  • BR-TXR-038 — el snapshot agrupa por (régimen, tipo).
  • BR-TXR-039 — exclusión del IGIC y del IPSI tanto del IVA repercutido como del soportado.
  • BR-TXR-040 — el aviso territorial que nunca bloquea la generación.

En esta página