Ir al contenido
Odoo Menú
  • Inicia sesión
  • Pruébalo gratis
  • Aplicaciones
    Finanzas
    • Contabilidad
    • Facturación
    • Gastos
    • Hoja de cálculo (BI)
    • Documentos
    • Firma electrónica
    Ventas
    • CRM
    • Ventas
    • PdV para tiendas
    • PdV para restaurantes
    • Suscripciones
    • Alquiler
    Sitios web
    • Creador de sitios web
    • Comercio electrónico
    • Blog
    • Foro
    • Chat en vivo
    • eLearning
    Cadena de suministro
    • Inventario
    • Manufactura
    • PLM
    • Compras
    • Mantenimiento
    • Calidad
    Recursos humanos
    • Empleados
    • Reclutamiento
    • Vacaciones
    • Evaluaciones
    • Referencias
    • Flotilla
    Marketing
    • Redes sociales
    • Marketing por correo
    • Marketing por SMS
    • Eventos
    • Automatización de marketing
    • Encuestas
    Servicios
    • Proyectos
    • Registro de horas
    • Servicio externo
    • Soporte al cliente
    • Planeación
    • Citas
    Productividad
    • Conversaciones
    • Inteligencia artificial
    • IoT
    • VoIP
    • Artículos
    • WhatsApp
    Aplicaciones externas Studio de Odoo Plataforma de Odoo en la nube
  • Industrias
    Venta minorista
    • Librería
    • Tienda de ropa
    • Mueblería
    • Tienda de abarrotes
    • Ferretería
    • Juguetería
    Alimentos y hospitalidad
    • Bar y pub
    • Restaurante
    • Comida rápida
    • Casa de huéspedes
    • Distribuidora de bebidas
    • Hotel
    Bienes inmuebles
    • Agencia inmobiliaria
    • Estudio de arquitectura
    • Construcción
    • Gestión de propiedades
    • Jardinería
    • Asociación de propietarios
    Consultoría
    • Firma contable
    • Partner de Odoo
    • Agencia de marketing
    • Bufete de abogados
    • Adquisición de talentos
    • Auditorías y certificaciones
    Manufactura
    • Textil
    • Metal
    • Muebles
    • Comida
    • Cervecería
    • Regalos corporativos
    Salud y ejercicio
    • Club deportivo
    • Óptica
    • Gimnasio
    • Especialistas en bienestar
    • Farmacia
    • Peluquería
    Trades
    • Personal de mantenimiento
    • Hardware y soporte de TI
    • Sistemas de energía solar
    • Zapateros y fabricantes de calzado
    • Servicios de limpieza
    • Servicios de calefacción, ventilación y aire acondicionado
    Otros
    • Organización sin fines de lucro
    • Agencia para la protección del medio ambiente
    • Alquiler de anuncios publicitarios
    • Fotografía
    • Alquiler de bicicletas
    • Distribuidor de software
    Descubre todas las industrias
  • Comunidad
    Aprende
    • Tutoriales
    • Documentación
    • Certificaciones
    • Capacitación
    • Blog
    • Podcast
    Fortalece la educación
    • Programa educativo
    • Scale Up! El juego empresarial
    • Visita Odoo
    Obtén el software
    • Descargar
    • Compara ediciones
    • Versiones
    Colabora
    • GitHub
    • Foro
    • Eventos
    • Traducciones
    • Conviértete en partner
    • Servicios para partners
    • Registra tu firma contable
    Obtén servicios
    • Encuentra un partner
    • Encuentra un contador
    • Contacta a un consultor
    • Servicios de implementación
    • Referencias de clientes
    • Soporte
    • Actualizaciones
    GitHub YouTube Twitter LinkedIn Instagram Facebook Spotify
    +1 (650) 691-3277
    Solicita una demostración
  • Precios
  • Ayuda
Debe estar registrado para interactuar con la comunidad.
Todas las publicaciones Personas Insignias
Etiquetas (Ver todo)
odoo accounting v14 pos v15
Acerca de este foro
Debe estar registrado para interactuar con la comunidad.
Todas las publicaciones Personas Insignias
Etiquetas (Ver todo)
odoo accounting v14 pos v15
Acerca de este foro
Ayuda

How to Set Up Windows Virtual IoT with a Zebra Printer on Odoo 19

Suscribirse

Reciba una notificación cuando haya actividad en esta publicación

Se marcó esta pregunta
windowsprinterbarcodelabelzebraVirtualIoTodoo19zplIoT
923 Vistas
Avatar
Samson Mai (samai)

How to Set Up Windows Virtual IoT with a Zebra Printer on Odoo 19

After setting up Virtual IoT + Zebra printers across several client implementations, I noticed the official documentation for Odoo 19 is missing some critical steps (firewall configuration, PostgreSQL, ZPL printing, and more). More importantly, the existing forum threads cover bits and pieces, but there’s no single end-to-end guide.

This post consolidates everything I’ve learned from hands-on setups and working with our functional experts. Hope it helps.

What Is a Virtual IoT Box?

A Virtual IoT box is a Windows-based application that turns a standard Windows PC into the equivalent of a physical Odoo IoT box. The PC runs a local Odoo server (IoT service only), detects connected devices like printers and scanners, and makes them available to your Odoo database over the local network.

Key point: The Virtual IoT is Windows-only. Mac and Linux are not supported. You can run a Windows VM on Mac/Linux, but Odoo does not support that configuration and won’t troubleshoot it.

Prerequisites

Before you start, make sure you have:

  • Windows 10 or 11

  • Odoo 19 SaaS or Odoo.sh database with an active IoT subscription

  • IoT administrator access on the Odoo user performing the setup (Settings → Users → select user → IoT section → set to Administrator)

  • Zebra printer connected to the Windows machine with drivers already installed — verify it appears in Windows Settings → Printers & Scanners before touching Odoo

  • Internet access on the Windows machine (for initial setup and HTTPS certificate generation)

  • Local network access if other computers need to reach the IoT box

Important Notes on Prerequisites

  • Printer drivers are a hardware prerequisite, not an Odoo one. If the printer doesn’t show in Windows Printers & Scanners, contact the printer manufacturer’s support. Odoo cannot detect a printer that Windows itself doesn’t see.

  • Only genuine Zebra printers are supported. Non-Zebra label printers that claim ZPL compatibility via emulation are unreliable and unsupported.

  • The IoT app must be installed on your Odoo database, and your user must have IoT admin rights.

Step 1: Download the Correct Installer

This is where v19 differs from v17/v18 — don’t use the wrong installer.

Database Version

What to Download

Odoo 19

Dedicated IoT installer from odoo.com/page/download — scroll to the Virtual IOT section

Odoo 17 / 18

Odoo Community Windows installer → select "Odoo IoT" from the install type dropdown during setup

For v19, there’s a separate standalone installer. It is NOT the same as the Community installer with an IoT option in the dropdown. If you use the wrong one, the service may not start correctly.

Step 2: Install the Windows Virtual IoT
  1. Run the .exe installer. Follow the standard prompts. Accept the license agreement.

  2. Change the destination folder (critical). Do NOT use the default Program Files path. Instead, create and select C:\ODOO as the destination.

DANGER:  Never install into C:\Users\... or C:\Program Files\... — this will prevent the Nginx server from initializing and block HTTPS certificate generation. Always create a new folder at C:\ODOO and install there.

  1. Install the sub-modules. The installer will prompt you to set up two additional components:

Sub-Module

What It Does

GPL Ghostscript

Translates print commands into rendered images and text. Used on every print job.

Sumatra PDF

Parses and processes PDF files for printing to standard (non-label) printers.

Click Next / Install / Finish through each.

  1. PostgreSQL installation. The installer will prompt you to install PostgreSQL. This is required — proceed with the install. The Virtual IoT runs a local Odoo server that uses PostgreSQL as its database engine. You don’t need to configure or interact with PostgreSQL after installation.

TIP:  If the PostgreSQL checkbox appears greyed out, it usually means a previous Odoo or PostgreSQL installation left behind registry keys. Uninstall any old programs, open Registry Editor (regedit), search for “PostgreSQL,” delete all remaining entries, restart the computer, and re-run the installer.

  1. Complete the setup. Ensure the “Start Odoo” checkbox is selected, then click Finish. The IoT homepage will automatically open at http://localhost:8069. Installation takes about 5 minutes.

Step 3: Configure the Windows Firewall

