Four services. Each with a scope, a deliverable and an end.
We take over Odoo systems, keep them running, and move them forward a version. Every engagement is written down before it starts.
Rescue and rehost
For companies whose Odoo is held by a partner, or is on Odoo Online or Odoo.sh, and who want it on a server they own.
What happens
We start with an inventory of what you actually have: database, filestore, custom code, integrations, credentials, and where each of them lives today. If a partner holds any of it, we help you request it in the right order, before you signal that you are leaving. That sequencing matters more than people expect.
Then we build a Hetzner Cloud project in your company's name, restore a neutralized copy of your database on it, and run it in parallel with the old system for two to four weeks while your team checks their own work in it. Mail, integrations and scheduled jobs are switched on one at a time and documented as we go. Cutover happens on a day you pick, with the old system kept cold for thirty days.
If your custom code has no repository, we create one from what is on the server and commit it under your account. If integrations have no documentation, we write it.
What you get
- A cloud server (Hetzner Cloud project) owned by your company, with us as an invited member you can remove.
- A git repository of all custom modules, in your company's GitHub or GitLab account.
- Nightly encrypted backups of database and filestore to a Backblaze B2 bucket you own, with a restore test on record.
- A one-page runbook: how to start, stop, back up, restore and update your Odoo without us.
- An integrations sheet: every mail server, payment provider, shipping carrier, bank feed, OAuth login and webhook, what it connects to, and where the secret is stored.
- A credentials handover, stored in your password vault, not ours.
What it costs
- One-time project fee, from {{PRICE_RESCUE_FROM}}
- Quoted after a short assessment, fixed before work starts
- Server and backup storage billed to you directly by Hetzner and Backblaze; most companies pay them tens of dollars a month
How long
- Assessment: three to five business days
- Build and parallel run: two to four weeks
- Cutover: one evening or weekend
- Longer if a partner is slow to release assets
Not included
- A version upgrade. Moving and upgrading at once is how migrations go wrong; see service 3
- Data cleanup, unless scoped separately
- Enterprise licensing fees, if you keep Enterprise
Read the migration page before you decide
Moving off Odoo Online is only possible on a major version, and several things do not travel with the database. The migration page lists them plainly so nobody is surprised.
Managed Odoo
A monthly retainer for companies that want a named party responsible for their Odoo being up, backed up, patched and fixed when small things break.
What happens
We run the server. That means operating system and Odoo security patches on a schedule you know about, disk and memory monitoring, uptime checks from outside your network, and log review. When something needs attention, you hear it from us before you notice it yourself.
Backups run nightly to your Backblaze B2 bucket, and once a quarter we restore one onto a scratch server and tell you it worked. Outbound mail is watched: if your Odoo stops delivering email, an alert fires within the hour rather than when a customer asks where their invoice is.
Each month includes a block of small-fix hours for the things that make Odoo annoying day to day: a report column, a required field, a wrong default, a stuck scheduled action, a bank statement that will not import. You open a ticket in the portal, an AI agent triages it and proposes a change, a human reviews and applies it, and the portal shows you what was looked at and what changed. Most small fixes close the same or the next business day.
What you get
- Server operations: patching, monitoring, capacity, log review, and a monthly summary of what was done.
- Nightly backups to your B2 bucket plus a quarterly documented restore test.
- Outbound mail failure alerting and a check on mail deliverability (SPF, DKIM, bounce handling).
- A block of small-fix hours each month; unused hours do not roll over, and larger work is quoted separately.
- The support portal with a full audit log of every ticket, every proposal and every change.
- Version point-release updates within the same major version, rehearsed on a copy first.
What it costs
- Monthly retainer, from {{PRICE_MANAGED_FROM}}
- Sized by user count, number of custom modules and fix hours included
- Work beyond the included hours at {{PRICE_HOURLY}} per hour, always quoted first
How long
- Month to month
- Thirty days' notice to cancel
- Onboarding takes one to two weeks if you already host with us, longer if we are taking over from elsewhere (see service 1)
Not included
- Major version upgrades (service 3)
- New module development beyond the fix-hours block
- Bookkeeping itself. We keep the reconciliation tools working; your team or accountant does the reconciling
- Odoo Enterprise or third-party license fees
Response times, stated plainly
Server down or data at risk: we start within one hour during US Central business hours and within four hours outside them. Small fixes: acknowledged the same business day, usually closed within two. Larger changes: scoped and quoted within three business days. These are targets we report against, not marketing.
Upgrade to Odoo 19 and de-Enterprise
A fixed-scope project for companies on Odoo 15 to 18 with custom modules, who want to be on the current version and, usually, off the Enterprise license.
What happens
We inventory every installed module and sort it three ways: standard Odoo, community (OCA) modules with a 19.0 branch, and custom code that has to be ported. The custom port is where the cost is, and where AI-assisted work changes the arithmetic. An agent does the mechanical parts of the port (view syntax, renamed fields, removed APIs, list and form changes) module by module, and a human reviews every diff before it goes on the staging server.
If you are leaving Enterprise, we map each Enterprise app you actually use to its OCA or Community replacement, or to "you will not miss it", and show you the difference on a copy of your data before anything is uninstalled. Full accounting, reconciliation, financial reports, quality, field service, document management and e-signature all have community replacements. Studio customizations and marketing automation do not; those are rebuilt as code or dropped, and we tell you which before quoting.
The upgrade itself is rehearsed on a copy of your production database until it runs clean end to end, with your team testing on the copy. Only then do we schedule the real one. The rehearsal script is committed to your repo, so the same thing runs on cutover night.
What you get
- A module inventory and a written plan: keep, replace, port or drop, with the reason for each.
- Custom modules ported to Odoo 19, committed to your repo with one commit per module and a short note on what changed.
- Enterprise apps replaced with OCA or Community equivalents where you chose that, with data carried over.
- A tested, scripted upgrade run on a staging copy, with your team's sign-off before production.
- Production upgrade on a scheduled night, with a rollback point and a documented go/no-go check.
- Two weeks of post-upgrade fixes included.
What it costs
- Fixed project price, from {{PRICE_UPGRADE_FROM}}
- Quoted after the module inventory, which is a small fixed fee credited against the project
- Price is driven by the number and size of custom modules and by how many Enterprise apps need replacing
How long
- Inventory and plan: one week
- Port and rehearse: two to eight weeks depending on module count
- Team testing on staging: one to two weeks
- Production upgrade: one scheduled night
Not included
- Process redesign. The upgrade preserves how you work today
- Replacing Studio customizations is scoped as its own line, because it is a rebuild
- Hosting moves are scoped as service 1; we do them in sequence, never at the same time
On the Enterprise question
If you are on Odoo Online and move to your own server while keeping Enterprise, the per-user license price roughly doubles, because on-premise Enterprise is sold on a different plan. That is why most companies who leave Online also leave Enterprise. It is a real trade: you give up some apps and the free upgrade service, and gain a fixed cost and full control. We will show you the trade on your own data before you commit.
Customization cleanup
A fixed-scope project for Odoo systems that have accumulated years of customizations: Studio fields and views, custom and app-store modules, automated actions, server actions, scheduled jobs and report tweaks, many of them added by people who have since moved on.
What happens
A read-only scan inventories every customization in your database and code: custom and third-party modules, Studio models, fields and views, automated and server actions, scheduled actions, reports, view inheritance, access rights and record rules. For each one we check whether it is used, whether it still works, whether something else already does the same job, and whether it carries risk, such as server actions running Python code with elevated rights.
You get a written plan that sorts every item into keep, fix, consolidate or remove, with the reason and the evidence: the field that has been empty for three years, the automation that has errored on every run since the last upgrade, the three reports that print the same thing. Nothing changes until you approve the plan.
The cleanup runs on a copy of your production database first, with your team testing on it. Then it is applied to production in approved batches, each one logged and reversible. Studio customizations you keep can be converted to a proper module in your repository, so they survive upgrades and can be reviewed like any other code.
What you get
- A complete customization inventory with usage evidence for each item.
- A keep, fix, consolidate or remove plan, approved by you before any change.
- Broken automations and views repaired, duplicates consolidated, dead items removed, all on a copy first.
- Kept Studio customizations converted to a versioned module, where you choose that.
- A plain-language document of every customization that remains: what it does, who uses it, why it exists.
- Two weeks of post-cleanup fixes included.
What it costs
- The scan is free, and it counts your customizations for you
- Published tiers by customization count, from {{PRICE_CLEANUP_FROM}}
- The price is fixed once the scan runs; anything the scan missed is our cost
How long
- Scan and plan: one week
- Cleanup on a copy and team testing: one to four weeks
- Production changes: approved batches over a few days
Why this matters
Customizations are where upgrades break, where performance quietly degrades and where knowledge walks out the door with the person who built them. A system you can explain line by line is cheaper to run, safer to change and far easier to upgrade.
Things we also do inside those services
These are not separate products. They come up in nearly every engagement, so we name them.
-
Reconciliation forensics
Finding why the bank balance and the ledger disagree: duplicate statement imports, payments with no journal entry behind them, receivables that were collected in the old system. We find and document the cause; your bookkeeper or we fix it under your approval.
-
Performance
Slow list views and reports are usually missing database indexes, a bad domain in a custom module or an undersized worker configuration, not the hosting. We measure first, then fix the actual thing.
-
Mail plumbing
Outgoing SMTP, incoming aliases, bounce handling, SPF and DKIM, and the alerting that tells you when any of it stops. Set up once, watched forever.
-
Change log you can read
Point releases change behaviour quietly. We keep a plain-language log of what changed in your system and when, so "it worked last week" has an answer.
-
Security hygiene
Multi-factor login for administrators, SSH keys instead of passwords, no shared credentials in spreadsheets, and a firewall in front of the database. The basics, actually done.
-
EU and UK hosting region
Hetzner has data centers in Germany and Finland as well as the US. EU and UK customers can keep their data in the EU under a signed data processing agreement.
Not sure which one you need?
Most first conversations are twenty minutes. Tell us your version, hosting and what hurts, and we will say which service fits, or that none does.