Home / Blog / How to Move from Odoo Online to Odoo.sh or On-Premise Without Hassles

How to Move from Odoo Online to Odoo.sh or On-Premise Without Hassles

How to Move from Odoo Online to Odoo.sh or On-Premise Without Hassles

How to Move from Odoo Online to Odoo.sh or On-Premise Without Hassles

Migrating from a hosted SaaS instance to a platform that gives you more control is one of the most common growth steps for businesses using Odoo. 

Whether you started on Odoo Online to validate your processes or chose a cloud path for speed, moving to Odoo.sh or to an on-premise environment becomes necessary the moment you need custom code, special integrations, or strict data controls.

This guide explains, step-by-step, how to plan and execute a migration from Odoo Online to Odoo.sh or to your own servers, what to expect, the modules to check, how to avoid common pitfalls, and provides practical tips to minimise downtime and headaches. 

Also Read: Odoo Online vs Odoo.sh vs On-Premise: Which One Fits Your Business Best?

Why Do Businesses Need to Move Their Odoo Hosting?

The primary reason businesses outgrow Odoo Online is the need for greater control and more in-depth customisation. Odoo Online is excellent for using the standard features, but it has one major limitation: you cannot install custom Python modules or complex third-party apps from the Odoo App Store that require direct code access. The customisation tools are limited to Odoo Studio.

The shift to Odoo.sh or On-Premise is usually driven by one or more of these key requirements:

  1. 1. Need for Custom Modules:You need an ERP solution that can handle custom business logic, such as a unique inventory valuation method for the Manufacturing industries, or a complex scheduling system for Healthcare. This requires custom code, which is only possible on Odoo.sh or on-premises.

  2. 2. External System Integration:Your business requires an Enterprise Resource Planning system that talks to other core systems (like a specific e-commerce platform, warehouse management system, or old accounting ERP software). These integrations often need direct server access and custom API connections.

  3. 3. Data Control and Security: Some industries, especially Healthcare, have strict data governance rules. Moving to on-premises gives you complete physical control over your data and the ability to set your own security protocols.

  4. 4. Performance and Scaling: For very large Odoo instances or high-volume businesses like major Retail chains, self-hosting allows you to control the server hardware and software settings, which means you can fine-tune performance.

High-level migration options explained

Before the how-to, understand your destination choices:

1. Move to Odoo.sh

  • Hosted and managed by Odoo, but supports custom modules, GitHub integration, staging environments, CI testing, and controlled deploys. It’s the fastest path to get development power without full server ops. Odoo.sh includes automated backups and monitoring handled by Odoo while you manage code.

2. Move to an on-premise or self-hosted cloud server

  • You or your partner hosts Odoo on your own infrastructure (VMs, private cloud, data center, or a managed hosting provider). You gain full control over security, compliance, and low-level configuration, but you also take on backups, patching, and server maintenance.

3. Hybrid path

  • Some companies choose Odoo.sh first (to enable custom apps quickly) and later move to on-premise if strict compliance or latency needs appear.

Deciding which option depends on your team's skills, compliance needs, customisations, and long-term roadmap. Panorama’s ERP studies consistently show businesses that plan deployments and align hosting choices with future custom needs avoid costly rework later.

Pre-migration checklist: what you must do before you touch anything

Preparation determines success. Don’t skip these steps.

  1. 1. Define the migration goals

Why move? (custom code, integrations, compliance, performance)

Which modules must carry over unchanged? (Accounting, Inventory, POS, Manufacturing)

  1. 2. Audit your current Odoo Online instance

List active modules and third-party apps.

Export a dependency map: which customisations rely on which modules.

Identify custom data (attachments, stored files, reports).

  1. 3. Clean the data

Remove test/demo records, duplicates, obsolete product SKUs, and inactive users. Clean data shortens migration time and reduces surprises during validation.

  1. 4. Snapshot & backup

Download a full database backup from Odoo Online (the Odoo docs show how to download the DB backup). Keep at least two copies in safe storage.

  1. 5. Plan a freeze window

Decide on a short “read-only” or freeze period for the final cutover (e.g., 2–4 hours outside business hours). Communicate this well in advance.

  1. 6. Choose a partner or team

If you lack in-house developers and sysadmins, select an Odoo partner or experienced Odoo developer. Migration is more than copying a DB; you’ll need code checks, dependencies resolved, and possibly version upgrades.

Common pitfalls and how to avoid them

  1. 1. Ignoring custom dependencies

Some third-party modules require extra system packages. Inventory all dependencies and install them early in staging.

  1. 2. Skipping data cleanup

Migrating bad data just makes problems bigger. Clean customers, products, and accounting masters first.

  1. 3. Underestimating reporting differences

Fiscal or tax reports sometimes behave differently across environments or versions. Validate all financial reports with your accounting team.

  1. 4. Not testing integrations

Shopify connectors, payment gateways, 3PL links, and POS devices need full end-to-end testing in staging.

  1. 5. Poor communication with users

Plan training and share clear cutover timings. Users who expect surprise changes cause operational delay.

Practical module checklist: what to test, by module

When you migrate, focus testing on modules that power daily operations. Here’s a practical list:

  • Sales & CRM - quote creation, sales order confirmation, invoicing, margin calculations, lead-to-order flows.
  • Inventory & Warehouse - stock levels, routes, pick/pack/ship, batch/serial traceability.
  • Point of Sale (POS) - register connectivity, offline behaviour, and hardware integrations.
  • Accounting & Finance - journals, tax rules, bank reconciliation, fiscal reports, opening balances. (Validate ledger balances after migration.)
  • Purchase - RFQ → PO → receipt flows, vendor bills.
  • Manufacturing (MRP) - BOMs, work orders, routings, production scheduling.
  • HR & Payroll - employee records, payslips, leave allocations.
  • Website & eCommerce - product pages, checkout, payment gateways, shipping rules, taxes.
  • Integrations - Shopify, payment gateways, shipping providers, marketplace feeds, analytics.

Test each area from end to end (not just isolated forms). Ask the team: how would a typical day look, and what must never fail? Then test those exact scenarios.

Conclusion: Making the Right Move for Your ERP

The decision to move your Odoo instance is a big step, usually signalling a positive business shift toward deeper digital capabilities. The move from Odoo Online to Odoo.sh or On-Premise is not just a technical change; it is a strategic decision about how much control and customisation you need for your Enterprise Resource Planning system.

For businesses like Retail and Restaurants that need specific hardware integrations (POS systems, kitchen displays) or Manufacturing and Healthcare with unique processes, the flexibility of Odoo.sh or On-Premise will quickly pay off.

Don't risk data loss or unnecessary downtime. Micra Digital specialises in complex Odoo migrations to Odoo.sh and on-premises, providing the technical expertise and hands-on support to get your business moved and running smoothly.

FAQ’s 

1. Can I move from Odoo Online to Odoo.sh without losing custom data?

Yes, if you export the database and filestore correctly and validate attachments. Odoo.sh supports importing the database; custom modules must be added to the project repo and tested in staging first.

2. How long does a migration usually take?

For standard SME setups with moderate customisations, a careful migration and go-live can be done in 1–3 weeks. Complex setups with heavy custom code, manufacturing rules, or large data sets can take longer.

3. Is Odoo.sh better than on-premise?

Odoo.sh is ideal when you want developer freedom plus Odoo-managed hosting. On-premises is better when you need strict control over infrastructure or special compliance.

Your all-in-one business solution awaits!

Contact us and take the next step!

Follow Our Adventures!

Copyright © 2020. micra.digital. All rights reserved.