Odoo Direct Print PRO

Odoo 12


v 14.0 Third Party 366
Live Preview
Required Apps Inventory (stock)
Invoicing (account)
Purchase (purchase)
Sales (sale_management)
Technical Name printnode_base
Also available in version v 12.0 v 13.0 v 15.0 v 11.0 v 10.0
You bought this module and need support? Click here!
Required Apps Inventory (stock)
Invoicing (account)
Purchase (purchase)
Sales (sale_management)
Technical Name printnode_base
Also available in version v 12.0 v 13.0 v 15.0 v 11.0 v 10.0

Odoo Direct Print (Printnode)


Print any report or shipping labels directly to any remote or local (USB, Wi-Fi, Bluetooth) printer, without downloading PDF or ZPL!


The app connects Odoo to your Direct Print account and links all configured printers.

Each printer can be configured per user. This method allows you to print much faster as compared to the default Odoo printing method. Now you can print packing slips (PDF) on your regular A4 printer and shipping labels (ZPL) on any thermal Zebra printer, all at the same time. You can also configure automatic print while calling some action, for example, print a SO right after clicking the "Validate" button.


TEST THE MODULE ON OUR DEMO SERVER - https://odoo.ventor.tech/

Our Demo server is recreated every day at 12.00 AM (UTC). So all your manually entered data will be deleted.

  • Works with both Odoo Community and Enterprise (self-hosted or odoo.sh)
  • Prints different document types (ZPL, PDF) on different printers without downloading files
  • Automatic printing of Shipping Labels after Delivery Order validation (fully compatible with Ventor App).
  • Smart validation prohibits printing documents on unsupported printers, for example, A4 on A6 printers or PDF on ZPL printers
  • Support of USB, Ethernet, WiFi, and Bluetooth printers; any format and manufacturer
  • Flexible automatic printing configuration (for example, print a Sales Order PDF automatically after clicking on the "Confirm" button)
  • All kinds of reports (Sales orders, Delivery sleeps, Shipping labels, Product labels, etc.) and paper sizes
  • Manage access rights and configure each printer individually per user
  • We can customize the app on demand based on your requirements


Configure individual format for every report (needed for smart validation).

Define formats supported by Printers.

Assign default printer for any user for automatic printing.

And set up additional user rules to print a certain document on a particular printer.

Configure action buttons to trigger automatic printing, for example, print a Packing slip after clicking to "Validate" the transfer.

Print Shipping Labels manually or automatically for Odoo Enterprise included Delivery Carries (FedEx, USPS, UPS, bpost and etc.). Also supporting all custom carrier integration modules for Odoo Community that are written according to Odoo Standards. And assign different label printers for every packing station (user). Watch the video >

If your vendor supplies products with missed product labels (barcodes), you can easily print them during receiving in your warehouse (in any Stock Picking object). Or print them via the Products and Product variants menus. Including mass printing.

Define paper formats (needed for smart validation).

Manage access rights.

TEST THE MODULE ON OUR DEMO SERVER - https://odoo.ventor.tech/



Odoo POS support

Due to the design of the POS in Odoo (it is designed to work offline and receipts are generated on frontend and not backend), this module is not supporting printing for POS yet. We will develop a separate module soon.


Bugs, features request

If you have questions, need any help or have a customizations request, please contact us at support@ventor.tech.

We also can set up and configure printers and required print actions in your company on demand.

Are there any additional costs after module purchase?

Yes, there is an additional subscription fee. Our software is based on printnode. This is a paid service (we pay monthly fee for it). It has a monthly subscription and subscription is done through https://print.ventor.tech .

What we have done - we simplified API Key acquiring for you, so it will be plug&play software (previously too many setup steps were needed). Prices are the same both on print.ventor.tech and printnode. Find monthly payment plans here https://print.ventor.tech/plans .

Why actually printing is a paid service? Unfortunately technically it is not possible to print from web application/Odoo.sh on your printer without downloading PDF/ZPL. This is a technical limitation of printing protocol (so problem not with Odoo but with ANY web software). That is why there are many services like printnode and all of them are paid and all more or less of the similar price. So if you are looking for something that will be printed from Odoo directly for free - there is only one solution for this. Hire team of developers. Get VPN service setup between your office where all your printers are located and develop your own functionality based on Community work.

