Galería
Descripción
Plataforma web multi-municipio para la conciliación de impuestos territoriales (ICA, autorretención, RETEICA), en producción en conciliaciones.filosdev.com. Es la evolución y versión final del antiguo Sistema CXC.
Cada municipio (Caldas, Copacabana, Envigado, La Estrella, Sabaneta) maneja su propio formato de archivo. El sistema los normaliza con un motor ETL en Pandas, persiste declaraciones y pagos, y los concilia automáticamente para dejar un dataset explorable, exportable y con tablero de reportería.
Las declaraciones se leen directamente de la base GOBS (PostgreSQL de solo lectura) o se cargan desde Excel/CSV, y cada usuario trabaja únicamente con los datos de su municipio.
Problema que Resuelve
Cada municipio entrega sus declaraciones y pagos en formatos distintos (Excel, planos SAIMYR de 19, 32 y 124 columnas, bases GOBS). Conciliar a mano qué declaración tenía pago era lento, propenso a errores y sin trazabilidad.
Solución Implementada
Plataforma Django multi-tenant por municipio con un motor ETL en Pandas que mapea cada formato a un esquema común, descarta duplicados, persiste encabezados (declaraciones) y detalles (pagos) y los concilia. Un explorador con filtros por columna, un tablero de reportería con filtros cruzados y el envío de exportaciones por correo cierran el ciclo de trabajo.
Arquitectura
app-conciliaciones/
├── accounts/ # Usuarios, roles, permisos por municipio y seguridad de acceso
├── muni/ # Municipios (multi-tenant), CIIU y conceptos
├── etl/ # Motor ETL en Pandas, conciliación, reportería y envío por correo
├── templates/ # Interfaz Bootstrap: dashboard, explorador y reportería
├── deploy/ # Gunicorn + Nginx (systemd)
└── core/ # Configuración Django
Conciliaciones Municipales
Plataforma multi-municipio que concilia declaraciones tributarias con sus pagos mediante un motor ETL en Pandas.
Tecnologías
Características
- Arquitectura multi-municipio (cada uno con su propio formato)
- Motor ETL en Pandas con normalización por esquema
- Lectura directa de la base GOBS (PostgreSQL, solo lectura) o carga de Excel/CSV
- Detección automática de duplicados
- Conciliación declaración ↔ pago (CONCILIADO / PARCIAL / SIN CRUCE)
- Explorador de datos con filtros por columna y búsqueda
- Tablero de reportería con filtros cruzados
- Exportación a Excel / CSV / TXT y envío por correo
- Acceso por roles y aislamiento de datos por municipio
- Bloqueo por intentos fallidos y cierre de sesión por inactividad