Skip to main content
Complete 15-Step Migration Guide

Migrate from Odoo.sh to OEC.sh

Zero-downtime migration with complete data preservation. Keep all your customizations, filestore, and configurations. Save up to 70% on hosting costs. See our detailed OEC.sh vs Odoo.sh comparison to understand why businesses are switching.

15
Detailed Steps
1-4 hrs
Typical Duration
$0
Migration Fee
100%
Data Preserved

Pre-Migration Checklist

Complete these preparations before starting your migration. Learn more about backups in our backup and recovery guide.

1

Review current Odoo.sh subscription

Check your billing cycle and plan details. Note the renewal date to avoid paying for an extra month after migration.

2

Create a complete database backup

Generate a fresh backup from your Odoo.sh dashboard. This ensures you have the most recent copy of all business data.

3

Download your filestore

Export all attachments, documents, product images, and uploaded files from your Odoo.sh environment.

4

Document all custom modules

List every custom module installed, including OCA modules, third-party addons, and any proprietary code.

5

Record your exact Odoo version

Note the precise Odoo version (e.g., 17.0.20240315) to ensure perfect compatibility on OEC.sh.

6

Inventory external integrations

Document all API connections, payment gateways, shipping providers, and third-party services.

7

Note scheduled actions and cron jobs

List all automated tasks, their schedules, and any custom scheduled actions that need recreation.

8

Export email templates and reports

Backup any customized email templates, QWeb reports, and document layouts.

15-Step Migration Guide

Follow these steps to migrate your Odoo deployment from Odoo.sh to OEC.sh

Preparation
Export from Odoo.sh
Import to OEC.sh
Verification
DNS Switchover
1
Preparation

Create Your OEC.sh Account

Sign up for a free OEC.sh account at oec.sh. No credit card required. You get immediate access to the dashboard where you can manage all your Odoo deployments.

Estimated time: 2 minutes

Tip: Use your work email to get access to team collaboration features.

2
Preparation

Connect Your Cloud Provider

Link your preferred cloud provider account (AWS, DigitalOcean, Hetzner, OVH, etc.) to OEC.sh. We support 8+ providers, so choose one that matches your budget and compliance requirements.

Estimated time: 5 minutes

Tip: Hetzner offers the best value for most businesses, while AWS is ideal for enterprise compliance needs.

3
Preparation

Provision Your Server

Create a new server in your chosen cloud provider through OEC.sh. Select a server size that matches or exceeds your current Odoo.sh resources. OEC.sh will automatically install Docker, configure security, and set up monitoring.

Estimated time: 5-10 minutes

Tip: Start with a slightly larger server than needed - you can always downsize later.

4
Export from Odoo.sh

Create Fresh Backup on Odoo.sh

Navigate to your Odoo.sh project dashboard, go to the Backups section, and create a new backup. Wait for it to complete before downloading. You want the most recent data possible.

Estimated time: 5-15 minutes

Important: Do not skip this step. Use a fresh backup, not an old one, to minimize data loss.

5
Export from Odoo.sh

Download Database Backup

Download the complete database backup from Odoo.sh. The backup includes your PostgreSQL database with all transactions, configurations, and user data. For large databases, use a download manager to handle interruptions.

Estimated time: 10-30 minutes

Tip: Download during off-peak hours for better speeds and to capture the most recent transactions.

6
Export from Odoo.sh

Download Filestore

Download your complete filestore containing all attachments, product images, documents, and uploaded files. On Odoo.sh, this is typically bundled with the database backup, but verify completeness.

Estimated time: 10-60 minutes

Tip: Compare filestore size with your Odoo.sh usage statistics to ensure nothing is missing.

7
Export from Odoo.sh

Clone Custom Module Repositories

If your custom modules are in Odoo.sh private repositories, clone them to your own GitHub or GitLab account. Ensure you have access to all dependencies and OCA modules your project uses.

Estimated time: 10-20 minutes

Important: Odoo.sh private repos become inaccessible after subscription ends. Clone everything before canceling.

8
Import to OEC.sh

Create Odoo Project in OEC.sh

In OEC.sh, create a new project matching your current Odoo version exactly. Select the same major and minor version running on Odoo.sh. Configure worker count, memory limits, and other settings based on your current usage.

Estimated time: 5 minutes

Important: Version must match exactly. Migrating between Odoo versions should be done as a separate step after the platform migration.

9
Import to OEC.sh

Upload Database to OEC.sh