And last but not least, by subscribing through https://print.ventor.tech/plans you will have us as single point of contact. No matter if there is issue with Odoo Direct Print client app or issue with the Odoo Direct Print PRO module.


We have created special page with answers to all typical questions we were getting from our customers. It is available here: https://print.ventor.tech/faq

There you can find answers to questions like (1) Are there any additional costs associated with module? (2) How to update the module when new version is released? (3) What is the difference from the IoT Box? and many others

Installation and Configuration

The installation module requires the following knowledge:

  • How to install a module on your Odoo Instance (self-hosted or odoo.sh)
  • How to install Direct Print Client software (Linux based systems installation will require CUPS knowledge)

Module installation and configuration are not included in the module's price. Refer to the "Documentation" tab in the current module for installation details.

If you need help, you can request paid support via support@ventor.tech.

Learn more about our Ventor mobile app for barcode scanners here (https://ventor.tech/ventor-mobile-app-for-odoo-inventory/).

* For environmental considerations, please consider printing only necessary paper documents.

Odoo Direct Print module

We moved our documentation to the https://print.ventor.tech/docs

Please, follow above link for up-to-date doc.

Change Log

  • 2.2.0 (2022-05-16)
    • NEW! Added functionality to mass print lot labels (from list of Lots/Serial Numbers)
    • NEW! Allow to add new Print Report action to any model (through Configure Print Wizard menu)
    • Display inactive Computers, Printers, Scales in Configuration menu (usability improvement)
    • Improved status menu to update workstation devices dynamically after change in user settings
    • Fixed issue with missed ir.model.data records
    • Fixed issue with missed "name" attribute for scales
    • Fixed printing product labels using scenarios (only in Odoo 15.0)
    • Improved tests coverage (up to 80% of code)
  • 2.1.9 (2022-04-04)
    • Added cron to clean print jobs older that 15 days
    • Fixed issue in tests when other modules are running auto-tests
    • Fixed issue with printing multiple labels for users without Printnode / Manager role
    • Fixed compatibility of workstations devices feature with HR module
    • Fixed issue with wrong printer selected for default product label in Print Labels wizard
  • 2.1.8 (2022-02-25)
    • Fixed regression caused by new feature related to workstations printing
  • 2.1.7 (2022-02-23)
    • Added possibility to link printers to workstations
    • Replaced print job ID from int to text (to provide compatibility with 64 bits PrintNode IDs)
    • Improved layout of Direct Print Settings page
    • Improved tests to mute catched errors in logs when running tests
  • 2.1.6 (2022-01-20)
    • Improved module logic to work with PrintNode subaccounts functionality
    • Added new scenario: Print Package on Put in Pack
    • Fixed issue with connecting multiple scales of the same model to account
  • 2.1.5 (2021-12-31)
    • Added possibility to auto-print return labels
    • Added new scenario: Print Document on Picking Status Change
    • Improved scenario "Print Picking Document after Sales Order Confirmation" to print only Ready Picking
    • Added "Printed/Not Printed" filters to supported models
    • Fixed synchronization with DPC/PrintNode: update computer or printer names when they changed
    • Fixed printing multiple ZPL labels: it only printed the first label from all labels
    • Added Rate Us link to status menu
  • 2.1.4 (2021-12-01)
    • Fixed issue with access rights for "ir.model" model
  • 2.1.3 (2021-11-24)
    • Fixed compatibility with OCA report_xlsx module
    • Added standard Odoo icon to all company specific options
    • Fixed error when save settings with empty API Key
    • Added special method to print attachments from the Ventor app
    • Added new demo scenario to print report for all outgoing transfers (after validation)
    • Added auto disable the "Print Package just after Shipping Label" setting with warning if the user disables the "Packages" setting
    • Added notifications about new releases
  • 2.1.2 (2021-10-07)
    • Removed redundant report to print Pricelist from Product Label Print wizard
  • 2.1.1 (2021-10-04)
    • Added Print Scenario to print Invoice document after it is Validated (Posted)
  • 2.1.0 (2021-09-24)
    • Added Scales integration during 'Put In Pack' action on Delivery Order (to send proper weight to Carrier)
    • Improved compatability with Odoo Native Mobile App
    • (Beta) Added Support for py3o (OCA module) generated reports (ONLY PDF)
  • 2.0.1 (2021-09-17)
    • Fixed issue with auto-printing of the complex reports (e.g. POS Sales Reports)
  • 2.0.0 (2021-09-13)
    • Added support of Direct Print Client platform
  • 1.9.4 (2021-09-02)
    • Fixed issue with SO and PO not returning actions on Confirmation
  • 1.9.3 (2021-08-23)
    • Added "Print Scenario" to print document after Purchase order confirmation
    • Added "Print Scenario" to print "Receipt Document" after Purchase Order Validation
  • 1.9.2 (2021-08-13)
    • Added possibility to exclude particular report from printing in "Print Settings"
  • 1.9.1 (2021-07-29)
    • Fixed error in module installation with other modules that are changing user's form view
    • Fixed regression issue with impossibility to quick print product label via wizard
    • Fixed issue with settings not properly working in multi-company environment
  • 1.9.0 (2021-07-27)
    • Download Printer Bins Information (Paper Trays).
    • Allow to define Printer Bin (Tray) to be used in all places (Print Actions, Print Scenarios, User Rules)
    • When deleting account - delete all related objects (Computers, Printers, Print Jobs, User Rules, Printer Bins)
  • 1.8.1 (2021-07-20)
    • Switching off "Print via Printnode" on user or company also should switch off auto-printing of shipping label on DO Validation
  • 1.8.0 (2021-07-14)
    • Added possibility to print Package Document together with the Shipping Label
    • Added Print Scenario to Print all Packages after Transfer Validation
  • 1.7.3 (2021-07-13)
    • Fixed issue with auto-test for purchase order flow and user access rights
  • 1.7.2 (2021-07-08)
    • Fixed issue with printing multiple documents using scenarios with the same action
  • 1.7.1 (2021-06-30)
    • Fixed issue with automatic Shipping Label printing from attachments via "Print Last Shipping Label" button on Delivery Order
    • Added possibility to enable debug logging on the account to log requests that are sent to PrintNode (needed to communicate with support)
  • 1.7 (2021-06-14)
    • When automatic printing is enabled in User Preferences, display near "Print" menu new dropdown "Download" that will allow to Download reports as in Odoo standard
  • 1.6.3 (2021-06-08)
    • Method _create_backorder() must return a recordset like the original method does, so that other modules could extend it as well
  • 1.6.2 (2021-06-05)
    • Fixed issue with download of printers when there is big amount of printers in Printnode account
    • When deleting account also delete inactive computers and printers
  • 1.6.1 (2021-05-31)
    • Fixed issue that makes module incompatible with modules redefining Controller for report download (e.g. report_xlsx)
  • 1.6 (2021-04-16)
    • Added possibility to define Universal Print Attachments Wizard for any model in the Odoo
    • (Experimental) Added settings to allow auto-printing of shipping labels from attachments. To support shipping carriers implemented not according to Odoo standards
    • Fix printing error when sending to PrintNode many documents at the same time
  • 1.5.2 (2021-03-26)
    • Added print scenarios to print "Lot labels" or "Product Labels" in real time when receiving items It allows either to print single label (to stick on box) OR multiple labels equal to quantity of received items
  • 1.5.1 (2021-03-13)
    • Fixed an issue with Report Download controller interruption
    • Fixed an issue with printing document with scenarios for different report model
  • 1.5 (2021-02-25)
    • Removed warning with Unit tests when installing module on Odoo.sh
    • Added new scenario: print product labels for validated transfers
    • Added new scenario: print picking document after sale order confirmation
  • 1.4.2 (2021-01-13)
    • Added possibility to view the number of prints consumed from the printnode account (experimental)
  • 1.4.1 (2021-01-12)
    • Updating the "printed" flag on stock.picking model after Print Scenario execution
  • 1.4 (2020-12-21)
    • Added possibility to define number of copies to be printed in "Print Action Button" menu
    • Added Print Scenarios which allows to print reports on pre-programmed actions
  • 1.3.1 (2020-11-10)
    • Added constraints not to allow creation of not valid "Print Action Buttons" and "Methods"
    • On product label printing wizard pre-select printer in case only 1 suitable was found
  • 1.3 (2020-10-09)
    • Added possibility to print product labels while processing Incoming Shipment into your Warehouse Also you can mass print product labels directly from individual product or product list
    • Show info message on User Preferences in case there are User Rules that can redefine Default user Printer
    • Added examples to Print Action menu for some typical use cases for Delivery Order and Sales Order printing
  • 1.2.1 (2020-10-07)
    • When direct-printing via Print menu, there is popup message informing user about successful printing Now this message can be disabled via Settings
    • Fixed issue with wrong Delivery Slip printing, after backorder creation
  • 1.2 (2020-07-28)
    • Made Printer non-required in "Print action buttons" menu. If not defined, than printer will be selected based on user or company printer setting
    • Added Support for Odoo Enterprise Barcode Interface. Now it is compatible with "Print action buttons" menu
    • "Print action buttons" menu now allows to select filter for records, where reports should be auto-printed E.g. Print Delivery Slip only for Pickings of Type = Delivery Order
  • 1.1 (2020-07-24)
    • Added Support for automatic/manual printing of Shipping Labels Supporting all Odoo Enterprise included Delivery Carries (FedEx, USPS, UPS, bpost and etc.) Also Supporting all custom carrier integration modules that are written according to Odoo Standards
  • 1.0 (2020-07-20)
    • Initial version providing robust integration of Odoo with PrintNode for automatic printing

Odoo Proprietary License v1.0
This software and associated files (the "Software") may only be used (executed,
modified, executed after modifications) if you have purchased a valid license
from the authors, typically via Odoo Apps, or if you have received a written
agreement from the authors of the Software (see the COPYRIGHT file).
You may develop Odoo modules that use the Software as a library (typically
by depending on it, importing it and using its resources), but without copying
any source code or material from the Software. You may distribute those
modules under the license of your choice, provided that this license is
compatible with the terms of the Odoo Proprietary License (For example:
LGPL, MIT, or proprietary licenses similar to this one).
It is forbidden to publish, distribute, sublicense, or sell copies of the Software
or modified copies of the Software.
The above copyright notice and this permission notice must be included in all
copies or substantial portions of the Software.

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author or have a question related to your purchase, please use the support page.
on 2/24/22, 6:29 AM

 With Ventor everything has been very satisfactory,

100% recommended

Great App
Oscar Bettello
on 1/25/22, 3:09 PM

Great solution if you are looking for automatic printing, it gives you a lot flexibility. I also recommend their Ventor mobile App for inventory management, very intuitive and with many more features than the default Odoo barcode app

Re: Great App
Oleg Kuryan
on 1/25/22, 5:31 PM Author

Thank you Oscar. Your words are very supportive :) 

