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.

Completado Aplicación Web
Tecnologías
Bootstrap Django MySQL Pandas PostgreSQL Python
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
Iniciado: Jun 2024