# US-MAI009-005: Generar estados de cuenta **ID:** US-MAI009-005 **Módulo:** MAI-009 (Facturación Transporte) **Prioridad:** Media **Story Points:** 5 --- ## Historia de Usuario **Como** encargado de cobranza **Quiero** generar estados de cuenta con análisis de antigüedad de saldos **Para** dar seguimiento a la cartera y comunicar claramente los adeudos a los clientes --- ## Criterios de Aceptación ### CA-001: Estado de cuenta por cliente **Dado** que selecciono un cliente y periodo **Cuando** genero el estado de cuenta **Entonces** muestra: facturas emitidas, notas, pagos recibidos, saldo actual ### CA-002: Análisis de aging **Dado** que hay facturas pendientes **Cuando** consulto el aging **Entonces** veo clasificación: corriente, 30, 60, 90, +90 días ### CA-003: Alertas de vencimiento **Dado** que hay facturas próximas a vencer **Cuando** consulto la cartera **Entonces** veo alertas con días para vencimiento ### CA-004: Exportar PDF y Excel **Dado** que necesito enviar el estado de cuenta **Cuando** exporto **Entonces** puedo descargar en formato PDF o Excel ### CA-005: Envío automático **Dado** que tengo configuración de envío periódico **Cuando** llega la fecha programada **Entonces** el sistema envía automáticamente el estado de cuenta por email ### CA-006: Dashboard de cartera **Dado** que quiero visión general **Cuando** accedo al dashboard **Entonces** veo: total por cobrar, aging consolidado, top deudores --- ## Mockup / UI ``` ┌─────────────────────────────────────────────────────────────────┐ │ ESTADO DE CUENTA │ ├─────────────────────────────────────────────────────────────────┤ │ │ │ Cliente: [Distribuidora ABC ▼] │ │ Periodo: [Todo el histórico ▼] │ │ Al día: [27-ene-2026] [Generar] │ │ │ │ ───────────────────────────────────────────────────────────── │ │ │ │ ┌─────────────────────────────────────────────────────────┐ │ │ │ ESTADO DE CUENTA │ │ │ │ │ │ │ │ Distribuidora ABC S.A. de C.V. │ │ │ │ RFC: DAB850101XXX │ │ │ │ Al 27 de enero de 2026 │ │ │ │ │ │ │ │ ───────────────────────────────────────────────────── │ │ │ │ │ │ │ │ MOVIMIENTOS │ │ │ │ │ │ │ │ | Fecha | Documento | Concepto | Cargo | Abono | Saldo |│ │ │ |--------|-----------|------------------|----------|---------|----------|│ │ │ | 05-ene | A-00420 | Fact. transporte | $32,500 | | $32,500 |│ │ │ | 10-ene | | Pago BBVA ref123 | | $32,500 | $0 |│ │ │ | 15-ene | A-00435 | Fact. transporte | $45,200 | | $45,200 |│ │ │ | 20-ene | A-00456 | Fact. transporte | $55,338 | | $100,538 |│ │ │ | 25-ene | NC-00012 | Nota crédito | | $1,740 | $98,798 |│ │ │ │ │ │ │ ───────────────────────────────────────────────────── │ │ │ │ │ │ │ │ SALDO ACTUAL: $98,798.96 MXN │ │ │ │ │ │ │ │ ───────────────────────────────────────────────────── │ │ │ │ │ │ │ │ ANÁLISIS DE ANTIGÜEDAD │ │ │ │ │ │ │ │ | Rango | Monto | % | │ │ │ │ |-----------|------------|------| │ │ │ │ | Corriente | $55,338.96 | 56% | ████████████ │ │ │ │ | 1-30 días | $43,460.00 | 44% | █████████ │ │ │ │ | 31-60 días| $0.00 | 0% | │ │ │ │ | 61-90 días| $0.00 | 0% | │ │ │ │ | +90 días | $0.00 | 0% | │ │ │ │ │ │ │ └─────────────────────────────────────────────────────────┘ │ │ │ │ [Descargar PDF] [Descargar Excel] [Enviar por email] │ │ │ └─────────────────────────────────────────────────────────────────┘ ``` --- ## Dashboard de Cartera ``` ┌─────────────────────────────────────────────────────────────────┐ │ CARTERA Y COBRANZA │ ├─────────────────────────────────────────────────────────────────┤ │ │ │ Periodo: [Enero 2026 ▼] │ │ │ │ ───────────────────────────────────────────────────────────── │ │ │ │ RESUMEN GENERAL │ │ │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ │ │ $2.5M │ │ $1.8M │ │ $700K │ │ │ │ Facturado │ │ Cobrado │ │ Por cobrar │ │ │ │ este mes │ │ este mes │ │ total │ │ │ └──────────────┘ └──────────────┘ └──────────────┘ │ │ │ │ ───────────────────────────────────────────────────────────── │ │ │ │ AGING DE CARTERA │ │ │ │ ┌───────────────────────────────────────────────────────────┐ │ │ │ Corriente ████████████████████████████ $420K (60%) │ │ │ │ 1-30 días ████████████████ $180K (26%) │ │ │ │ 31-60 días █████ $60K (9%) │ │ │ │ 61-90 días ██ $25K (4%) │ │ │ │ +90 días █ $15K (2%) │ │ │ └───────────────────────────────────────────────────────────┘ │ │ │ │ ───────────────────────────────────────────────────────────── │ │ │ │ TOP 5 DEUDORES │ │ │ │ | # | Cliente | Saldo | Días prom | Acción |│ │ |---|----------------------|------------|-----------|--------|│ │ | 1 | Distribuidora ABC | $98,798 | 12 días | [Ver] |│ │ | 2 | Comercial XYZ | $85,450 | 25 días | [Ver] |│ │ | 3 | Mayorista 123 | $72,300 | 8 días | [Ver] |│ │ | 4 | Retail Partners | $65,000 | 45 días | [Ver] |│ │ | 5 | Logística Norte | $58,200 | 32 días | [Ver] |│ │ │ │ ───────────────────────────────────────────────────────────── │ │ │ │ FACTURAS PRÓXIMAS A VENCER (7 días) │ │ │ │ | Factura | Cliente | Vence | Monto | Días | │ │ |---------|-----------------|------------|----------|------| │ │ | A-00435 | Distrib. ABC | 28-ene-26 | $45,200 | 1 | │ │ | A-00438 | Comercial XYZ | 30-ene-26 | $32,800 | 3 | │ │ | A-00442 | Mayorista 123 | 02-feb-26 | $28,500 | 6 | │ │ │ │ [Enviar recordatorios masivos] │ │ │ └─────────────────────────────────────────────────────────────────┘ ``` --- ## Configuración de Envío Automático ``` ┌─────────────────────────────────────────────────────────────────┐ │ CONFIGURAR ENVÍO AUTOMÁTICO ✕ │ ├─────────────────────────────────────────────────────────────────┤ │ │ │ Cliente: Distribuidora ABC S.A. de C.V. │ │ │ │ ───────────────────────────────────────────────────────────── │ │ │ │ ESTADO DE CUENTA PERIÓDICO │ │ │ │ ☑ Habilitar envío automático │ │ │ │ Frecuencia: [Quincenal ▼] │ │ ○ Semanal (cada lunes) │ │ ○ Quincenal (días 1 y 15) │ │ ○ Mensual (primer día del mes) │ │ │ │ Destinatarios: │ │ [cobranza@distribuidoraabc.com ]│ │ [finanzas@distribuidoraabc.com ]│ │ [+ Agregar destinatario] │ │ │ │ ───────────────────────────────────────────────────────────── │ │ │ │ RECORDATORIOS DE VENCIMIENTO │ │ │ │ ☑ Enviar recordatorio [3] días antes del vencimiento │ │ ☑ Enviar recordatorio el día del vencimiento │ │ ☑ Enviar recordatorio [7] días después de vencida │ │ │ │ [Cancelar] [Guardar configuración]│ │ │ └─────────────────────────────────────────────────────────────────┘ ``` --- ## Notas Técnicas - Vista: `v_estado_cuenta_cliente` para movimientos - Vista: `v_aging_cartera` para análisis de antigüedad - Job programado para envío automático de estados de cuenta - Templates de email configurables por tenant - Exportación PDF con template HTML + puppeteer --- ## Definición de Done - [ ] Estado de cuenta por cliente y periodo - [ ] Análisis de aging (corriente a +90 días) - [ ] Dashboard de cartera consolidado - [ ] Top deudores - [ ] Alertas de vencimiento próximo - [ ] Exportación PDF y Excel - [ ] Envío automático programado - [ ] Tests de generación de reportes