Great solution for multiple printers at multiple workstations
everphone GmbH
on 11/29/21, 9:44 AM

I wish I had used this solution from the start instead of the IoT box. I would have saved a lot of time.

The VentorTech support is also very responsive and helpful.

Re: Great solution for multiple printers at multiple workstations
Oleg Kuryan
on 11/29/21, 10:06 AM Author

Thank you! Really nice feedback, I shared it with the team =) 

on 10/11/21, 3:40 AM

Brad Lee
on 2/8/21, 9:38 AM

Good Software.

Julio Asensio
on 12/6/20, 6:17 PM

Kitchen Printer
Stacy Dash
on 5/26/22, 12:09 AM

Can I use this module to print kitchen orders in restaurant POS without using iot/posbox on a windows installation?

Re: Kitchen Printer
Oleg Kuryan
on 5/26/22, 10:55 AM Author


Thank you for contacting us!

Unfortunately, current version of our module doesn't work with POS. We are planning to release integration of our module with Odoo POS later this year.

Pablo Arroyo
on 5/24/22, 12:23 PM

Hi, does it support printing multiple invoices at same time?

Oleg Kuryan
on 5/24/22, 1:09 PM Author

Yes, it is supporting. You can print select multiple invoices with checkbox and print them at the same time. 

You can look at the functionality at our demo server https://odoo.ventor.tech

