Two-way product catalog sync

Shopify Odoo product sync that keeps the catalog in agreement

Product data is the foundation that order, inventory, and accounting sync all sit on. If a Shopify variant doesn't have a stable link to an Odoo product, every downstream sync fails or writes to the wrong record. SyncO handles two-way Shopify Odoo product sync with persistent identifier links, attribute mapping, and idempotent writes — so the catalog stays consistent across rename, SKU change, and bulk edit cycles.

4.9 on Shopify App Store200+ Odoo–Shopify storesFrom $15/monthNo card to trial

Shopify Odoo product sync

What gets synced on a product

A useful product sync is more than a name and price. It has to cover the fields the storefront uses, the fields the warehouse uses, and the custom fields the merchant added. SyncO syncs the standard product fields out of the box and lets you map metafields, attributes, and product properties on top — so the same record fits both Shopify's storefront model and Odoo's product template model.

What gets synced on a product — Synco Shopify Odoo connector

Shopify Odoo product sync

Two-way product sync without write-loops

Two-way sync between two source-of-truth systems sounds simple and is full of traps: an edit in Shopify triggers a webhook, the connector writes to Odoo, the Odoo write fires another webhook, and the loop never ends. SyncO breaks the loop with origin tagging on every write, so the connector knows when an event came from its own action and skips the round-trip.

Shopify Odoo product sync

Stable product identity across renames and SKU changes

Most product sync problems trace back to identity drift: someone renames a SKU, an option value, or a product title, and the connector can no longer find the matching record. SyncO solves this by persisting the Odoo product ID in a Shopify metafield on the first successful match — so the link survives even when SKU, barcode, and option values all change in the same edit.

Shopify Odoo product sync

Version-aware behavior across Odoo 16, 17, 18, 19

Odoo's product model changed across recent versions: attribute line shapes, image storage, and field names. A connector that hardcodes one Odoo version will silently misbehave on the others. SyncO detects the running Odoo version during setup and adapts product writes accordingly.

Shopify Odoo product sync

Where product sync fits with the rest of the connector

Product sync is the prerequisite. Order sync needs the variant link to write the right Odoo product on each line. Inventory sync needs it to update stock at the right warehouse. Fulfillment sync needs it to mark the right delivery line shipped. Once product sync is stable, every downstream operation gets simpler.

Implementation path

From install to live sync

01

Connect Odoo

Verify server, database, credentials, version, and company access.

02

Map operations

Choose locations, warehouses, product rules, order rules, and customer behavior.

03

Run queued sync

Move external API work through retry-safe queues instead of fragile inline actions.

04

Monitor records

Use linked identifiers and logs to understand what synced and what needs attention.

Related

Keep exploring

Read more

From the blog

FAQ

Questions merchants ask before connecting Shopify and Odoo

Is Shopify Odoo product sync one-way or two-way?

Both are supported. You configure direction during setup. Most stores either lead with Shopify (storefront-first) or with Odoo (PIM-first) and let the connector mirror the chosen source — but full two-way is also supported with origin tagging to prevent write-loops.

How does the connector match Shopify products to Odoo products?

First by SKU on each variant, then by barcode, then by product name as a last resort. The first successful match stores the Odoo record ID in a Shopify metafield — every later sync uses that stored ID instead of re-running the match.

What happens to the product link if I rename a SKU?

Nothing. Once the first match completes, the link is the Odoo record ID stored as a Shopify metafield, not the SKU. You can change SKUs, barcodes, option labels, or titles on either side without breaking the connection.

Are product images synced too?

Yes. Image order and alt text are preserved, and re-syncing a product does not duplicate images. Image handling adapts to the running Odoo version's storage format.

Does it work for stores with very large catalogs?

Yes. Bulk product sync mode is queue-backed, so 50,000-product catalogs are imported in batches with retries on rate-limit responses. The first import is the slow one; steady-state is incremental and event-driven.

Can I sync custom Shopify metafields to Odoo product fields?

Yes. Configure metafield-to-Odoo-field mappings during setup with validation rules. See the dedicated metafield sync page for the full mapping configuration.

Start with your store

See how Synco Connector fits your Shopify and Odoo workflow

Open the app flow or enter your Shopify store domain to start configuring Shopify and Odoo sync.