aeat.application.calculations._m111_no_retenciones module

Modelo 111 no-retenciones period attestations.

M111_NO_RETENCIONES_PROFILE_PATH: Final

Profile fact carrying comma-separated YYYY:PERIOD no-obligation M111 periods.

parse_m111_no_retenciones_periods(raw)[source]

Parse profile YYYY:PERIOD tokens into validated period keys.

Invalid tokens are ignored fail-closed: they never suppress a dependency, so verification still asks for the missing filing/evidence instead of silently treating an unclear declaration as no-obligation evidence.

Return type:

frozenset[tuple[int, str]]

Parameters:

raw (str | None)

m111_no_retenciones_periods_from_profile_values(values)[source]

Return attested M111 no-retenciones periods from a profile projection.

Return type:

frozenset[tuple[int, str]]

Parameters:

values (Mapping[str, str] | None)

m111_no_retenciones_periods_for_bucket(bucket_id)[source]

Load attested M111 no-retenciones periods for bucket_id.

Missing profiles fail closed to an empty set.

Return type:

frozenset[tuple[int, str]]

Parameters:

bucket_id (str)

is_m111_no_retenciones_period(*, source_modelo, filing_year, period_token, attested_periods)[source]

Return whether a source requirement is attested as no-obligation M111.

Return type:

bool

Parameters: