A main challenge when it comes to connecting and using printers with a solution hosted on cloud is the fact that the cloud server or backend is hosted on a different network (Internet) than the network where the printers are installed.
Thus, automating the workflows, like upon confirming an order, printing it in the kitchen or the back office, requires some special setup.
Another workflow, which requires some automated actions to select which printer to print on based on product types, categories, and so on.
Another challenge is that the printing in Odoo will download a PDF then the user has to open PDF, select a printer, and press print. Thus, an operation that takes more than 4 operations.
The solution was to install a CUPS server and a module “Automatic printing” that allowed to:
- Automate the printing with a single click (thus a save of more than 75% of the effort).
- Auto print via automated actions thus allowing to send to the right printer upon specific actions.
How Does it Work?
- Install the CUPS server on a Linux or windows machine hosted on the same network of the printers
- Create an external IP for the CUPS server or install a tunnel (e.g. NGROK)
Add the CUPS server from Settings/Printing/Servers
If the connection is successful, all the printers on the network are discovered and added to Odoo
Define workflows for each type of document e.g. below screen shows how to:
- Auto-print documents for a sales order
- Specify the printer
- Specify actions per user thus different users can print documents on a different printer
Direct print, configured by user and document type reduces user errors and optimizes the process.