| name | odoo-shopify-integration |
| description | Connect Odoo with Shopify: sync products, inventory, orders, and customers using the Shopify API and Odoo's external API or connector modules. |
| type | skill |
| created | 2026-02-27T00:00:00.000Z |
| domain | business-marketing |
| category | ecommerce |
| risk | unknown |
| source | community |
| tags | ["skill","business-marketing","ecommerce","odoo","shopify","integration"] |
Odoo ↔ Shopify Integration
Overview
This skill guides you through integrating Odoo with Shopify — syncing your product catalog, real-time inventory levels, incoming orders, and customer data. It covers both using the official Odoo Shopify connector (Enterprise) and building a custom integration via Shopify REST + Odoo XMLRPC APIs.
When to Use This Skill
- Selling on Shopify while managing inventory in Odoo.
- Automatically creating Odoo sales orders from Shopify purchases.
- Keeping Odoo stock levels in sync with Shopify product availability.
- Mapping Shopify product variants to Odoo product templates.
How It Works
- Activate: Mention
@odoo-shopify-integration and describe your sync scenario.
- Design: Receive the data flow architecture and field mapping.
- Build: Get code snippets for the Shopify webhook receiver and Odoo API caller.
Data Flow Architecture
SHOPIFY ODOO
-------- ----
Product Catalog <──────sync────── Product Templates + Variants
Inventory Level <──────sync────── Stock Quants (real-time)
New Order ───────push──────> Sale Order (auto-confirmed)
Customer ───────push──────> res.partner (created if new)
Fulfillment <──────push────── Delivery Order validated
Examples
Example 1: Push an Odoo Sale Order for a Shopify Order (Python)
import xmlrpc.client, requests
odoo_url = "https://myodoo.example.com"
db, uid, pwd = "my_db", 2, "api_key"
models = xmlrpc.client.ServerProxy(f"{odoo_url}/xmlrpc/2/object")
def create_odoo_order_from_shopify(shopify_order):
partner = models.execute_kw(db, uid, pwd, 'res.partner', 'search_read',
[[['email', '=', shopify_order['customer']['email']]]],
{'fields': [], : }
)
partner_id = partner[][] partner models.execute_kw(
db, uid, pwd, , , [{
: shopify_order[][] + + shopify_order[][],
: shopify_order[][],
}]
)
order_id = models.execute_kw(db, uid, pwd, , , [{
: partner_id,
: ,
: [(, , {
: get_odoo_product_id(line[]),
: line[],
: (line[]),
}) line shopify_order[]],
}])
order_id
():
result = models.execute_kw(db, uid, pwd, , ,
[[[, , sku]]], {: [], : })
result[][] result