Odoo customisation that still upgrades

Custom modules, reports and workflows for the parts of your business standard Odoo does not cover. We change as little as possible and keep every change separate from the core.

Configure first, write code second

Odoo covers a lot without any code. Many requests that sound like customisation are settings: an extra approval step on purchases, a different price list per customer group, a second warehouse route. We check those first, because a setting costs less than code and carries over to the next Odoo version on its own.

When a process really is specific to your company, we write a custom module for it. Custom Odoo modules are written in Python, and ours sit beside the standard apps instead of changing them, so the next Odoo version does not overwrite your work.

Customisation is often part of a new Odoo implementation. We also take on companies already running Odoo who need something added or fixed.

What we customise

  • Custom modules

    New features for processes Odoo does not cover out of the box, built as separate modules that install like any other app.

  • Reports and printed documents

    Invoices, quotations, delivery notes and management reports laid out the way you need them, in Arabic, English or both.

  • Workflows and approvals

    Approval steps by amount, department or role, and the rules for who can confirm, cancel or edit what.

  • Fields and screens

    Extra fields, changed forms and list views, so each team sees the information it actually uses.

  • Automations

    Routine steps that run on their own: reminders, status changes, emails and records created from other records.

  • Fixes to existing customisations

    If a previous partner left custom code that breaks or blocks an upgrade, we review it and tell you what to keep, rewrite or remove.

Odoo Studio or a custom module

Odoo gives you two ways to change the system. Studio handles small changes; a custom module handles real business logic.

Odoo Studio

A no-code editor that comes with Odoo Enterprise.

  • Add fields, change forms and adjust report layouts
  • Simple automated actions and approval rules
  • Changes made from the browser, without a developer
  • Best for small changes your own team can maintain

Custom module

Code written in Python, installed like any Odoo app.

  • Any business logic, calculation or integration
  • Works on Community and Enterprise
  • Can be tested and reviewed before it reaches your live system
  • Best for processes that are central to your business

Many projects use both, with Studio for quick layout changes and a module for the business rules.

Keeping custom code upgradable

Each new Odoo version changes parts of the code that custom modules depend on. A module written against the standard apps, without copying or editing them, usually needs a small update at upgrade time. A module that rewrote core files can block an upgrade completely.

So we keep every change in its own module and touch only what the requirement needs. When you upgrade to a new version, the work is easier to predict and to estimate.

Questions about Odoo customisation

Can you customise an Odoo another partner set up?

Yes. We review the database and any existing custom modules first, so we know what we are building on, then quote the change.

Will customisation make upgrades harder?

Every custom module needs checking at upgrade time. Keeping changes in separate modules and away from the core keeps that work small. Heavy edits to standard code are what make upgrades hard.

Do we need Enterprise for customisation?

No. Custom modules work on Community and Enterprise. Odoo Studio, the no-code editor, is only available with Enterprise.

Can you change how our invoices look?

Yes. Invoice, quotation and delivery note layouts can all be changed, including Arabic and bilingual versions.

How do you price customisation?

We write down the requirement, agree it with you and send a written estimate before any work starts.

Need Odoo to do something it does not do yet?

Describe the process and who uses it. We’ll tell you whether it needs a setting, Studio or a custom module.