Will this work with community version?
on 3/28/22, 8:29 PM Confirmed Purchase

Will this work with community version?

Re: Will this work with community version?
Oleg Kuryan
on 3/29/22, 2:00 AM Author

Yes, this is working both with Commujity and Enterprise Edition 

on 2/24/22, 6:28 AM Confirmed Purchase

 With Ventor everything has been very satisfactory,

100% recommended

Edwin Dirkszwager
on 2/21/22, 4:48 AM

After a support question the support team reacted promptly. Good support experience and the software works great.

Marco Siebert
on 11/9/21, 8:38 AM


we are new to odoo and currently setup/testing on V14. But we plan our GoLive with V15 in 1-2022. Is it possible to buy Printnode for V15 and receive also the V14 Version?



Oleg Kuryan
on 11/9/21, 9:11 AM Author


You should consider going to Odoo 15 directly. If go live in more than 1 year, it doesn’t make sense to develop it on Odoo 14. 

We stick to Odoo App Store standard policy  - for every version to make separate purchase. That policy allow us to provide updates for every new version and constant improve our product 

Victor Darling
on 9/27/21, 4:19 PM


Victor Darling
on 9/27/21, 4:19 PM

Hello, good morning, I have purchased an odoo printer pro module but when I made the purchase they send me version 12 but I have purchased the new one, not an older one.
Jordi Maneiro
on 9/24/21, 6:42 AM

