Cómo imprimir desde Odoo sin el diálogo del navegador
Odoo imprime a través del navegador. Genera el PDF, lo abre y deja que el navegador muestre su diálogo de impresión. Para una factura al día está bien. Para cincuenta, son cincuenta clics. Y para una impresora de etiquetas, casi nunca sale del tamaño correcto.
Esta guía explica por qué pasa y qué caminos hay.
Por qué el navegador se mete en medio
Por seguridad. Una página web no puede mandar algo a tu impresora sin que tú lo apruebes: si pudiera, cualquier sitio que visitaras podría imprimir. El diálogo no es un descuido de Odoo, es cómo funciona la web.
De ahí se deduce lo único que puede resolverlo: algo tiene que correr fuera del navegador, en la máquina donde está la impresora o en un servidor que la alcance por red.
Los caminos que existen
| Camino | Cómo funciona | El costo real |
|---|---|---|
| Imprimir desde el servidor | Odoo manda el trabajo a CUPS en el servidor | Solo sirve si la impresora está en la misma red que el servidor. En la nube, casi nunca |
| Un agente en la máquina | Un programita local recibe el trabajo y lo manda a la impresora | Hay que instalarlo en cada caja. Es el camino que funciona |
| Impresora de red por IP | Se le habla directo a la impresora por su dirección | Perfecto para térmicas ESC/POS; no sirve para PDF |
| Cambiar de navegador | Arrancar Chrome con la impresión silenciosa activada | Frágil: depende de cómo lo abran cada mañana |
Lo que se rompe cuando lo armas a medias
Tres cosas, y las tres se descubren tarde:
La cola. Si la impresora está ocupada, sin papel o apagada, el trabajo se pierde. Sin una cola con reintentos, la factura simplemente nunca salió y nadie se enteró.
Qué impresora. En un negocio real no hay una impresora: hay la de facturas, la de etiquetas, la de la caja y la de la cocina. La regla de «qué sale por dónde» tiene que existir en algún lado.
El punto de venta es otra ruta. Esto sorprende a todo el mundo: el punto de venta de Odoo no imprime por el mismo camino que el resto del sistema. Un módulo que resuelve la impresión de facturas puede no tocar el tiquete de la caja. Son dos trabajos.
Y si imprimes tiquetes térmicos, el logotipo es aritmética de bits: ESC/POS manda la imagen byte por byte, y si el orden de los bits o la cabecera están mal, sale un borrón. Se ve bien en la pantalla y mal en el papel.
Lo que hicimos nosotros
Impresión directa sin diálogo —
puntofy_printing. Facturas, reportes y etiquetas directo a la impresora, con
cola y reintentos, y reglas de impresora por usuario, por documento o por
dispositivo.
Impresión directa para el punto de venta —
puntofy_printing_pos. La otra ruta: tiquetes y comandas de cocina, en
silencio y funcionando con la caja sin conexión. Incluye el módulo base, y el
precio en la tienda ya lo suma.