Migrations & Upgrades

On-Premise to Odoo.sh Migration

Odoo.sh is Odoo’s managed platform: hosting, staging environments, backups and a Git-driven deployment workflow in one product. Moving from your own server to Odoo.sh trades infrastructure chores for platform discipline, and imposes some structure your on-premise setup may never have had, particularly around how custom code is deployed.

We run Odoo.sh workflows daily, including CI pipelines built around its branch model, so this migration lands on experience rather than documentation-reading.

What moves, and how

  • What Odoo.sh gives you. Managed hosting with automated backups, one-click staging environments built from production copies, integrated logs and monitoring, and mail/DNS handled sanely. The staging workflow alone changes delivery quality.
  • The Git discipline requirement. On Odoo.sh, custom code deploys from a Git repository, full stop. If your on-premise custom modules live as loose folders on a server, migrating includes putting them under proper version control, which is a gift disguised as a chore.
  • Submodules and structure. Third-party and shared modules organise via Git submodules; we structure repositories the way we run our own connector development, including branch conventions and staging promotion flows.
  • The migration itself. Database and filestore transfer, repository setup, environment configuration, DNS and mail cutover, all rehearsed on an Odoo.sh staging branch before production switches.
  • What changes operationally. Deployments become pushes, staging tests become routine, and 3am server patching stops being your problem. Some low-level server access disappears; we’ll flag anything you currently do that won’t translate.

How a platform move runs

  1. Repository and Git discipline first. Odoo.sh deploys custom code from Git, full stop. If your code was never version-controlled, that gets fixed as step one, structured with submodules the way the platform expects.
  2. Environment and pipeline setup. Production, staging and development environments configured, with the CI checks and build steps that turn deployments into pushes rather than late-night SSH sessions.
  3. Database and filestore transfer to staging. Your live database and filestore move to an Odoo.sh staging build first, where the deployment and the custom code are proven together before go-live.
  4. DNS, mail and integrations rewired. Domains, outbound mail and external integrations repointed and tested, because these are the details that embarrass a cutover when left to the day itself.
  5. Cutover with the old server as fallback. Production goes live on Odoo.sh with the previous environment kept available until the new one has proven itself across real trading days.

Common questions

Does Odoo.sh require Enterprise?
Yes, Odoo.sh is part of the Enterprise ecosystem. Community self-hosting stays on your own infrastructure; if you're moving editions too, see Community to Enterprise.
Our custom code was never in Git. How bad is that?
Common and fixable: we reconstruct a clean repository from the live modules, establish history going forward, and you exit the project with professional version control you should have had anyway.
Is Odoo.sh cheaper than our VPS?
Rarely on raw hosting cost; usually yes on total cost once your team's server administration time, backup risk and staging value are priced honestly. We'll show both numbers.
What if our custom code was never in Git?
Then getting it into a structured repository is step one, and it's a normal part of the job rather than a blocker. We've done this for systems where the custom code lived only on the production server, which is exactly the fragile situation Odoo.sh removes.
Is Odoo.sh actually cheaper than our own server?
Sometimes, sometimes not: the honest comparison includes what your current setup costs in unpaid sysadmin time, 3am patching and the risk of an unversioned production box. We'll do that maths with your real numbers rather than sell the platform on a sticker price.

Not sure where to start? Book a free discovery call and we’ll map your current setup, or request a free Odoo health check if you’re already running Odoo.

Next step

Ready to fix your ops?

Book a free discovery call. We'll look at your current setup and tell you honestly whether Odoo is the right move and what it would involve.