Jordi Maneiro
on 9/24/21, 6:42 AM

Hello, good morning, I have purchased an odoo printer pro module but when I made the purchase they send me version 12 but I have purchased the new one, not an older one.

Oleg Kuryan
on 9/24/21, 12:14 PM Author

Hope this questions is already solved for you =)

Re: Works great, but issue with Odoo mobile app
on 8/13/21, 1:30 PM

I'm not sure how to respond inline to your response, so this may come across as a new topic.

To answer your questions regarding the issue printing to printnode from the native Odoo Android app:

What Odoo version are you using?
Version 14 (enterprise)

In which menu (on which button are you clicking for what object) to reproduce error?
It happens consistently for any report (e.g. print Sales Order, Print Picking Operations, etc)

Thanks for your help.


Re: Re: Works great, but issue with Odoo mobile app
Oleg Kuryan
on 9/8/21, 4:03 AM Author

Mike, just letting you know that we were able to reproduce the issue. Due to high load now (preparation to Odoo conference) there is slight delay in fixing that issue

Works great, but issue with Odoo mobile app
on 8/12/21, 1:32 PM


The module seems to work great based on our testing so far, with one exception. When you print a report via printnode from the native Odoo mobile app, it shows a message stating:

"Starting download..."

And then it shows:

"Error getting file"

The print job does go through to the configured printnode printer, but these messages are very misleading for the user.

This was found testing with the native Odoo app on an Android device

Is there any way to address this?



Re: Works great, but issue with Odoo mobile app
Oleg Kuryan
on 8/12/21, 2:33 PM Author

Hi Mike,

We will look at it. This looks like compatibility issue. What Odoo version are you using?

In which menu (on which button are you clicking for what object) to reproduce error?

on 7/19/21, 5:45 AM


we have Cab EOS 2 Printer in use. We will switch to odoo shortly. Will this work?

Oleg Kuryan
on 7/19/21, 6:37 AM Author

Hello, it seems not. Below is full list of supported printers https://www.printnode.com/en/docs/supported-printers

Monthly Payment with Printnode
on 6/25/21, 7:51 PM

For using it, I need to pay the subscription fee with Printnode.com, right?

Re: Monthly Payment with Printnode
Oleg Kuryan
on 6/26/21, 3:03 AM Author

Yes, right

Odoo Online,
on 6/25/21, 2:11 PM

I really great app, But it possible to install it in the odoo enterprise online or not?

Note: odoo online is host on odoo.com( not odoo SH), My database url is xxx.odoo.com

