





How We Stopped Writing One-Off Automations in Odoo
Every Odoo implementation re-implements the same handful of automations. Post a note when a record changes. Escalate something that's been stuck too long. Send a reminder on a date. Auto-tag, auto-assign, block edits past a certain stage. The specifics differ per client, the shapes almost never do.
For a while the honest answer was to write each one as a small custom module. It worked, but it meant maintaining dozens of near-identical bits of code, one per client, forever. So the approach changed: instead of writing another automation, build the engine once and configure it with rules.
A configuration layer, not a code layer
The result is a library of small, reusable engines that a functional consultant sets up with rules rather than code. An escalation engine that watches any model and flags records stuck in a stage too long. A reminder engine that schedules date-based nudges on anything. Auto-chatter, auto-tagging, auto-assignment, approval gates, locking, all of it configured, none of it re-coded per client.
On top of that sit ready-made automation packs per Odoo app: a set of accounting rules you can switch on, a set for helpdesk, a set for CRM. A new client doesn't wait for a developer to build their reminders. The rules already exist and get turned on.
Why the shift is the real story
The interesting part isn't any single engine. It's the move from "write a custom automation" to "configure a standard one." Custom code is a liability you maintain for years and that breaks on upgrades. A configuration layer is set up in minutes, understood by consultants rather than only developers, and survives version changes far better. It's the same principle that separates an implementation that scales from one that accumulates technical debt with every project.
This is how Majorbird keeps custom work fast and maintainable at the same time. If you're weighing how much of your Odoo should be custom code versus configuration, that's a conversation worth having. Reach the Majorbird team at odoo@majorbird.com or www.majorbird.com.