Automatizó la generación de 9 reportes fiscales para un grupo financiero que administra pensiones y nómina de +500 beneficiarios. Herencia del motor de reportes nativo, generación de Excel con openpyxl, dashboard OWL con assets frontend y sincronización con sistema SAFI vía cron.
QWebopenpyxlOWLCFDI
Resolvió un problema crítico donde Odoo mostraba saldos bancarios vacíos al depender de la conciliación nativa. Sincronización bidireccional con flag de contexto anti-loop, importación masiva desde Excel, inserción dinámica de columnas en workbooks existentes y auditoría completa con mail.thread.
mail.threadopenpyxlBidirectional Sync
Dio a cobranza visibilidad instantánea de los días vencidos por factura — información crítica para flujo de efectivo que Odoo omite. Extensión del report engine con custom expressions, post_init_hook y uninstall_hook para instalación/desinstalación sin residuos.
Report EngineHooksCustom Expressions
Evitó declaraciones incorrectas ante el SAT que arriesgaban multas fiscales: Odoo generaba asientos de base efectivo con fecha de conciliación en vez de fecha de pago. Override de _compute_max_date() en account.partial.reconcile para forzar la fecha del flujo real de efectivo.
account.partial.reconcileDIOTSAT
Automatizó un proceso manual mensual que causaba errores en la DIOT. Override de action_post() para generar asientos de base efectivo al registrar anticipos, cálculo inverso de IVA (total / 1.16 × 0.16), manejo de tags fiscales y prevención inteligente de duplicados en conciliación.
action_postCash BasisTax Tags
Reemplazó el formato genérico de Odoo con un REP profesional que cumple 100% los requisitos del SAT. Parsing de XML CFDI 4.0 con namespaces SAT y complemento Pagos20, extracción de nodos TrasladoDR y DoctoRelacionado, generación de QR y sellos digitales.
CFDI 4.0XML ParsingPagos20