Skip to main content
The sync system enables multiple POS terminals in a restaurant to share orders, table state, and payments in real time through an in-store hub server. It operates in two modes:
  • Direct mode (default) — Each terminal talks directly to Odoo via HTTP polling and an outbox queue. No additional infrastructure needed.
  • Hub mode (opt-in) — Terminals connect via WebSocket to a local Node.js hub that coordinates all activity and acts as the sole gateway to Odoo.
Hub mode is designed for high-volume restaurants with 5-15+ terminals where real-time coordination, conflict prevention, and reliable offline operation are critical.

Package structure

Enable hub mode

1

Deploy the hub server

See deployment for Raspberry Pi, Docker, and systemd setup.
2

Configure Odoo

Set these fields on the shared POS config:
  • nu_hub_enabled = True
  • nu_hub_url = ws://<hub-ip>:8766 (or leave blank for mDNS discovery)
3

Verify

Terminals pick up the config on next bootstrap and connect via WebSocket. Open the hub dashboard at http://<hub-ip>:8766/ to confirm.