Re: Odoo Online,
Oleg Kuryan
on 6/25/21, 3:37 PM Author


Unfortunately Odoo online is not allowing to install apps on it. If you want to host on Odoo , than I recommend Odoo.sh . Many our customers are using our app on Odoo.sh

on 6/22/21, 9:13 AM


We would like to know if your 'Odoo Direct Print' module allows you to generate customer invoice prints automatically either on a printer or in a PDF file.

Our need is to print all unprinted customer invoices via a server action.

We thank you in advance for your response,




Oleg Kuryan
on 6/22/21, 10:21 AM Author

Hi Mgu,

Yes, you can either print PDF Directly on Printer or Download it to computer. Both options are possible. On interface it even looks like this

Great App and Support from Ventor
Sport Nutrition
on 6/9/21, 9:50 AM

Working amazingly, we are saving a lot of time on our label shipping printing and delivery slip for our web orders.  And the support from Ventor is always perfect! 

Shay Kolker
on 4/26/21, 1:12 PM

Thanks for your answer.

I'm using Brother 720, is it OK?

Is it possible to install your module without the Inventory module?

Oleg Kuryan
on 4/26/21, 2:48 PM Author

Hi Shay,

Unfortunately our module has lots of things designed for Inventory so it needs dependency from Inventory module or there can be random issues. Though, if you have dev team they can delete unneeded code related to inventory - for dev team it should be not hard.

Shay Kolker
on 4/26/21, 7:40 AM


I'm using the event module and I need to print attendee badges.

I don't use the Inventory module.

Can you support it?

Oleg Kuryan
on 4/26/21, 8:10 AM Author

Hi Shay,

Sure. Our module allow to send to Printer any PDF document. See below image.


How to specify page orientation or rotate it ?
Ilyas Rakhimkulov
on 4/20/21, 6:33 AM

Re: How to specify page orientation or rotate it ?
Oleg Kuryan
on 4/20/21, 7:12 AM Author

I have replied in support ticket. Duplicating reply here:

- If you are using PDF printing - then default orientation need to be configured on printer. PDF is sent to printer as is. And either you design document in a way you want it to be sent to printer, or you configure defaults on printer.

- If you are using ZPL. You need to specify in ZPL document command to print document with rotation.(there are special ZPL commands for this).

Note that software was designed to send documents to printer as is (as they are designed in Odoo). But if you need to code smth specific you can use "rotate" parameter in your code https://www.printnode.com/en/docs/api/curl#printjobs

Hope that explains. In short - it is always about proper printer configuration and proper report designing. Not about how you send it to the printer

on 4/19/21, 6:10 AM

AttributeError: 'ir.actions.report' object has no attribute '_render'
My Odoo version is ODOO13

Odoo Direct Print PRO 'version': ''


Oleg Kuryan
on 4/19/21, 7:51 AM Author

We just uploaded fix. Please, download ZIP from app store again and use it. Sorry for inconvenience!

on 4/19/21, 4:21 AM


Odoo Server Error

Traceback (most recent call last):

  File "e:\odoo_lu\project\develop\bicycle2021\printnode_base\controllers\main.py", line 137, in report_download

    super(ReportControllerProxy, self).printnode_print(printer_id, report_id, obj)

  File "e:\odoo_lu\project\develop\bicycle2021\printnode_base\controllers\main.py", line 32, in printnode_print

    return printer_id.printnode_print(report_id, objects, copies=copies)

  File "e:\odoo_lu\project\develop\bicycle2021\printnode_base\models\printnode_device.py", line 181, in printnode_print

    content, content_type = report_id._render(ids)

AttributeError: 'ir.actions.report' object has no attribute '_render'

Oleg Kuryan
on 4/19/21, 5:08 AM Author

Hello, what version of Odoo you are using?

I have a question to consult?
on 2/24/21, 2:13 AM

Many print reports in our system are printed in py3o mode; can your cloud printing support py3o printing?

Re: I have a question to consult?
Oleg Kuryan
on 2/24/21, 3:07 AM Author

Hi ,

If this report is available in "Print" dropdown on the model, than module should work