La gestión de viáticos corporativos suele ser uno de los procesos más lentos y propensos a errores dentro de cualquier empresa. Desde la captura manual de recibos hasta la validación de facturas ante el SAT y el cumplimiento de las políticas internas, los departamentos de tesorería y los colaboradores a menudo se enfrentan a un laberinto burocrático.
Para resolver este desafío operacional en el Corporativo MS Sistemas Médicos, desarrollé GastosMed, una Aplicación Web Progresiva (PWA) de ciclo completo que automatiza el enrutamiento de viáticos a tesorería y digitaliza por completo la comprobación de gastos. A continuación, desgloso la arquitectura, los retos técnicos y el impacto de negocio de esta solución.
El reto técnico: movilidad, seguridad y cero costos de API
El objetivo principal era crear una plataforma que los colaboradores pudieran usar desde sus teléfonos móviles en cualquier lugar, pero que tuviera la robustez de un sistema contable de escritorio. Las restricciones técnicas requerían no depender de costosas APIs de terceros para la lectura de recibos, y asegurar un cumplimiento estricto con la Política Normativa Operativa (PNO) de la empresa.
Para lograrlo, elegí un stack tecnológico moderno y escalable: React 18 con TypeScript y Tailwind CSS en el frontend, respaldado por un backend en Node.js (Express) y PostgreSQL.
Innovaciones clave en GastosMed
1. OCR local con Tesseract.js, sin APIs de terceros
Uno de los mayores logros de este proyecto fue implementar Reconocimiento Óptico de Caracteres (OCR) de forma local. Usando Tesseract.js, la aplicación escanea y extrae datos de recibos físicos directamente en el dispositivo del usuario, sin requerir el pago de licencias ni depender de una API externa por cada imagen procesada.
2. Validación de CFDI ante el SAT en tiempo real
Para garantizar la deducibilidad de los gastos, el sistema permite importar directamente las facturas electrónicas (XML/CFDI). GastosMed procesa esos archivos y verifica su vigencia contra los servidores del SAT en tiempo real. También soporta PDFs con filas editables y convierte automáticamente las cantidades a letra (por ejemplo, "QUINIENTOS PESOS 00/100 M.N.") para los formatos oficiales.
3. Planificador de rutas multi-parada
Los viáticos suelen involucrar traslados complejos con varias paradas. Integré un motor de geocoding y enrutamiento con OSRM, que permite planificar rutas con múltiples waypoints y abrirlas directamente en Google Maps para su ejecución.
4. Experiencia móvil (PWA) y aprobaciones ágiles
Al ser una PWA instalable, con modo oscuro y diseño responsivo, la experiencia imita a una aplicación nativa. Se implementaron notificaciones push y un sistema de aprobación por swipe (deslizar) en dispositivos móviles, acelerando el flujo de autorización entre los 6 roles disponibles del sistema (colaborador, coordinador, gerencia, entre otros).
5. Seguridad de grado empresarial
El manejo de datos financieros exige máxima seguridad. La arquitectura usa autenticación JWT en memoria junto con un refresh token en cookie HttpOnly, contraseñas encriptadas con bcrypt y rate limiting para prevenir ataques de fuerza bruta contra el login. El entorno de producción corre sobre Windows Server, con despliegue automatizado vía Task Scheduler y Nginx como reverse proxy.
El impacto en el negocio: del caos al control total
La implementación de GastosMed transformó la carga administrativa en un flujo de datos limpio y automatizado:
- Formatos institucionales automatizados: el sistema captura, genera y exporta los formatos oficiales de la empresa en Excel (FOR-ADM-01, FOR-ADM-02, FOR-ADM-03, FOR-ADM-06 y FOR-ADM-12).
- Control de presupuestos: validación en tiempo real que bloquea o alerta sobre gastos que superan los límites establecidos por la PNO para cada rol.
- Inteligencia financiera: un dashboard contable que usa gráficas de área, pastel y barras apiladas para visualizar métricas anuales, con exportación a Excel de los consolidados en un clic.
Conclusión
Desarrollar GastosMed demostró que, con la arquitectura adecuada — React, Node.js y PostgreSQL —, es posible construir herramientas financieras complejas que sean seguras, móviles y estén libres de costos recurrentes por APIs de terceros. Si tu empresa sigue gestionando viáticos, inventarios o procesos operativos en papel o en hojas de cálculo desconectadas, es momento de modernizarse.