cadrumo.domain.iva.regimen_simplificado_rows module¶
Canonical filing-year rows for Modelo 303 regimen simplificado.
The annual Orden owns the activity and module taxonomy. These models own only taxpayer facts and their evidence; official record slots are a projection of this collection and are never persisted as a second set of scalar inputs.
- class ModuloOrdenAnual(**data)[source]¶
Bases:
BaseModelOne module identity and position established by an annual Orden.
- Parameters:
identity (Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)])
order (int)
coefficient (Annotated[Decimal, FieldInfo(annotation=NoneType, required=True, metadata=[Gt(gt=Decimal('0'))])])
legal_refs (tuple[Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)], ...])
source_refs (tuple[Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)], ...])
- identity: _Token¶
- order: int¶
- coefficient: _PositiveCoefficient¶
- legal_refs: tuple[_Token, ...]¶
- source_refs: tuple[_Token, ...]¶
- class ActividadOrdenAnual(**data)[source]¶
Bases:
BaseModelAnnual Orden taxonomy for one IAE simplified-regime activity.
- Parameters:
orden_id (Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=^[a-z0-9][a-z0-9._:-]*[a-z0-9]$|^[a-z0-9]$, ascii_only=None)])
ejercicio (Annotated[int, FieldInfo(annotation=NoneType, required=True, metadata=[Ge(ge=2000), Le(le=2099)])])
kind (Literal['agricola', 'no_agricola'])
activity_code (Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)])
iae_epigrafe (Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=32, pattern=None, ascii_only=None)] | None)
auxiliary_activity_indicator (Literal['1', '2'] | None)
modulos (tuple[ModuloOrdenAnual, ...])
cuota_minima_pct (Annotated[Decimal, FieldInfo(annotation=NoneType, required=True, metadata=[Ge(ge=Decimal('0'))])])
applicable_fact_identities (tuple[Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)], ...])
legal_refs (tuple[Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)], ...])
source_refs (tuple[Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)], ...])
- orden_id: ActividadOrdenAnualId¶
- ejercicio: FilingYear¶
- kind: Literal['agricola', 'no_agricola']¶
- activity_code: _Token¶
- iae_epigrafe: IaeEpigrafe | None¶
- auxiliary_activity_indicator: IndicadorAuxiliarActividad | None¶
- modulos: tuple[ModuloOrdenAnual, ...]¶
- cuota_minima_pct: _NonNegative¶
- applicable_fact_identities: tuple[_Token, ...]¶
- legal_refs: tuple[_Token, ...]¶
- source_refs: tuple[_Token, ...]¶
- class IndiceCuotaDevengadaAgricolaOrdenAnual(**data)[source]¶
Bases:
BaseModelOne published agricultural quota index, deliberately not a filing code.
- Parameters:
activity_name (Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=500, pattern=None, ascii_only=None)])
cuota_devengada_index (Annotated[Decimal, FieldInfo(annotation=NoneType, required=True, metadata=[Ge(ge=Decimal('0'))])])
legal_refs (tuple[Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)], ...])
source_refs (tuple[Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)], ...])
- activity_name: _OfficialActivityName¶
- cuota_devengada_index: _NonNegative¶
- legal_refs: tuple[_Token, ...]¶
- source_refs: tuple[_Token, ...]¶
- class PorcentajeIngresoCuentaAgricolaOrdenAnual(**data)[source]¶
Bases:
BaseModelOne agricultural ingreso-a-cuenta rate, before an official code crosswalk exists.
- Parameters:
activity_name (Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=500, pattern=None, ascii_only=None)])
percentage (Annotated[Decimal, FieldInfo(annotation=NoneType, required=True, metadata=[Ge(ge=Decimal('0'))])])
legal_refs (tuple[Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)], ...])
source_refs (tuple[Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)], ...])
- activity_name: _OfficialActivityName¶
- percentage: _NonNegative¶
- legal_refs: tuple[_Token, ...]¶
- source_refs: tuple[_Token, ...]¶
- class PorcentajeIngresoCuentaIaeOrdenAnual(**data)[source]¶
Bases:
BaseModelOne source-published IAE ingreso-a-cuenta rate, retained outside filing identity selection.
- Parameters:
iae_epigrafe (Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=32, pattern=None, ascii_only=None)])
activity_name (Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=500, pattern=None, ascii_only=None)])
percentage (Annotated[Decimal, FieldInfo(annotation=NoneType, required=True, metadata=[Ge(ge=Decimal('0'))])])
legal_refs (tuple[Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)], ...])
source_refs (tuple[Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)], ...])
- iae_epigrafe: IaeEpigrafe¶
- activity_name: _OfficialActivityName¶
- percentage: _NonNegative¶
- legal_refs: tuple[_Token, ...]¶
- source_refs: tuple[_Token, ...]¶
- class IndiceTemporadaOrdenAnual(**data)[source]¶
Bases:
BaseModelOne contiguous source-published seasonal day band.
- Parameters:
minimum_days (int)
maximum_days (int)
coefficient (Annotated[Decimal, FieldInfo(annotation=NoneType, required=True, metadata=[Gt(gt=Decimal('0'))])])
legal_refs (tuple[Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)], ...])
source_refs (tuple[Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)], ...])
- minimum_days: int¶
- maximum_days: int¶
- coefficient: _PositiveCoefficient¶
- legal_refs: tuple[_Token, ...]¶
- source_refs: tuple[_Token, ...]¶
- class DificilJustificacionOrdenAnual(**data)[source]¶
Bases:
BaseModelThe single annually sourced IVA difficult-justification percentage.
- Parameters:
percentage (Annotated[Decimal, FieldInfo(annotation=NoneType, required=True, metadata=[Ge(ge=Decimal('0'))])])
legal_refs (tuple[Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)], ...])
source_refs (tuple[Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)], ...])
- percentage: _NonNegative¶
- legal_refs: tuple[_Token, ...]¶
- source_refs: tuple[_Token, ...]¶
- class ReduccionLorcaOrdenAnual(**data)[source]¶
Bases:
BaseModelOne registry-projected municipal IVA reduction before activity calculation.
- Parameters:
ejercicio (Annotated[int, FieldInfo(annotation=NoneType, required=True, metadata=[Ge(ge=2000), Le(le=2099)])])
municipality (Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)])
annex_scope (Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)])
percentage (Annotated[Decimal, FieldInfo(annotation=NoneType, required=True, metadata=[Ge(ge=Decimal('0'))])])
calculation_periods (tuple[Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)], ...])
legal_refs (tuple[Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)], ...])
source_refs (tuple[Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)], ...])
source_content_digest (Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)])
- ejercicio: FilingYear¶
- municipality: _Token¶
- annex_scope: _Token¶
- percentage: _NonNegative¶
- calculation_periods: tuple[_Token, ...]¶
- legal_refs: tuple[_Token, ...]¶
- source_refs: tuple[_Token, ...]¶
- source_content_digest: _Token¶
- class AutoridadAgricolaOrdenAnualNoResuelta(**data)[source]¶
Bases:
BaseModelPublished agricultural axes whose official two-digit filing-code crosswalk is absent.
- Parameters:
status (Literal['official_code_crosswalk_unavailable'])
quota_indexes (tuple[IndiceCuotaDevengadaAgricolaOrdenAnual, ...])
ingreso_a_cuenta_percentages (tuple[PorcentajeIngresoCuentaAgricolaOrdenAnual, ...])
annual_orden_source_ref (Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)])
record_design_source_ref (Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)])
record_design_source_content_digest (Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=160, pattern=None, ascii_only=None)])
filing_record (Literal['DP30302'])
filing_code_digits (Literal[2])
refusal_reason (Literal['annual_orden_does_not_publish_dp30302_two_digit_agricultural_crosswalk'])
- status: Literal['official_code_crosswalk_unavailable']¶
- quota_indexes: tuple[IndiceCuotaDevengadaAgricolaOrdenAnual, ...]¶
- ingreso_a_cuenta_percentages: tuple[PorcentajeIngresoCuentaAgricolaOrdenAnual, ...]¶
- annual_orden_source_ref: _Token¶
- record_design_source_ref: _Token¶
- record_design_source_content_digest: _Token¶
- filing_record: Literal['DP30302']¶
- filing_code_digits: Literal[2]¶
- refusal_reason: Literal['annual_orden_does_not_publish_dp30302_two_digit_agricultural_crosswalk']¶
- class M303RegimenSimplificadoScope(value, *, _registry_validated=False)[source]¶
Bases:
StrictRegistryTokenOpaque simplified-regime scope projected from the 0098 composition fact.
- class M303RegimenSimplificadoScopeDecision(**data)[source]¶
Bases:
BaseModelExplicit registry-projected scope input for the M303 simplified branch.
- Parameters:
data (Any)
- scope: M303RegimenSimplificadoScope¶
- class HechoActividadSimplificado(**data)[source]¶
Bases:
BaseModelOne declared or attested activity fact at its closed semantic coordinate.
- Parameters:
data (Any)
- fact: M303RegimenSimplificadoFact¶
- sub_index: int | None¶
- value: str | Decimal¶
- evidence_reference: FilingEvidenceReference¶
- class EntradaModuloSimplificado(**data)[source]¶
Bases:
BaseModelOne taxpayer-declared module quantity and its filing evidence.
- Parameters:
data (Any)
- module_identity: _Token¶
- declared_quantity: _NonNegative¶
- evidence_reference: FilingEvidenceReference¶
- class ActividadAgricolaSimplificado(**data)[source]¶
Bases:
BaseModelOne agricultural, livestock, or forestry simplified-regime activity.
- Parameters:
data (Any)
- kind: Literal['agricola']¶
- orden_id: ActividadOrdenAnualId¶
- ejercicio: FilingYear¶
- activity_id: _Token¶
- activity_code: _Token¶
- facts: tuple[HechoActividadSimplificado, ...]¶
- evidence_reference: FilingEvidenceReference¶
- class LorcaActivityEligibility(**data)[source]¶
Bases:
BaseModelEvidence that this Annex II activity is, or is not, carried out in Lorca.
- Parameters:
data (Any)
- eligible: bool¶
- evidence_reference: FilingEvidenceReference¶
- class ActividadNoAgricolaSimplificado(**data)[source]¶
Bases:
BaseModelOne non-agricultural simplified-regime IAE activity.
- Parameters:
data (Any)
- kind: Literal['no_agricola']¶
- orden_id: ActividadOrdenAnualId¶
- ejercicio: FilingYear¶
- activity_id: _Token¶
- iae_epigrafe: IaeEpigrafe¶
- auxiliary_activity_indicator: IndicadorAuxiliarActividad | None¶
- lorca_eligibility: LorcaActivityEligibility | None¶
- modulos: tuple[EntradaModuloSimplificado, ...]¶
- facts: tuple[HechoActividadSimplificado, ...]¶
- evidence_reference: FilingEvidenceReference¶
- class RegimenSimplificadoFilingRows(**data)[source]¶
Bases:
BaseModelOrdered canonical activity collection for one filing year.
- Parameters:
data (Any)
- ejercicio: FilingYear¶
- activities: tuple[RegimenSimplificadoActivity, ...]¶
- records()[source]¶
Pack exactly two activities of each kind into at most three records.
- Return type:
tuple[tuple[ActividadAgricolaSimplificado|ActividadNoAgricolaSimplificado,...],...]
- validate_regimen_simplificado_rows(rows, *, orden, agricultural_authority, applicable, censo_iae_epigraphs, orden_ejercicio=None)[source]¶
Fail closed on applicability, annual taxonomy, order, and censo conflicts.
- Return type:
- Parameters:
orden (tuple[ActividadOrdenAnual, ...])
agricultural_authority (AutoridadAgricolaOrdenAnualNoResuelta)
applicable (bool)
orden_ejercicio (int | None)