cadrumo.core.notificacion_estado_servicio module¶
Service state of one AEAT electronic notification, as Ley 39/2015 defines it.
A notificación pulled from the DEHu buzón carries two facts about delivery: the
fecha de notificación AEAT stamps when it puts the item at the taxpayer’s
disposal, and whether the taxpayer has since accessed the contents. Neither
fact, on its own, answers the question that decides whether the operator must
act: has this notification already been legally served?
Ley 39/2015 art. 43.2 answers it. An electronic notification is served at the moment of access; and where the electronic channel is obligatory or the interesado chose it, the notification is deemed rejected — served in law despite never having been read — once ten días naturales have elapsed since the puesta a disposición without access. That deemed service is the rechazo tácito, and it carries the full consequences of a notification the taxpayer read.
NotificacionEstadoServicio is the closed axis of that service state.
It is deliberately ORTHOGONAL to
PostFilingEventKind, which closes the procedural
category axis (requerimiento, liquidación, providencia de apremio). The two
answer unrelated questions: a requerimiento can independently be accessed,
inside its window, or deemed served, so cross-producting category by state
would multiply enum members combinatorially and make a later “what changed”
diff ambiguous between the two.
The window counts días NATURALES, not hábiles: weekends, holidays and August all count. A días-hábiles reading computes a later lapse date than the law allows, which understates urgency to the taxpayer — the wrong direction of error. The clock runs from the puesta a disposición, never from access.
This module performs no I/O and reads no clock. The evaluation date is an
explicit as_of argument threaded from the caller, so a projection over a
stored snapshot is reproducible rather than dependent on when it happened to
run.
- class NotificacionEstadoServicio(*values)[source]¶
Bases:
StrEnumService state of one electronic notification under Ley 39/2015 art. 43.2.
- Variables:
NO_ENTREGADA – AEAT has not put the notification at the taxpayer’s disposal yet, so no
fecha de notificaciónexists and no window has started. The placeholder state for apendienterow.ACCEDIDA – The taxpayer has accessed the contents. The notification is served by access, which is the ordinary path and the one art. 43.2 names first.
EN_PLAZO – Put at the taxpayer’s disposal and not yet accessed, with fewer than ten días naturales elapsed. Still inside the window; not yet served.
RECHAZO_TACITO – Put at the taxpayer’s disposal, never accessed, and ten or more días naturales elapsed. Deemed rejected and therefore legally served — the state that must reach the operator, because the taxpayer now bears a notification’s consequences without ever having read it.
- NO_ENTREGADA¶
- ACCEDIDA¶
- EN_PLAZO¶
- RECHAZO_TACITO¶
- resolve_notificacion_estado_servicio(*, fecha_notificacion, leida, as_of, tacit_rejection_natural_days)[source]¶
Return the art. 43.2 service state of one notification as of
as_of.- Parameters:
fecha_notificacion (
date|None) – The puesta a disposición date AEAT stamps on delivery, orNonefor a row it has not delivered yet.leida (
bool|None) – Whether AEAT marks the row accessed.Nonemeans the surface carried no value, which is treated as not accessed.as_of (
date) – The date the window is evaluated against. Explicit so a projection is reproducible; never defaulted to today.tacit_rejection_natural_days (
int) – The art. 43.2 window resolved by the outer authority composition on its submission-date coordinate.
- Return type:
- Returns:
The single
NotificacionEstadoServiciomember describing this notification’s service state.