Use the OEC.sh database import wizard to upload your backup. Our system automatically detects the backup format (ZIP, SQL, or dump) and handles the import process. For databases over 10GB, contact support for assisted import.

Estimated time: 15-60 minutes

Tip: Large databases (50GB+) may take 30-60 minutes. You will receive a notification upon completion.

10
Import to OEC.sh

Upload Filestore

Transfer your filestore to the new environment. OEC.sh supports direct upload through the dashboard, SFTP transfer, or secure rsync for larger filestores. Ensure the filestore directory structure is preserved.

Estimated time: 15-60 minutes

Tip: For filestores over 20GB, use SFTP or rsync for faster and more reliable transfers.

11
Import to OEC.sh

Configure Custom Module Repository

Connect your GitHub or GitLab repository containing custom modules to your OEC.sh project. Configure the branch, addons path, and any build commands. OEC.sh automatically installs modules from your repository on each deployment.

Estimated time: 10 minutes

Tip: Use branch-based deployments to test changes in staging before production.

12
Verification

Verify Module Installation

Check that all custom modules are properly installed and loaded. Review the Odoo logs for any import errors or missing dependencies. Install any required Python packages through the OEC.sh configuration.

Estimated time: 15-30 minutes

Important: Module compatibility issues are the most common migration problem. Test each custom module thoroughly.

13
Verification

Test All Business Processes

Test all your key business workflows: sales orders, invoicing, inventory, accounting reports, email sending, and any custom processes. Verify that scheduled actions run correctly.

Estimated time: 1-2 hours

Important: Never skip testing. Run through your most critical business workflows before going live.

14
DNS Switchover

Reduce DNS TTL

Several days before the final switchover, reduce your DNS TTL (Time To Live) to 300 seconds or less. This allows for faster propagation when you switch to OEC.sh and quick rollback if needed.

Estimated time: 5 minutes

Tip: Do this at least 48 hours before migration so the low TTL propagates fully.

15
DNS Switchover

Update DNS and Go Live

Point your domain (e.g., erp.yourcompany.com) to your OEC.sh environment. Update your DNS CNAME or A record to the provided address. OEC.sh automatically provisions SSL certificates via Let's Encrypt once DNS propagates.

Estimated time: 5-30 minutes

Tip: Monitor access logs on both systems during propagation to ensure smooth transition.

What Gets Migrated

Everything transfers to your new OEC.sh environment. 100% data preservation

Complete Database

All business data including customers, products, sales orders, purchase orders, invoices, payments, journal entries, and every transaction ever recorded.

  • Customer and vendor records
  • Product catalog and variants
  • Sales and purchase history
  • Accounting entries and reports

Filestore and Attachments

Every file uploaded to Odoo including product images, document attachments, email attachments, report PDFs, and user uploads.

  • Product images
  • Document attachments
  • Generated reports
  • Email attachments

Custom Modules

All custom addons, OCA modules, and third-party modules. Your customizations work identically on OEC.sh with proper repository configuration.

  • Custom business logic
  • OCA community modules
  • Third-party addons
  • Inherited views and models

System Configurations

All Odoo settings including company information, currencies, tax configurations, sequences, and system parameters.

  • Company settings
  • Tax configurations
  • Currency rates
  • System parameters

User Accounts and Access

All user accounts with their passwords, access rights, group memberships, and security settings are preserved exactly.

  • User credentials
  • Access rights
  • Group memberships
  • Multi-company access

Historical Data and Audit Trail

Complete history including chatter messages, activity logs, tracking fields, and the full audit trail for compliance.

  • Chatter history
  • Activity logs
  • Field tracking
  • Audit records

Migration Timeline and Downtime

Estimated timelines based on deployment size. Actual times may vary.

Deployment SizeDatabaseUsersTotal TimeDowntime
Small
Typical small business deployment with standard modules and minimal customization.
Under 5GB1-20 users1-2 hours15-30 minutes
Medium
Mid-sized company with multiple custom modules and integrated systems.
5-20GB20-100 users2-4 hours30-60 minutes
Large
Enterprise deployment with extensive customization and large transaction history.
20-100GB100-500 users4-8 hours1-2 hours
Enterprise
Large enterprise with multiple companies, complex integrations, and massive data volumes.
100GB+500+ users1-2 days2-4 hours

Parallel Deployment

Run both Odoo.sh and OEC.sh simultaneously. Test your new environment thoroughly before switching.

Minimal Downtime Window

Only the final database sync and DNS switch require downtime. Schedule during off-peak hours for minimal impact.

Instant Rollback

If any issues arise, simply revert DNS to Odoo.sh. Your original setup remains unchanged until decommissioned.

