aeat.core._tax_domain module

Closed enumeration of Spanish-tax taxonomic domains used by the modelo registry.

Every ModeloDefinition declares the broad tax family it belongs to via its tax_domain field. The exported TaxDomain enum closes that value set so loader hydration rejects typos and unknown values at registry-load time rather than at any downstream branch on the string. It is the tax-family sibling of Modelo: one enum names the modelo identifier, the other names the registry taxonomy attached to that modelo definition.

Hydration happens at the registry boundary: load_registry_tree() parses the TOML manifest string into tax_domain. The enum is therefore a schema contract for registry authors and readers, not a calculation-class switch and not an applicability verdict.

class TaxDomain(*values)[source]

Bases: StrEnum

Spanish-tax taxonomic domains accepted by modelo registry manifests.

Members use Spanish stems for tax-system concepts (iva, irpf, is) and classify ModeloDefinition records at the broad family level. A domain groups a modelo in the registry; it does not decide whether a taxpayer must file that modelo.

CENSO

Censo / structural registrations (modelo 036, 037).

IRPF

Impuesto sobre la Renta de las Personas Físicas.

IAE

Impuesto sobre Actividades Económicas.

INFORMATIVE

Informative-only filings (no own liquidación).

IVA

Impuesto sobre el Valor Añadido.

IS

Impuesto sobre Sociedades.

IRNR

Impuesto sobre la Renta de no Residentes.

PATRIMONIO

Impuesto sobre el Patrimonio (modelo 714).

CROSS_TAX

Retentions / pagos a cuenta that feed both IRPF and IS.

IDSD

Impuesto sobre Determinados Servicios Digitales (modelo 490).

ITF

Impuesto sobre las Transacciones Financieras (modelo 604).

JUEGO

Impuesto sobre actividades de juego (modelo 763).

PLASTICO

Impuesto especial sobre envases de plástico no reutilizables (modelo 592).

IEDMT

Impuesto Especial sobre Determinados Medios de Transporte (modelo 576).