Odoo Sync¶
Odoo meets the Decentralized Web.
Every Odoo database is a star — its own version, its own modules, its own data. Getting two of them to talk means custom scripts, manual exports, or expensive middleware, and something breaks every time Odoo updates.
Odoo Sync draws the constellation. Define what to share, point it at a swarm, and records flow in real time across any version, any module, any topology — no central server, no third-party service, no one else’s infrastructure between you and your data. Every participant owns their star. The constellation belongs to everyone in it.
Overview
Why Odoo Sync exists: data silos, federated ERP, and the case for a peer-to-peer synchronization layer.
Content addressing, Ed25519 signatures, configurable routing, managed infrastructure, and pluggable transports at a glance.
Inter-company sync, supply chain provenance, federated directories, B2B auto-fill, and decentralized Discuss.
Ready-to-use integrations: federated Discuss channels, messages, attachments, and avatars across independent databases.
User Guide
Install, create your first swarm, configure a topic, and verify that events flow between two Odoo instances.
Events and CIDs — the payloads and blobs that flow through the network.
Odoo Schema and Data Schema — the two-layer translation engine between JSON payloads and Odoo records.
Export, import, delivery, and delete — configuration, fields, hooks, and auto-managed infrastructure.
Swarms, nodes, security, and transports — topology, trust levels, and HTTP or Kubo delivery configuration.
Deploy with Docker Compose or HTTP-only, monitor with Prometheus and Grafana, attach to a debugpy server.
Reference
API documentation for sync_base, sync_http, sync_kubo, and sync_discuss — models, methods, and field tables.
Internal architecture: boot sequence, routing matrix, bouncer pipeline, CID fetcher, and thread model.
Operators, traits, three-pass DataLoader, MissingCidError flow, and a cookbook of common mapping patterns.
All HTTP routes across transport modules: auth, request/response shape, and error codes.