This step is required if any other computer on the network needs to access the IoT box (which is the typical setup). Without it, the IoT will only work from the same machine it’s installed on.

  1. Open Windows Defender Firewall with Advanced Security (search “Windows Firewall” in Start)

  2. Click Inbound Rules in the left panel

  3. Click New Rule on the right

  4. Select Port as the rule type → Next

  5. Leave TCP selected. In “Specific local ports,” enter: 8069, 80, 443

  6. Select “Allow the connection” → Next

  7. Check all three profiles (Domain, Private, Public) → Next

  8. Name the rule ODOO → Finish

Port

Purpose

8069

Odoo server port (primary IoT communication)

80

HTTP

443

HTTPS


NOTE:  An outbound rule is NOT needed. The IoT box only receives inbound connections from devices on the local network.

Step 4: Connect the Virtual IoT to Your Odoo Database
  1. Verify the IoT homepage loads. On the same machine, open http://localhost:8069. You should see the IoT box interface with a pairing code. From another machine on the same network, try http://[local-IP]:8069 to confirm remote access.

  2. Find the local IP. It’s displayed on the IoT homepage. Or open Command Prompt and run: ipconfig

  3. Open the IoT app in your Odoo database. Navigate to IoT → IoT Boxes → click Connect.

  4. Enter the pairing code. On v19, the system may auto-detect the IoT box. If not, click “Use Pairing Code” and enter the code from the IoT homepage.

  5. Wait for devices to populate. After connecting, the IoT box will pull all detected devices from Windows Printers & Scanners. This can take up to 5 minutes. Refresh periodically.

TIP:  If no devices appear after 5 minutes, restart the Odoo IoT service. Search “Services” in the Start menu, find “Odoo IoT” or “Odoo IoT 19,” right-click, and select Restart.

Step 5: Print with the Zebra Printer
ZPL Format — The Key Thing to Know

Zebra printers connected via IoT only accept ZPL (Zebra Printing Language) format reports. Standard PDF reports (delivery slips, invoices, pick lists) will NOT print to a Zebra. When selecting a report, always look for options labeled “ZPL” in the name.

Print a Test Label
  1. In the Inventory app, open a product that has a barcode assigned

  2. Click the gear/action icon → Print Labels

  3. Select a ZPL format report from the list

  4. When prompted, assign the correct printer (this is a per-user setting)

  5. Click Print — the label should print immediately

TIP:  Users can check “Do not ask me again” to suppress the printer selection prompt. To change the printer later, go to IoT → Devices and reassign it.

Where ZPL Reports Are Triggered

Manual printing (from the Inventory app):

  • Product form → gear icon → Print Labels → ZPL option

  • Inventory → Products → Lots/Serial Numbers → select rows → Print → ZPL

Automatic printing (on operation validation):

  • Inventory → Configuration → Operations Types → select an operation → Hardware tab → enable Product Labels and/or Lot/SN Labels → select a ZPL format

  • Once configured, labels auto-print whenever that operation is validated — whether from the Inventory app or the Barcode app

Carrier/shipping labels:

  • Delivery orders validated with a third-party carrier (FedEx, UPS, etc.) set to ZPL2 label format

What Does NOT Print to Zebra:

  • Any PDF report

  • ZPL prints 1 label per job — no native batch printing

NOTE:  The Barcode app does NOT have a print button. It only triggers ZPL printing indirectly by validating operations that have auto-print configured on the operation type.

Step 6: Barcode Scanner (Optional)

If you also have a USB barcode scanner, plug it into the Windows machine. It should be detected automatically via Plug and Play. Open the Barcode app in Odoo and scan a barcode to verify.

Note: barcode scanners may appear intermittently in the IoT device list, but they generally function correctly when connected.

Known Limitations

  • Customer displays are not supported on Windows Virtual IoT

  • MRP devices (cameras, measurement tools) are not compatible

  • Non-Zebra label printers claiming ZPL emulation are unreliable and unsupported

  • Devices must remain physically connected. If you unplug a printer, it disappears from the IoT device list

  • Label customization (custom layouts, industry-specific codes) requires custom development or a success pack

  • Mac/Linux: You can run a Windows VM, but this is unsupported by Odoo

Troubleshooting Quick Reference

Problem

Solution

IoT homepage doesn’t load at localhost:8069

Restart the Odoo IoT service via Windows Services

Devices don’t appear on the database

