# EPICA: EPIC-CL-008 - Facturación ## Metadata | Campo | Valor | |-------|-------| | **ID** | EPIC-CL-008 | | **Nombre** | Facturación | | **Modulo** | facturacion | | **Fase** | Fase 1 - MVP | | **Prioridad** | P0 (Critico) | | **Estado** | Backlog | | **Story Points** | 38 | | **Sprint(s)** | Sprint 8-9 | --- ## Descripcion Sistema de facturación para servicios médicos. Incluye cobro de consultas, procedimientos, estudios de laboratorio, medicamentos y facturación a aseguradoras. Generación de CFDI 4.0 y notas de crédito. --- ## Objetivo de Negocio - Cobro oportuno de servicios - Facturación correcta a aseguradoras - Cumplimiento fiscal - Control de cuentas por cobrar - Reportes financieros --- ## Historias de Usuario | ID | Historia | Prioridad | SP | Estado | |----|----------|-----------|-----|--------| | US-CL008-001 | Como cajero, quiero generar cuenta del paciente con servicios prestados | P0 | 5 | Backlog | | US-CL008-002 | Como cajero, quiero cobrar consulta con múltiples formas de pago | P0 | 5 | Backlog | | US-CL008-003 | Como cajero, quiero facturar a nombre del paciente con sus datos fiscales | P0 | 5 | Backlog | | US-CL008-004 | Como admin, quiero facturar a aseguradora con expediente de reclamación | P0 | 8 | Backlog | | US-CL008-005 | Como cajero, quiero generar nota de crédito por cancelación o error | P0 | 3 | Backlog | | US-CL008-006 | Como paciente, quiero pagar mi cuenta desde el portal web | P1 | 5 | Backlog | | US-CL008-007 | Como admin, quiero ver cuentas por cobrar pendientes | P0 | 3 | Backlog | | US-CL008-008 | Como admin, quiero configurar precios de servicios y procedimientos | P0 | 2 | Backlog | | US-CL008-009 | Como admin, quiero ver reporte de ingresos por período | P1 | 2 | Backlog | **Total Story Points:** 38 SP --- ## Flujo de Facturación ``` COBRO DIRECTO (Paciente paga) ┌─────────────┐ │ CUENTA │ ← Servicios prestados └──────┬──────┘ │ ▼ ┌─────────────┐ │ COBRO │ ← Efectivo/Tarjeta └──────┬──────┘ │ ▼ ┌─────────────┐ │ CFDI │ ← Timbrado └──────┬──────┘ │ ▼ ┌─────────────┐ │ ENTREGADO │ ← PDF + XML al paciente └─────────────┘ COBRO A ASEGURADORA ┌─────────────┐ │ CUENTA │ ← Servicios prestados └──────┬──────┘ │ ▼ ┌─────────────┐ │ EXPEDIENTE │ ← Documentos requeridos │ RECLAMACIÓN │ (notas, estudios, etc.) └──────┬──────┘ │ ▼ ┌─────────────┐ │ ENVÍO │ ← A la aseguradora └──────┬──────┘ │ ▼ ┌─────────────┐ │ SEGUIMIENTO │ ← Pendiente de pago └──────┬──────┘ │ ▼ ┌─────────────┐ │ COBRADO │ ← Pago recibido └──────┬──────┘ │ ▼ ┌─────────────┐ │ CFDI │ ← Factura a aseguradora └─────────────┘ ``` --- ## Cuenta del Paciente ``` ┌─────────────────────────────────────────────────────────┐ │ CUENTA - PACIENTE: Juan Pérez │ ├─────────────────────────────────────────────────────────┤ │ │ │ SERVICIOS │ │ ┌────────────────────────────────────┬───────────────┐ │ │ │ Concepto │ Importe │ │ │ ├────────────────────────────────────┼───────────────┤ │ │ │ Consulta medicina general │ $800.00 │ │ │ │ Biometría hemática │ $350.00 │ │ │ │ Química sanguínea 6 elementos │ $450.00 │ │ │ │ Paracetamol 500mg x 20 │ $120.00 │ │ │ │ Amoxicilina 500mg x 21 │ $280.00 │ │ │ ├────────────────────────────────────┼───────────────┤ │ │ │ SUBTOTAL │ $2,000.00 │ │ │ │ IVA (16%) │ $0.00 │ │ │ │ ───────────────────────────────────────────────── │ │ │ │ TOTAL │ $2,000.00 │ │ │ └────────────────────────────────────┴───────────────┘ │ │ │ │ COBERTURA SEGURO │ │ ├── Aseguradora: GNP Seguros │ │ ├── Póliza: 1234567 │ │ ├── Cobertura consulta: 100% │ │ ├── Cobertura laboratorio: 80% │ │ └── Copago paciente: $160.00 │ │ │ │ FORMA DE PAGO │ │ ├── Cargo a seguro: $1,840.00 │ │ └── Copago paciente: $160.00 (Pagado TDC) │ │ │ └─────────────────────────────────────────────────────────┘ ``` --- ## Criterios de Aceptacion de la Epica **Funcionales:** - [ ] Generar cuenta con servicios - [ ] Cobrar con múltiples formas de pago - [ ] Facturación CFDI 4.0 - [ ] Facturación a aseguradoras - [ ] Notas de crédito - [ ] Portal de pagos - [ ] Cuentas por cobrar - [ ] Reportes de ingresos **No Funcionales:** - [ ] Timbrado < 5 segundos - [ ] Historial de 5 años - [ ] Cumplimiento fiscal **Tecnicos:** - [ ] Integración con PAC - [ ] Integración con todos los módulos - [ ] Pasarela de pagos - [ ] Reportes financieros --- ## Dependencias **Esta epica depende de:** | Epica/Modulo | Estado | Bloqueante | |--------------|--------|------------| | EPIC-CL-001 Fundamentos | Backlog | Si | | EPIC-CL-002 Pacientes | Backlog | Si | | EPIC-CL-003 Citas | Backlog | Parcial | | EPIC-CL-004 Consultas | Backlog | Parcial | | EPIC-CL-006 Laboratorio | Backlog | Parcial | | EPIC-CL-007 Farmacia | Backlog | Parcial | --- ## Desglose Tecnico **Database:** - [ ] Schema: `billing` - [ ] Tablas: 8 (accounts, account_items, payments, invoices, invoice_items, insurance_claims, price_lists, services) - [ ] Funciones: 3 (calculate_account, generate_invoice, process_payment) - [ ] Indices: Por paciente, fecha, estado, aseguradora **Backend:** - [ ] Modulo: `billing` - [ ] Entities: 7 (Account, AccountItem, Payment, Invoice, InvoiceItem, InsuranceClaim, Service) - [ ] Endpoints: 15 - [ ] Tests: 30 **Frontend:** - [ ] Paginas: 5 (Accounts, Checkout, InvoiceList, InsuranceClaims, Reports) - [ ] Componentes: 12 (AccountSummary, PaymentForm, InvoiceViewer, ClaimTracker, etc.) - [ ] Stores: 1 (billingStore) --- ## Endpoints API | Metodo | Endpoint | Descripcion | |--------|----------|-------------| | GET | /api/billing/accounts/:patientId | Cuenta del paciente | | POST | /api/billing/accounts/:id/items | Agregar servicio | | POST | /api/billing/accounts/:id/pay | Registrar pago | | POST | /api/billing/invoices | Generar factura | | GET | /api/billing/invoices/:id/pdf | Descargar PDF | | POST | /api/billing/invoices/:id/cancel | Cancelar factura | | POST | /api/billing/credit-notes | Crear nota de crédito | | POST | /api/billing/insurance-claims | Crear reclamación | | GET | /api/billing/pending | Cuentas por cobrar | | GET | /api/billing/reports/income | Reporte de ingresos | --- ## Riesgos | Riesgo | Probabilidad | Impacto | Mitigacion | |--------|--------------|---------|------------| | Rechazo de aseguradora | Media | Alto | Expediente completo | | Errores en facturación | Media | Alto | Validaciones antes de timbrar | | Morosidad | Media | Medio | Seguimiento de cuentas | --- ## Definition of Ready (DoR) - [x] Historias de usuario definidas - [x] Criterios de aceptacion claros - [x] Dependencias identificadas - [x] Estimacion completada - [ ] Lista de precios definida - [ ] Convenios con aseguradoras documentados ## Definition of Done (DoD) - [ ] Flujo de cobro funcionando - [ ] Facturación CFDI operativa - [ ] Facturación a aseguradoras - [ ] Reportes financieros - [ ] Tests de integración pasando - [ ] Documentación de API --- ## Historial | Fecha | Cambio | Autor | |-------|--------|-------| | 2025-12-08 | Creacion de epica | Claude-Agent | --- **Creada por:** Claude-Agent **Fecha:** 2025-12-08 **Ultima actualizacion:** 2025-12-08