Skip to content

Otto

Current role

Otto is the production marketplace waybill/download/print agent.

It processes Shopee and Lazada fulfillment-ready orders, downloads waybills, normalizes PDFs, and drives the Brother label printer.

Deployment

  • Repository: ExzenHQ/otto
  • Live host: Proxmox LXC 108
  • Runtime: native Node/systemd service (otto.service)
  • UI: otto.exzentcg.com behind Cloudflare Access
  • Local state: SQLite with WAL
  • Printer: Brother QL through CUPS/USB

Behavior

Otto owns job progression around (platform, external_order_id). It has good deduplication and state handling for print jobs, but it is still a single-box local-state agent.

External marketplace calls and physical printer writes cannot share one atomic SQLite transaction, so retry and reconciliation behavior matters.

n8n archive

The Otto Waybill Archive workflow receives PDFs from Otto and writes them to Google Drive. Archive failure is best-effort and does not block printing.