- HERENCIA-SIMCO.md actualizado con directivas v3.7 y v3.8 - Cambios en backend y frontend Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
3.9 KiB
3.9 KiB
| id | type | title | code | status | phase | priority | created_at | updated_at | simco_version | dependencies | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| EPIC-MCH-008 | Epic | MCH-008: Sistema de Fiados | MCH-008 | Completado | 2 | P1 | 2026-01-10 | 2026-01-10 | 3.8.0 |
|
MCH-008: Sistema de Fiados
Metadata
- Codigo: MCH-008
- Fase: 2 - Inteligencia
- Prioridad: P1
- Estado: Completado
- Fecha completado: 2026-01-10
Descripcion
Sistema de credito informal ("fiados") tradicional en Mexico: permite a clientes frecuentes comprar a credito con limites personalizados, recordatorios automaticos de pago, y registro de abonos.
Objetivos
- Cuentas de credito por cliente
- Limites de credito configurables
- Registro de compras a credito
- Registro de abonos/pagos
- Recordatorios automaticos via WhatsApp
- Reporte de cartera
Alcance
Incluido
- Habilitar credito por cliente
- Limite de credito configurable
- Ventas a credito desde POS
- Abonos parciales o totales
- Historial de movimientos
- Recordatorios via WhatsApp
- Bloqueo automatico por limite
Excluido
- Intereses por mora
- Scoring crediticio
- Reportes a buro de credito
- Contratos formales
Modelo de Datos
Tablas (schema: customers)
credit_accounts
- id, customer_id, credit_limit
- current_balance, status (active/blocked/closed)
- created_at, last_payment_at
credit_transactions
- id, credit_account_id, type (charge/payment)
- amount, sale_id (si es cargo), notes
- created_at, created_by
Endpoints API
| Metodo | Endpoint | Descripcion |
|---|---|---|
| GET | /customers/:id/credit | Estado de cuenta |
| POST | /customers/:id/credit/enable | Habilitar credito |
| PUT | /customers/:id/credit/limit | Ajustar limite |
| POST | /customers/:id/credit/payment | Registrar abono |
| GET | /customers/:id/credit/history | Historial |
| GET | /credit/portfolio | Cartera total |
| GET | /credit/overdue | Clientes con adeudo |
Flujos de Usuario
Habilitar Credito
1. Dueno abre ficha del cliente
2. Activa "Habilitar fiado"
3. Define limite (ej: $500)
4. Cliente puede comprar a credito
Venta a Credito
1. Empleado crea venta en POS
2. Selecciona cliente con credito
3. Elige "Fiado" como pago
4. Sistema verifica:
- Credito habilitado
- Saldo + venta <= limite
5. Si OK: registra venta
6. Actualiza saldo del cliente
Registrar Abono
1. Cliente llega a pagar
2. Dueno abre cuenta del cliente
3. Registra abono (monto)
4. Sistema actualiza saldo
5. Genera recibo de pago
Recordatorio Automatico
1. Cron diario revisa cuentas
2. Identifica clientes con saldo > X dias
3. Envia WhatsApp:
"Hola [nombre], tienes un saldo de $X
en [negocio]. Pasa a ponerte al corriente!"
4. Registra envio de recordatorio
UI Components
CreditHistory
- Lista de movimientos (cargos/abonos)
- Saldo actual
- Grafica de historial
- Filtros por fecha
CreditDashboard
- Total cartera
- Clientes con adeudo
- Promedio de dias de pago
- Alertas de limite
Entregables
| Entregable | Estado | Archivo |
|---|---|---|
| DDL credit | Completado | 08-customers.sql |
| fiados.module | En progreso | modules/fiados/ |
| CreditHistory.tsx | En progreso | components/customers/ |
| WhatsApp reminder | Pendiente | whatsapp-service/ |
Dependencias
Depende de
- MCH-002 (Auth)
- MCH-004 (POS)
- MCH-014 (Clientes)
Bloquea a
- MCH-017 (Notificaciones)
Criterios de Aceptacion
- Credito se habilita/deshabilita por cliente
- Limite de credito funciona
- Ventas a credito descuentan del disponible
- Abonos se registran correctamente
- Recordatorios se envian via WhatsApp
- Reporte de cartera funciona
Configuracion por Tenant
{
fiados: {
enabled: true,
default_limit: 500,
max_limit: 5000,
reminder_days: [7, 14, 30],
auto_block_days: 60
}
}
Ultima actualizacion: 2026-01-10