Wait 5 min, then restart the service. Verify printer appears in Windows Printers & Scanners

Can’t access IoT from another computer

Check firewall inbound rule for ports 8069, 80, 443. Verify both machines are on same network

Zebra printer doesn’t print

Confirm you selected a ZPL report (not PDF). Verify the printer driver is installed in Windows

PostgreSQL checkbox greyed out

Previous install left registry keys. Clean with regedit, restart, reinstall

“Connection to IoT Box failed”

Check IoT subscription is active. Try https://[IoT-IP] and manually accept the self-signed certificate

Service name unclear

On v19, look for “Odoo IoT” or “Odoo IoT 19” in Windows Services

Driver issues

Contact the printer’s hardware support (Zebra). Not an Odoo issue

Useful Links

  • Windows Virtual IoT documentation (v19): odoo.com/documentation/19.0/applications/general/iot/windows_iot.html

  • IoT system connection to Odoo: odoo.com/documentation/19.0/applications/general/iot/connect.html

  • Connect a printer: odoo.com/documentation/19.0/applications/general/iot/devices/printer.html

  • Zebra label configuration: odoo.com/documentation/19.0/applications/inventory_and_mrp/inventory/shipping_receiving/setup_configuration/zebra.html

  • Barcodes for lot and serial numbers: odoo.com/documentation/19.0/applications/inventory_and_mrp/barcode/setup/serial_numbers_lots.html

  • Auto-print settings on operations: odoo.com/documentation/19.0/applications/inventory_and_mrp/inventory/shipping_receiving/setup_configuration/print_on_validation.html

  • Labelary ZPL viewer (for testing label designs): labelary.com/viewer.html

Related Forum Threads

If you’re looking for answers to specific issues, these existing threads may help:

  • "How to install & connect my virtual IoT?" — v16/v17 focused but general concepts apply

  • "Virtual IoT Odoo 19" — confirms the separate v19 installer and nightly build URL

  • "What is the difference between the IoT box and the Virtual IoT?" — physical vs virtual comparison

  • "Label Code for ZD410 Zebra Printer" — ZPL code customization examples

  • "Connect your printer & modify ZPL format" — general printer + ZPL setup

Hope this helps someone avoid the headaches I went through. Happy to answer follow-up questions.

Samson Mai

Business Solutions Analyst, Odoo North America

1
Avatar
Descartar
¿Le interesa esta conversación? ¡Participe en ella!

Cree una cuenta para poder utilizar funciones exclusivas e interactuar con la comunidad.

Registrarse
Publicaciones relacionadas Respuestas Vistas Actividad
Virtual IOT 17 not pairing, (No devices)
printer label IOT VirtualIoT
Avatar
0
may 26
472
Print custom label size
printer print barcode label labels
Avatar
Avatar
Avatar
2
mar 23
10225
Virtual IoT Odoo 19 Resuelto
VirtualIoT IoT
Avatar
Avatar
Avatar
2
nov 25
2472
Add Customer Name to ZPL Label
label zpl
Avatar
Avatar
1
dic 24
1909
How to fix barcode error reader on Zebra mobile scanner device (And other mobile scanners) in Odoo 16. Resuelto
barcode zebra
Avatar
Avatar
Avatar
Avatar
Avatar
5
oct 25
10390
Comunidad
  • Tutoriales
  • Documentación
  • Foro
Código abierto
  • Descargar
  • GitHub
  • Runbot
  • Traducciones
Servicios
  • Alojamiento en Odoo.sh
  • Soporte
  • Actualizaciones del software
  • Desarrollos personalizados
  • Educación
  • Encuentra un contador
  • Encuentra un partner
  • Conviértete en partner
Sobre nosotros
  • Nuestra empresa
  • Activos de marca
  • Contáctanos
  • Empleos
  • Eventos
  • Podcast
  • Blog
  • Clientes
  • Legal • Privacidad
  • Seguridad
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk Slovenščina Español (América Latina) Español Svenska ภาษาไทย Türkçe українська Tiếng Việt

Odoo es un conjunto de aplicaciones de código abierto que cubren todas las necesidades de tu empresa: CRM, comercio electrónico, contabilidad, inventario, punto de venta, gestión de proyectos, etc.

La propuesta única de valor de Odoo es ser muy fácil de usar y estar totalmente integrado.

Sitio web hecho con

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now