That’s five or six steps for a single print. It may seem minor until you’re handling dozens of invoices or hundreds of delivery slips daily. Then, the constant PDF downloads become a real slowdown. An Odoo Direct Print approach removes these extra steps and keeps your workflow fast and efficient.
The obvious solution is Odoo's IoT Box. It works but it costs money, it only supports Enterprise, and it adds a physical device to your setup that can fail, needs configuration, and needs your network to behave. For anyone on Community Edition, it's not even an option.
This guide is about a different approach. We built the All-in-One Odoo Direct Print module to solve this cleanly, a lightweight desktop app that connects your printers to Odoo directly, and gives you one-click printing for any report, from any device, to any printer.
What You Can Do With This Module
Print without downloading anything Click Direct Print on any Odoo report invoice, delivery slip, sales order, label and it goes straight to the printer. No PDF opens, no file saves to your computer.
Works with every printer type you already own USB, network, WiFi. If your computer can see the printer, the module can use it. Supports standard PDF printers, ZPL thermal printers, and ESC/POS receipt printers out of the box.
Printers appear automatically, no manual setup Connect the Print Engine app once and it discovers every printer on your machine and syncs them into Odoo.
Assign specific printers to specific reports Set which printer handles invoices, which one handles delivery slips, and which one handles labels. The right document goes to the right printer automatically and your team doesn't have to choose every time.
Print from Android and iOS too Mobile devices work the same way as desktop. Warehouse staff using tablets or phones can trigger direct printing to any connected WiFi printer without going back to a desktop.
No IoT Box. No subscription. No third-party cloud. Everything runs locally through the Print Engine app on your machine. Your documents stay on your network. You pay once and the module is yours.
Workflow
- Navigate to the Print Engine Menu. Go to the Print Engine Clients menu and click New to create a new client configuration.


- Enter a descriptive Name for your client and click Save. The system will automatically generate a unique Print Engine Token.

- Launch the Creyox Print Engine executable on your local machine. In the login window, enter your Odoo URL, Database Name, and the Print Engine Token generated in Odoo.

- Click the Login button. The application will verify your credentials and automatically sync all printers connected to your system with Odoo.

- You will receive a notification confirming that the connection has been successfully established.

- Back in Odoo, open the Print Engine Client record you created. Under the Printers tab, you will find a list of all printers synced from your local system.

- You can also view a master list of all printers by navigating to the Printers menu in the Print Engine app.
- To verify the connection, open any printer record and click the Test Print button. This will trigger a test page on the selected printer.

- When a Test Print is triggered or a document is printed from Odoo, a Print Job record is automatically created. This job queues the document and sends it to the selected printer.
- To view the complete history of all printing activities, navigate to the Print Jobs menu. Here, you will find a list of all jobs.

- Click on any specific print job to view its full details. The Print Job form provides comprehensive information.

- Navigate to Configuration >> Reports. Here, select the report for which you want to configure direct printing.

- Open the selected report and navigate to the Print Configuration tab.
- To enable direct printing, check the Enable Auto-Print option and select the Default Printer where the report should be printed automatically.

- Navigate to the module or view where you want to generate a report (e.g., Sales Orders, Invoices, Purchase Orders).
- Click on the Print button to view available reports.

- For configured reports with Direct Print enabled, you will see two options in the print menu:
- Standard Report Name: Downloads the report following Odoo's default behavior
- Report Name (Direct Print): Sends the report directly to the configured printer without downloading

- When you select the Direct Print option, the report is automatically sent to the designated printer.
- You will receive a notification confirming that your report has been successfully sent to the printer.

- For reports generated from wizards or custom actions, a print options dialog will appear with the following modes:
- Download: Downloads the report following Odoo's standard flow
- Direct Print: Sends the report immediately to your configured printer

- All print jobs are tracked in the Print Jobs menu where you can monitor their status.
- To reprint a job, you have two options:
- Generate the report again from the original view
- Click the Reprint button on the print job record to reprint with the original data

- If a print job fails to send the report to the printer, the job status will be marked as Failed.
- You can view detailed error information in the Error tab of the print job record to troubleshoot the issue.

- Navigate to Print Engine >> Settings menu.
- In the Configuration section, you can configure the Job Retention Policy.
- Specify the retention period (in days) to automatically delete print jobs older than the specified time.
- This helps maintain system performance by removing outdated job records.

Explore similar picks
Common Questions
Can I really print from Odoo without an IoT box?
Yes. The Print Engine desktop app is what makes it possible. It runs on your existing computer and bridges Odoo to your local printers with no dedicated hardware, no IoT Box needed. It works on any computer that can see your printer.
Why does Odoo keep downloading a PDF when I click Print?
Because Odoo is a web app running in a browser, and browsers can't directly access local printers for security reasons. The only ways around this are the IoT Box (Enterprise only), a print service like PrintNode (subscription), or a local print engine app like ours. Once our module is installed and configured, a Direct Print option replaces the download step entirely for any report you configure.
Does this work with Odoo Community Edition?
Yes — and this is actually one of the main reasons we built it. Odoo's IoT Box requires Enterprise. Community users have had very limited options for direct printing until now. Our module works identically on Community and Enterprise.
Is there a monthly fee? How is this different from PrintNode?
One-time payment, no subscription. Our Print Engine is local and your documents stay on your network. You pay once and own it.
What types of printers work with this?
Any printer that your operating system can see USB, network/Ethernet. If you can print to it manually from the same computer, the Print Engine can use it. You don't need a specific brand or model.
Can I print to different printers for different documents?
Yes — and this is one of the most useful features. You configure a default printer per report type. So invoices automatically go to the office printer, delivery slips go to the warehouse printer, and labels go to the label printer. Users don't have to select anything, the right report goes to the right printer every time.
Does it work on Odoo.sh or cloud-hosted Odoo?
Yes, it works on Odoo.sh and self-hosted cloud installations. It does not work on Odoo Online (odoo.com SaaS) due to Odoo Online's environment restrictions.
What happens when a print job fails?
The job is logged in the Print Jobs menu with a Failed status and an error description telling you what went wrong printer offline, connection timeout, paper issue, etc. Once you've resolved the problem, you can reprint directly from the job record with one click.
Is This Right for You?
This module makes the most sense for teams where printing is a frequent, repeated part of the workflow, not the occasional document. If you print more than 10–20 documents a day across your team, the time savings from eliminating the PDF download step are real and measurable.
It's particularly well-suited for:
- Warehouses — delivery slips, picking lists, product labels, all triggered automatically on validation
- Retail and POS environments receipts and invoices printed without any download, even from mobile
- Finance teams — invoice batches, statements, and payment confirmations without manual PDF steps
- Odoo Community Edition users — who previously had no practical direct print option without the IoT Box
- Any business that values keeping data local no cloud routing, everything stays on your network
If you're currently on Community Edition and the IoT Box has felt out of reach, this is the closest thing to a plug-in replacement without the hardware cost or Enterprise requirement.




