Saltar al contenido principal

RF65: Usuario consulta declaración anual

Descripción

Como usuario autenticado, quiero consultar el borrador de mi declaración anual generado por el sistema (RF63) para revisar mi estimación fiscal y el detalle de ingresos, gastos deducibles e impuestos.

Muestra el resultado consolidado con su descargo de responsabilidad. Solo el dueño puede consultarlo; los datos fiscales se descifran en memoria para mostrarse.

CampoValor
MóduloAccounting Module
ActorUsuario autenticado
EndpointGET /accounting/annual-return/:fiscalYear
PrecondicionesSesión activa; existe un borrador generado para el ejercicio
PrioridadBaja (post-MVP)
EtapaPor definirse
Requisitos relacionadosRF63, RF64, RF66

Reglas de negocio

  • RN-65.1 — Solo el dueño (user_id del JWT) puede consultar su declaración (aislamiento de datos).
  • RN-65.2 — Se muestra el resumen (ingresos, deducciones, impuesto estimado) y el detalle por factura.
  • RN-65.3 — Siempre se muestra el descargo de responsabilidad (borrador, no oficial).
  • RN-65.4 — Si no existe borrador para el ejercicio, se ofrece generarlo (RF63).

Validaciones de entrada

CampoReglasMensaje de error
fiscalYearObligatorio. Año fiscal válido."Selecciona un ejercicio fiscal válido."
AuthorizationBearer válido."Sesión no válida." (401)

Criterios de aceptación

Escenario 1: Consulta exitosa

Dado que tengo un borrador generado para el ejercicio, Cuando lo consulto, Entonces el sistema lo descifra y muestra el resumen y el detalle, Y responde 200 OK con el descargo de responsabilidad.

Escenario 2: Sin borrador para el ejercicio

Dado que aún no he generado la declaración del ejercicio, Cuando la consulto, Entonces el sistema ofrece generarla (RF63).

Escenario 3: Aislamiento de datos (seguridad)

Dado que se manipula la petición para ver la declaración de otro usuario, Cuando el backend procesa, Entonces usa el user_id del JWT y nunca devuelve datos ajenos.

Criterios no funcionales

  • Datos fiscales descifrados solo en memoria; respuesta < 2 s.
  • Comunicación TLS 1.2+.

Diagrama de secuencia