# PRD - Gestión 4SAT / Portero GPS

## Producto
Sistema de gestión para empresa de rastreo GPS (4SAT GPS). Incluye módulos de facturación electrónica (DTE vía Facto/Koywe API), conciliación bancaria (Linkify), gestión de empresas/dispositivos, y módulo Portero GPS (PWA para comandos GPRS).

## Integraciones
- **Facto / Koywe API**: Emisión de DTEs, sync histórico, PDF, captura patentes
- **Linkify**: Conciliación bancaria, webhooks de pago
- **Brevo**: Envío de emails con PDF adjunto
- **GPSWOX**: Comandos GPRS para dispositivos GPS

## Funcionalidades Completadas

### Facturación Electrónica (Facto)
- ✅ Emisión DTE por lote (Factura, Exenta, NC)
- ✅ Multi-giro con logos personalizados
- ✅ Envío automático de PDF por email (Brevo)
- ✅ Creación de cobros Linkify al emitir
- ✅ Sync histórico desde Facto con paginación completa + filtros fecha
- ✅ Visor JSON crudo de documentos Facto
- ✅ Dashboard analítico
- ✅ Capturar patentes: tarea de fondo con MongoDB, polling, progreso, regex mejorada
- ✅ Tabla DTEs: paginación 30/pag, búsqueda, filtros tipo/estado
- ✅ Marcado manual estado pago (individual + masivo)
- ✅ `payment_conditions` configurable por empresa (0/15/30/60 días)
- ✅ Campana notificaciones en header
- ✅ Endpoint `/facto/info` y `/facto/raw-document/{id}`

### Hallazgo: Campo "Impago" de Facto
- API REST NO expone "Impago" (confirmado via OpenAPI spec)
- Solución: Linkify automático + marcado manual

### Gestión Empresas
- ✅ CRUD con scraper SII
- ✅ Campo `payment_conditions` por empresa

### Portero GPS (PWA)
- ✅ Comandos GPRS personalizados

## Backlog
- P2: Optimización de rutas por distancia
- P2: Refactorización `gestion4sat.py` (~4600 líneas)
- P3: Fallback iframe PatenteChile

## Arquitectura
- Backend: FastAPI + MongoDB
- Frontend: React + Shadcn UI
- Colecciones: g4s_config, g4s_empresas, g4s_dispositivos, g4s_dtes, g4s_tasks, g4s_alertas
