Skip to Content

Plug, print, perform: Using ePOS printers directly with Odoo

Duration: 25:27


PART 1 — Analytical Summary 🚀

This session, led by Odoo’s support team, tackles one of the most frequent questions they receive: how to connect Point of Sale (POS) printers to Odoo, what’s compatible, and what you can print once connected. The talk blends practical setup guidance with a live demo, clarifying when to use direct ePOS connectivity versus the Odoo IoT Box, and showcasing the range of receipts and tickets you can generate inside Odoo POS.

Context 💼

The presenter explains that some POS printers can talk to Odoo POS directly from the browser, while others need the IoT Box as a bridge. The goal is to simplify on-site setup, reduce guesswork on compatibility, and demonstrate a robust end-to-end printing workflow from order prep to receipts, cash operations, and kiosk orders.

Core ideas & innovations 🧠

The key compatibility rules are clear: for direct connectivity, a printer must support the ePOS SDK for JavaScript (commonly found in Epson devices) and run over Ethernet or Wi‑Fi. The team recommends Epson TM‑M30 (I/II/III). When direct communication isn’t possible, the IoT Box bridges printers that natively speak ESC/POS over USB/Ethernet/Wi‑Fi—emulation of ESC/POS is not supported. Notably, ePOS printers can go through the IoT Box only via USB. Some models require a separate Wi‑Fi dongle, so check hardware options.

The setup walkthrough is practical and opinionated. First, put the printer on the network (Ethernet is recommended for stability). Obtain its IP address—via a printed network status slip or through the device’s Wi‑Fi onboarding flow using QR codes and the printer’s web interface. Ensure the printer is on the same network as the POS terminal.

Next, enable the ePOS printer feature in the Odoo POS configuration and enter the printer’s IP. If a cash drawer is connected to the printer, enable it here too. The talk then addresses the most nuanced part: secure communication. Because browsers require trusted connections for device access, the printer must present a certificate trusted by each terminal. The long-term solution is to generate and install a self‑signed certificate on the printer, export it, and import it into each browser/device as a trusted cert. The demo shows this on Chrome (Admin login with the printer serial number, adjust the certificate’s Common Name to the printer’s IP, export as .crt Base64, then import under “Trusted certificates”). The presenter underscores that specifics vary by OS/browser—refer to Odoo or vendor docs. A crucial operational tip: configure a static IP on the router so the printer’s IP (and thus certificate trust) doesn’t change.

Finally, in Odoo, add a system parameter to enforce HTTPS for ePOS communications, making secure access the default from the POS frontend.

With connectivity locked in, the session pivots to what you can print. The demo personalizes receipts by uploading a company logo and enabling built‑in options: Early receipt printing (bill before payment), Custom header and footer, Self‑service invoicing (QR code to generate an invoice), Automatic receipt printing, and Basic receipt printing (no prices). Realistic bar scenarios follow: adding a line note to justify a comped drink, printing a bill pre‑payment, finalizing payment, and producing a receipt with logo, header/footer, QR code, and notes. For gifts, the “basic receipt” hides prices.

Operational workflows are covered too. Cash in/out actions print their own slips with amount and reason. A session report can be printed during register close. Prep workflows are enabled by adding preparation printers and routing by POS product categories (e.g., send cocktails to the bar). If an order carries both item-level notes (“replace mint with basil”) and an order‑level note (“wait”), the system prints appropriately—one ticket for prep with the line note, and a separate ticket instructing the team to wait.

Lastly, kiosk orders can also be paired with an ePOS printer so tickets print the moment customers place orders—extending the same direct‑to‑printer approach to self‑service flows.

Impact & takeaways ⚙️

This approach simplifies retail and hospitality printing by letting Odoo POS talk directly to compatible ePOS hardware, reducing reliance on extra bridges and drivers. It centralizes core printing needs—bills, fiscal-style receipts, prep tickets, cash management slips, and session reports—within one integrated frontend. The certificate flow and router-level static IP recommendation show a mature take on long-term reliability and security.

There are thoughtful constraints. IoT Box is not “magic”—it supports only hardware with established integrations. ESC/POS emulation isn’t supported, and ePOS over IoT is USB-only. Today, receipt customization is intentionally minimal (logo, header, footer, company info), with broader template control planned later. POS printers don’t integrate with the Sales app; they’re exclusively tied to Odoo POS. Still, the net effect is faster setup, fewer moving parts, and better operational coherence—especially for multi‑printer sites routing tickets by category, or venues running both staff terminals and kiosks. 💬

PART 2 — Viewpoint: Odoo Perspective

Disclaimer: AI-generated creative perspective inspired by Odoo's vision.

Hardware should disappear behind the experience. With ePOS, our goal is to make printing feel native to the browser—no drivers, no friction, just tap and print. The fewer bridges you need, the simpler it is to scale, train, and support. That’s been our philosophy across Odoo: integrate deeply, make it simple, and let businesses focus on serving customers.

I like that we’re honest about constraints—security with certificates, static IPs, the limits of template customization today. If we do the basics extremely well and keep the API open, the community and partners can go further. That’s how Odoo keeps improving: pragmatic building blocks, end-to-end flows, and a shared vision for simple, powerful tools.

PART 3 — Viewpoint: Competitors (SAP / Microsoft / Others)

Disclaimer: AI-generated fictional commentary. Not an official corporate statement.

Direct-to-printer from the browser is a strong UX move—less middleware, fewer failure points. Odoo’s emphasis on ePOS and category-based routing is well aligned with retail and hospitality use cases. The trade-off is certificate and network hygiene at scale. In multi-site, multi-tenant environments, centrally managing printer certs, IP reservations, and device lifecycle becomes non-trivial. Enterprise fleets may expect MDM-style controls, monitoring, and compliance attestations out-of-the-box.

From a competitive lens, there’s room to differentiate on enterprise depth: formal device compliance, audited change management, robust offline queuing, and global rollouts with layered security policies. That said, Odoo’s integrated UX and speed of configuration are clear strengths. If they expand template flexibility, fleet management, and cross-module printing (beyond POS), they’ll close gaps with larger suites while preserving their usability edge.

Disclaimer: This article contains AI-generated summaries and fictionalized commentaries for illustrative purposes. Viewpoints labeled as "Odoo Perspective" or "Competitors" are simulated and do not represent any real statements or positions. All product names and trademarks belong to their respective owners.

Share this post
Archive
Sign in to leave a comment
Odoo + Talento Tech: How Open ERP is Transforming the Future of Youth in Southern Brazil