1.7 KiB
1.7 KiB
US-MGN-003-006-001: Gestión de Condiciones de Pago (Payment Terms)
RF Asociado: RF-MGN-003-006 Módulo: MGN-003 - Catálogos Maestros Epic: Configuración Financiera Prioridad: P0 (MVP) Story Points: 5 Sprint: Sprint 6 Fecha: 2025-11-24
User Story
Como administrador, Quiero definir condiciones de pago (inmediato, 30 días, 60/90 días, etc.), Para calcular fechas de vencimiento automáticamente en facturas.
Criterios de Aceptación
Escenario 1: Condición de pago simple
Cuando creo payment term "30 días neto", Entonces facturas con este término vencen 30 días después de fecha factura.
Escenario 2: Condición con múltiples plazos
Cuando creo "50% inmediato, 50% a 30 días", Entonces factura genera 2 líneas de vencimiento.
Escenario 3: Descuento por pronto pago
Cuando configuro "2% descuento si paga en 10 días, neto 30", Entonces sistema calcula descuento si pago antes de 10 días.
Reglas de Negocio
- RN-1: Payment term puede tener múltiples líneas (plazos)
- RN-2: Cada línea: % monto, días de plazo, descuento opcional
- RN-3: Sistema calcula due_date = invoice_date + días
Tareas Técnicas
- CRUD de payment terms
- Tabla: master.payment_term_lines
- Función: calculateDueDates(invoiceDate, paymentTerm)
- Seed data: términos comunes
- Tests