# US-MAI010-003: Gestionar viáticos **ID:** US-MAI010-003 **Módulo:** MAI-010 (Liquidaciones) **Prioridad:** Alta **Story Points:** 5 --- ## Historia de Usuario **Como** despachador **Quiero** registrar anticipos de viáticos y su comprobación **Para** controlar el efectivo entregado a operadores y evitar pérdidas --- ## Criterios de Aceptación ### CA-001: Registrar anticipo **Dado** que un operador sale a viaje **Cuando** registro el anticipo de viático **Entonces** se vincula al viaje con monto, fecha y forma de entrega ### CA-002: Comprobar gastos **Dado** que el operador regresa del viaje **Cuando** comprueba sus gastos **Entonces** puedo registrar cada gasto con tipo, monto y evidencia (ticket/foto) ### CA-003: Clasificar gastos **Dado** que hay diferentes tipos de gasto **Cuando** registro la comprobación **Entonces** clasifico en: combustible, casetas, comidas, hospedaje, otros ### CA-004: Calcular sobrante **Dado** que se comprobaron los gastos **Cuando** consulto el viático **Entonces** veo: anticipo, comprobado, sobrante (a devolver o descontar) ### CA-005: Descontar sobrante en liquidación **Dado** que hay sobrante sin devolver **Cuando** se genera la liquidación **Entonces** el sobrante se incluye como deducción automática ### CA-006: Alertar viáticos sin comprobar **Dado** que hay viajes cerrados con viático sin comprobar **Cuando** consulto el dashboard **Entonces** veo alertas de viáticos pendientes de comprobación --- ## Mockup / UI ``` ┌─────────────────────────────────────────────────────────────────┐ │ REGISTRAR ANTICIPO DE VIÁTICO ✕ │ ├─────────────────────────────────────────────────────────────────┤ │ │ │ Viaje: VJE-0125 | CDMX → Monterrey │ │ Operador: Juan Pérez García │ │ Distancia estimada: 900 km │ │ │ │ ───────────────────────────────────────────────────────────── │ │ │ │ CÁLCULO SUGERIDO │ │ │ │ Combustible (900 km × 4 km/L × $23/L): $5,175.00 │ │ Casetas (estimado ruta): $1,200.00 │ │ Comidas (2 días × $250): $500.00 │ │ Imprevistos: $325.00 │ │ ───────────────────────────────────────── │ │ Total sugerido: $7,200.00 │ │ │ │ ───────────────────────────────────────────────────────────── │ │ │ │ ANTICIPO A ENTREGAR │ │ │ │ Monto: [$7,000.00] │ │ │ │ Forma de entrega: │ │ (●) Efectivo │ │ ( ) Transferencia │ │ ( ) Vale/Tarjeta combustible │ │ │ │ Fecha entrega: [2026-01-22] │ │ │ │ Recibe: [Juan Pérez García ] │ │ Entrega: [María González - Caja ] │ │ │ │ [Cancelar] [Registrar Anticipo] │ │ │ └─────────────────────────────────────────────────────────────────┘ ``` --- ## Comprobación de Viático ``` ┌─────────────────────────────────────────────────────────────────┐ │ COMPROBACIÓN DE VIÁTICO ✕ │ ├─────────────────────────────────────────────────────────────────┤ │ │ │ Viaje: VJE-0125 | Anticipo: $7,000.00 │ │ Operador: Juan Pérez García │ │ │ │ ───────────────────────────────────────────────────────────── │ │ │ │ GASTOS COMPROBADOS [+ Agregar]│ │ │ │ | Tipo | Descripción | Monto | Evidencia | │ │ |-------------|--------------------|---------:|------------| │ │ | Combustible | PEMEX Qro Norte | $2,800.00| [📷 Ver] | │ │ | Combustible | PEMEX MTY Centro | $1,500.00| [📷 Ver] | │ │ | Casetas | TAG (reporte) | $980.00| [📄 Ver] | │ │ | Comidas | Restaurant día 1 | $180.00| [📷 Ver] | │ │ | Comidas | Restaurant día 2 | $150.00| [📷 Ver] | │ │ | Hospedaje | Hotel MTY | $450.00| [📷 Ver] | │ │ |-------------|--------------------|---------:|------------| │ │ | TOTAL COMPROBADO | $6,060.00| | │ │ │ │ ───────────────────────────────────────────────────────────── │ │ │ │ RESUMEN │ │ │ │ Anticipo entregado: $7,000.00 │ │ Total comprobado: -$6,060.00 │ │ ────────────────────────────────────────────────── │ │ Sobrante a devolver/descontar: $940.00 │ │ │ │ ───────────────────────────────────────────────────────────── │ │ │ │ Destino del sobrante: │ │ ( ) Devuelto en efectivo [$______] Fecha: [________] │ │ (●) Descontar en próxima liquidación │ │ │ │ [Guardar borrador] [Cerrar comprobación] │ │ │ └─────────────────────────────────────────────────────────────────┘ ``` --- ## Agregar Gasto ``` ┌─────────────────────────────────────────────────────────────────┐ │ AGREGAR GASTO ✕ │ ├─────────────────────────────────────────────────────────────────┤ │ │ │ Tipo de gasto: [Combustible ▼] │ │ ○ Combustible │ │ ○ Casetas/Peaje │ │ ○ Comidas │ │ ○ Hospedaje │ │ ○ Estacionamiento │ │ ○ Maniobras │ │ ○ Otros │ │ │ │ Descripción: [PEMEX Querétaro Norte - Magna ] │ │ Fecha del gasto: [2026-01-22] │ │ Monto: [$2,800.00] │ │ │ │ Evidencia: │ │ [📷 Seleccionar foto del ticket] │ │ ✓ ticket_pemex_qro.jpg │ │ │ │ Notas: │ │ [Carga completa en Querétaro antes de subir a MTY ]│ │ │ │ [Cancelar] [Agregar] │ │ │ └─────────────────────────────────────────────────────────────────┘ ``` --- ## Dashboard de Viáticos ``` ┌─────────────────────────────────────────────────────────────────┐ │ VIÁTICOS PENDIENTES DE COMPROBAR │ ├─────────────────────────────────────────────────────────────────┤ │ │ │ ⚠ 5 viáticos pendientes de comprobación │ │ │ │ | Viaje | Operador | Anticipo | Cierre | Días | │ │ |---------|---------------|-----------|----------|-------| │ │ | VJE-0115| Pedro Ramírez | $5,500.00 | 18-ene | 9 🔴 | │ │ | VJE-0118| Ana López | $3,200.00 | 20-ene | 7 🟡 | │ │ | VJE-0122| Luis García | $6,800.00 | 22-ene | 5 🟡 | │ │ | VJE-0126| Carlos Méndez | $4,500.00 | 24-ene | 3 🟢 | │ │ | VJE-0129| Juan Pérez | $7,000.00 | 25-ene | 2 🟢 | │ │ │ │ Total pendiente de comprobar: $27,000.00 │ │ │ │ [Enviar recordatorios] │ │ │ └─────────────────────────────────────────────────────────────────┘ ``` --- ## Notas Técnicas - Tabla: `settlements.viaticos` para anticipo - Tabla: `settlements.comprobantes_viatico` para gastos - Fotos de tickets se suben a S3 - Sobrante se convierte en deducción tipo SOBRANTE_VIATICO - Alertas configurables (>3 días sin comprobar) --- ## Definición de Done - [ ] Registro de anticipo vinculado a viaje - [ ] Comprobación de gastos con clasificación - [ ] Captura de evidencia (fotos de tickets) - [ ] Cálculo de sobrante - [ ] Integración con liquidación - [ ] Dashboard de viáticos pendientes - [ ] Alertas de viáticos sin comprobar - [ ] Tests de flujo completo