2023 – actualidad · Autor principal del firmador y del panel de facturación electrónica
Pipeline de facturación electrónica SIFEN
Validación, firma digital y envío de documentos electrónicos a la DNIT
Este trabajo se realizó bajo acuerdos de confidencialidad. Describo mi rol, las decisiones y la arquitectura a nivel general, sin datos internos, cifras ni capturas de clientes.
Contexto
Tanto la plataforma Encom como FACSIS necesitan emitir documentos electrónicos válidos ante la DNIT. En lugar de duplicar esa lógica, se construyó un servicio compartido.
Mi rol
Desarrollé la mayor parte del firmador en Java y soy el principal autor del panel en Laravel. Definí los contratos entre los sistemas emisores y el servicio.
Desafíos
- Interpretar correctamente el manual técnico de SIFEN y sus notas de actualización.
- Manejar certificados digitales de muchas empresas de forma segura.
- Mantener trazabilidad de cada documento desde la emisión hasta su aprobación o rechazo.
Decisiones
- Separar el firmado (Java, por madurez de las librerías XML-DSig) de la orquestación (Laravel), comunicados por API.
- Almacenar XML y respuestas en almacenamiento de objetos y exponer consultas por RUC y CDC.
- Documentar el pipeline y auditarlo antes de escalar el volumen.
Resultado
El servicio procesa en producción los documentos de ambos productos. Las auditorías derivaron en un plan de evolución hacia procesamiento asíncrono con colas.
Puntos clave
- Firmador en Java/Spring Boot que transforma JSON en XML firmado para facturas, notas de crédito y eventos.
- Panel y API en Laravel para múltiples empresas: lotes, consultas por CDC, monitor, dashboard y consulta pública de documentos.
- Procesos programados para envío y consulta de lotes y firmado de pendientes.
- Auditorías internas de escalabilidad y seguridad de la integración, con un plan de mejoras (colas, timeouts, caché de certificados).
Puedo ampliar los detalles en una conversación, respetando las mismas restricciones.