Saltar al contenido principal

RF34: Usuario consulta método de pago

Descripción

Como usuario autenticado, quiero ver el método de pago que tengo registrado (marca y últimos 4 dígitos) para saber con qué tarjeta se cobra mi suscripción.

Finnova nunca almacena datos completos de tarjeta (PCI SAQ A): solo se muestran los metadatos no sensibles (brand, last4, exp_month/year) que provee Stripe del PaymentMethod (Stripe §Consideraciones de seguridad).

CampoValor
MóduloSubscription Module
ActorUsuario autenticado
EndpointGET /subscription/payment-method
PrecondicionesSesión activa
PrioridadMedia (MVP)
EtapaMVP
Requisitos relacionadosRF35, RF36, RF37

Reglas de negocio

  • RN-34.1 — Solo se muestran metadatos no sensibles del método de pago; nunca el PAN completo, CVV ni datos PAN.
  • RN-34.2 — Los datos provienen de Stripe (fuente de verdad) usando el stripe_customer_id del usuario.
  • RN-34.3 — Si no hay método registrado, se muestra estado vacío con acción para agregar uno (RF35).

Validaciones de entrada

CampoReglasMensaje de error
AuthorizationBearer válido."Sesión no válida." (401)

Criterios de aceptación

Escenario 1: Consulta con método registrado

Dado que tengo una tarjeta registrada, Cuando consulto mi método de pago, Entonces el sistema muestra marca y últimos 4 dígitos (sin datos sensibles), Y responde 200 OK.

Escenario 2: Sin método de pago

Dado que no tengo método registrado, Cuando consulto, Entonces se muestra un estado vacío con la acción "Agregar método de pago".

Escenario 3: No exposición de datos sensibles (seguridad)

Dado que veo mi método de pago, Cuando reviso la respuesta, Entonces nunca incluye el número completo de tarjeta ni CVV.

Criterios no funcionales

  • Respuesta < 1.5 s (lectura desde Stripe, cacheable brevemente).
  • Comunicación TLS 1.2+; sin datos de tarjeta en logs.

Diagrama de secuencia