Every organisation has processes that make it different: a particular approval chain, an industry-specific document, a pricing rule or a regulatory report. Odoo covers a remarkable range of standard business processes, but there is almost always a point where the standard flow and the real business diverge. How you handle that gap determines whether your ERP becomes an asset or a constraint.
Configure first, customise second
Before writing code, exhaust configuration. Odoo offers extensive settings, user-defined fields, automated actions, report layouts and access rules. Many requirements that look like development are configuration once properly analysed. Customisation should be reserved for requirements that genuinely create business value and cannot be met otherwise.
Build in separate, well-structured modules
Good customisation lives in dedicated modules that inherit standard behaviour rather than modify it. Each module should have a clear purpose, explicit dependencies, its own security definitions and, for business-critical calculations, automated tests. This structure keeps changes understandable and makes future upgrades a planned porting exercise rather than a rewrite.
- Use inheritance and extension points, never edit core files.
- Keep one business concern per module, so it can be maintained or removed independently.
- Define access rights and record rules alongside every new model.
- Prefer stored, indexed fields for data that is searched or grouped frequently.
- Document why a customisation exists, not only what it does.
Typical high-value customisations
In our projects, the customisations that deliver the clearest return are those that remove manual reconciliation or enforce control: multi-level approvals, instalment and penalty calculations, statements generated from the ledger, final settlement calculations, and portals that let customers and employees serve themselves.
Measure the result
Before starting, agree what success looks like: fewer manual steps, faster approvals, reports available without spreadsheets, or fewer errors. Customisation is an investment and should be evaluated like one.