Zero-Downtime Migration Option

For businesses that need zero downtime, we run both systems in parallel with real-time data sync. The final cutover happens during DNS propagation. Contact our migration team to plan this approach.

White-Glove Migration Service

Let our experts handle your migration from start to finish. We ensure zero data loss and minimal downtime.

  • Dedicated migration specialist
  • Pre-migration assessment call
  • Complete data transfer execution
  • Custom module verification
  • Post-migration validation
  • 7-day support warranty
Migration Assistance Pricing
Free
with Agency plan ($199/mo)
Pro plan customersEmail Support
Free plan customersSelf-Service
See PricingSchedule Migration Call

Migration FAQ

Common questions about migrating from Odoo.sh to OEC.sh

How long does migration from Odoo.sh take?

Most migrations complete in 2-4 hours of active work. The actual time depends on your database size and complexity. A typical 10GB database with standard customizations takes about 2 hours. Larger databases (50GB+) may take 4-8 hours including thorough testing. The longest part is usually downloading and uploading the filestore, which can be done in parallel with other tasks.

Is there downtime during migration?

With our parallel deployment approach, actual downtime is minimal. You run both Odoo.sh and OEC.sh simultaneously during migration, test thoroughly on OEC.sh, then switch DNS during a brief maintenance window (typically 15-30 minutes). Most businesses schedule this during off-peak hours. The final database sync and DNS switch are the only steps requiring downtime.

What data gets migrated from Odoo.sh?

Everything transfers: your full PostgreSQL database with all transactions, the complete filestore with all attachments and images, custom modules, system configurations, user accounts with access rights, email templates, scheduled actions, and audit history. Your OEC.sh environment is an exact copy of your Odoo.sh deployment.

Can I migrate custom modules from Odoo.sh?

Yes, all custom modules transfer over. Connect your GitHub or GitLab repository to OEC.sh, and modules are installed automatically on each deployment. If your modules are in Odoo.sh private repositories, clone them to your own Git repository first. OCA modules and third-party addons work the same on OEC.sh.

Do I keep my custom domain after migrating?

Yes. Update your DNS records to point to OEC.sh instead of Odoo.sh. SSL certificates are provisioned automatically via Let's Encrypt within minutes of DNS propagation. Your users access Odoo at the same URL (e.g., erp.yourcompany.com) with no visible difference.

What Odoo versions can be migrated to OEC.sh?

OEC.sh supports all Odoo versions from 14.0 through the latest 18.0 and beyond. We recommend migrating to the same version first, then upgrading versions separately if needed. Both Community and Enterprise editions are supported. Your Enterprise subscription continues to work on OEC.sh - only the hosting changes, not your Odoo license.

Is there a migration service available?

Yes. Free plan: docs and community support. Pro plan: email support during migration. Agency plan: a dedicated specialist handles the entire process. Contact us for complex migrations with special requirements.

What if something goes wrong during migration?

Keep your Odoo.sh subscription active for at least one week after migration. If anything goes wrong, you can switch back by reverting your DNS changes. Your original Odoo.sh setup stays untouched until you decommission it. We also provide rollback capabilities and priority support during migration windows.

How do I backup before migrating from Odoo.sh?

In Odoo.sh, go to your project dashboard, navigate to Backups, and click Create Backup. Wait for the backup to complete, then download both the database and filestore. We recommend creating a fresh backup immediately before migration to capture the most recent data. Store the backup securely as an additional safety measure. For detailed steps, see our backup and recovery guide.

Can I test on staging first before migrating production?

Yes, and we recommend it. Create a staging environment on OEC.sh, import your production backup there, and test all business processes. Once everything checks out, repeat the steps on production. This approach catches problems before they affect your live system.

Ready to Migrate from Odoo.sh?

Migration takes 1-4 hours and our team can help. Check our pricing to see how much you can save.

1-4hrs
Typical Migration
$0
Migration Fee
100%
Data Preserved
70%
Cost Savings

Disclaimer

OEC.sh is an independent platform operated by OpenEduCat Inc. We are not affiliated with, endorsed by, or sponsored by Odoo S.A., Odoo.sh or their respective parent companies. All product names, logos, and brands mentioned are property of their respective owners and are used solely for identification and comparison purposes.

Pricing and feature information for third-party services is based on publicly available data and may not reflect current rates, promotional offers, or your specific configuration. Always verify pricing directly with the respective provider before making purchasing decisions.

For complete legal information, see our Legal Notices & Trademark Attributions.