Skip to content

Connect Shopify to Odoo: Complete Integration Guide (2026)

DeployMonkey Team · March 22, 2026 12 min read

Why Integrate Shopify + Odoo?

Shopify handles the storefront. Odoo handles the back office — inventory, accounting, manufacturing, purchasing, and fulfillment. Without integration, you double-enter orders, manually update stock, and reconcile revenue by hand. Integration eliminates all of that.

What Syncs

DataDirectionDetails
ProductsOdoo → ShopifyName, price, images, variants, stock levels
OrdersShopify → OdooSale orders auto-created in Odoo
CustomersShopify → OdooCustomer records synced as res.partner
InventoryOdoo → ShopifyStock levels updated after Odoo operations
FulfillmentOdoo → ShopifyTracking numbers sent back to Shopify
RefundsShopify → OdooCredit notes created in Odoo

Integration Options

Option 1: Odoo Shopify Connector (OCA)

The OCA (Odoo Community Association) maintains an open-source Shopify connector:

  • Free, open source
  • Syncs products, orders, customers, inventory
  • Webhook-based real-time sync
  • Requires technical setup

Option 2: Third-Party Connectors

Several paid connectors available on the Odoo App Store:

  • SyncBridge, Emipro, Techspawn, VentoCart
  • $200-600 one-time or subscription
  • GUI-based setup, less technical
  • Support included

Option 3: Custom Integration

Build your own using Shopify Admin API + Odoo XML-RPC:

import shopify
import xmlrpc.client

# Shopify connection
shopify.ShopifyResource.set_site('https://your-store.myshopify.com/admin')
shopify.ShopifyResource.set_user('api_key')
shopify.ShopifyResource.set_password('api_secret')

# Odoo connection
odoo = xmlrpc.client.ServerProxy('https://odoo.company.com/xmlrpc/2/object')

# Sync orders
orders = shopify.Order.find(status='any', created_at_min='2026-01-01')
for order in orders:
    # Create sale order in Odoo
    odoo.execute_kw(db, uid, pwd, 'sale.order', 'create', [{
        'partner_id': find_or_create_customer(order.customer),
        'order_line': [(0, 0, {
            'product_id': map_product(item.sku),
            'product_uom_qty': item.quantity,
            'price_unit': float(item.price),
        }) for item in order.line_items],
    }])

Setup Steps (OCA Connector)

  1. Install the Shopify connector module in Odoo
  2. Create a Shopify private app (Settings → Apps → Develop apps)
  3. Grant API permissions: read/write products, orders, customers, inventory
  4. Configure the connector in Odoo with API key, secret, and store URL
  5. Map Odoo products to Shopify products (by SKU or barcode)
  6. Run initial sync (products → Shopify, then orders → Odoo)
  7. Enable webhooks for real-time order sync

Sync Architecture

Shopify Store ←→ Webhooks / API ←→ Odoo Connector Module
                                         ↓
                                    Odoo Sale Orders
                                    Odoo Inventory
                                    Odoo Accounting
                                    Odoo Fulfillment
                                         ↓
                              Tracking # → Shopify

Common Issues

IssueCauseFix
Orders not syncingWebhook not configured or URL unreachableVerify webhook URL is HTTPS and publicly accessible
Duplicate customersNo email matchingMatch customers by email address
Stock mismatchSync delay or manual Shopify editsUse Odoo as single source of truth for inventory
Product variants missingAttribute mapping incorrectMap Odoo product attributes to Shopify options
Price not updatingPricelist not syncedConfigure which Odoo pricelist maps to Shopify price

Best Practices

  • Single source of truth: Manage inventory in Odoo, push to Shopify (not the reverse)
  • SKU matching: Use consistent SKUs across both systems
  • Test with sandbox: Use Shopify development store for testing before production
  • Monitor sync logs: Check connector logs daily for failed syncs
  • Webhook reliability: Implement retry logic for failed webhook deliveries

DeployMonkey + Shopify

Deploy Odoo on DeployMonkey with Shopify integration pre-configured. The AI agent helps map products, troubleshoot sync issues, and monitor order flow between systems.