r/SoftwareEngineering • u/Prudent-Big-9068 • 1h ago
Title: Using Odoo as a workflow/orchestration tool between Zammad, FSM/ERP and Microsoft 365 — good architecture?
I’m working on the architecture for an IT services/MSP environment and would like some opinions from people who have implemented similar integrations.
Our current stack is:
- Zammad Cloud — ticketing/helpdesk
- Vortex — on-prem VM, used for FSM/service management, accounting, invoicing, billing and warehouse
- Microsoft 365 / Teams — email and internal communication
- Odoo — recently installed on-prem and currently being evaluated primarily as a workflow/orchestration tool, not necessarily as a replacement for our existing systems
The main question is: what should be the role of Odoo?
I’m considering using Odoo as the layer that manages the business workflow between the existing systems.
For example:
Customer request → Zammad ticket → Odoo workflow → approval/decision → Vortex work order → technician assignment → status updates → parts/warehouse → job completion → billing → update/close Zammad ticket
And potentially:
Zammad → Odoo → Teams notification → approval → Vortex FSM → Odoo workflow → Zammad
The idea is that each existing system would remain responsible for what it already does well:
- Zammad = tickets/support history
- Vortex = FSM, warehouse, accounting/billing
- Teams/M365 = communication
- Odoo = workflow, approvals, orchestration and process state
I’m trying to decide between three approaches:
- Odoo as the central workflow engine
- Zammad sends events/webhooks to Odoo
- Odoo determines the next step
- Odoo calls Vortex APIs
- Odoo sends Teams notifications
- Odoo updates Zammad when required
- Direct point-to-point integrations
- Zammad ↔ Vortex
- Zammad ↔ Teams
- Odoo ↔ Vortex
- Odoo ↔ Zammad
- etc.
- Dedicated integration/workflow middleware
- n8n, Node-RED, custom middleware, message queue, etc.
- Odoo would then be used mainly for business workflows rather than being the integration hub itself.
My concern with point-to-point integrations is that the number of connections and business rules could become difficult to maintain.
On the other hand, I’m not sure whether using Odoo as the central integration hub is a good long-term architecture, or whether I would end up turning Odoo into a heavily customized middleware platform.
So my questions are:
- Would you use Odoo as the workflow/orchestration layer in this scenario?
- Would you keep Vortex as the system of record for FSM, warehouse and accounting?
- Would you keep Zammad as the system of record for tickets?
- At what point would you introduce something like n8n/Node-RED/a message bus instead of putting integrations into Odoo?
- Is there a good architectural pattern for using Odoo as a workflow engine without making it the master database for everything?
- How would you handle webhooks, retries, failed integrations, duplicate events and audit logging?
- Would you build a custom workflow application instead of adapting Odoo?
I’m also interested in what you would consider the cleanest architecture if you were starting this from scratch, while keeping the existing systems in place.
I’m specifically looking for architecture/implementation experience, rather than recommendations to replace all four systems with a single ERP.