Skip to Content

Point of Sale app for Odoo

POS Direct Print

Print point of sale receipts from the server instead of the browser, over raw ESC/POS or PrintNode, including on Odoo.sh. A failed print never rolls back a sale.

Point of SaleOPL-1Odoo 19Odoo 18
Price$89.00
LicenseOPL-1
Odoov19 · v18
CategoryPoint of Sale

Overview

POS Direct Print.

Odoo prints point of sale receipts from the browser, which works while the till and the printer share a room. Move the database to Odoo.sh or any server outside the shop network and that assumption quietly stops holding. POS Direct Print renders the receipt on the server and sends it to the printer directly, either as raw ESC/POS over TCP when the server can reach the printer, or relayed through PrintNode when it cannot. The python-escpos library is optional rather than required: the module installs without it and the PrintNode backend works with no extra libraries at all, where comparable apps refuse to install. A printer that is offline, jammed or misconfigured never rolls back a completed order, because the money has already been taken; the failure and its reason are recorded on the order instead. PrintNode credentials are restricted to point of sale managers and are never loaded into the till, so a cashier session cannot read them.

New to Odoo Point of Sale? Read our practical guide to how it works

Also included

Everything else in the box.

Print receipts from the server, not the browserRaw ESC/POS over TCPPrintNode relay for hosted serversWorks on Odoo.shpython-escpos optional, never blocks installNetwork backend reports unavailable when the library is absentA failed print never rolls back a salePrint state and failure reason shown on the orderReprint from the order, and a Print Failed filter to find what needs itPrintNode credentials restricted to managersPrinter assigned per point of saleMulti company aware

What it does

Odoo prints point of sale receipts from the browser, which works perfectly while the till and the printer share a room. Move the database to Odoo.sh, or any server outside the shop network, and that assumption quietly stops holding. It is the kind of thing nobody mentions until go-live week.

POS Direct Print renders the receipt on the server and sends it to the printer directly. Where the server can reach the printer, it speaks raw ESC/POS over TCP. Where it cannot, it relays through PrintNode over plain HTTPS.

A printer that is offline, jammed or misconfigured never rolls back a completed order. The money has already been taken, so the failure and its reason are recorded on the order instead and a manager can reprint.

- Two backends. Raw ESC/POS over the network, or PrintNode when the server cannot see the shop. - Works on Odoo.sh. That is the main reason it exists. - The library is optional. python-escpos is not declared as a hard dependency, so the module installs everywhere. Without it the network backend reports itself unavailable and PrintNode keeps working. Comparable apps refuse to install at all. - A failed print never loses a sale. The order is saved regardless, carrying its print state and the failure reason. - Credentials stay on the server. The PrintNode key is restricted to point of sale managers and is never loaded into the till, so a cashier session cannot read it. - Configuration validated on save. A network printer without a host, or a PrintNode printer without credentials, is refused up front rather than failing at the counter. - Printer per register. Branches and counters print where they should, and printers carry a company.

Who it's for

Anyone running Odoo Point of Sale on Odoo.sh or hosted infrastructure, multi-branch retailers who need each counter printing to its own hardware, and operators who want a receipt to keep printing without a browser session holding the connection.

On the Odoo Store

Get POS Direct Print on the Odoo Store.

Pick your Odoo version and install it in a click, with free updates and real support behind it.

Get it on the Odoo Store