How to connect Odoo with WooCommerce
WooCommerce and Odoo in sync: orders, multi-warehouse stock and invoicing in your open-source ERP, tailored.
By Juan Cantón Rodríguez · Updated
Implementation time · 7-15 business days
The problem
Generic WooCommerce to Odoo plugins work until your operation stops being standard: several warehouses, variants by SKU, pricing rules or per-country tax nuances. You end up with stock out of sync between WooCommerce and the ERP, orders that do not map well to Odoo variants, and a team keying in by hand what should flow on its own.
ProposalThe solution
We connect your WooCommerce store (WordPress) to Odoo so every order comes in as a sales order, stock syncs both ways between channel and warehouses, and invoicing is generated in the Accounting module. We lean on Odoo being open source and modular: we integrate with the modules you already run (Sales, Inventory, Accounting) via the external API (XML-RPC/JSON-RPC) or a custom module, without forcing a rigid connector and respecting your business rules.
What we automate
- Every WooCommerce order comes into Odoo as a sales order with its customer and lines.
- Stock synced both ways, with conflict resolution and multi-warehouse.
- Product variants mapped by SKU between WooCommerce and Odoo.
- Invoicing in the Odoo Accounting module with the correct per-country tax.
- Refunds and returns reflected in Odoo without breaking stock.
- Idempotency: WooCommerce webhook retries never duplicate orders or movements.
Typical use cases
Profiles where the Odoo ↔ WooCommerce integration usually fits and what changes with it. Illustrative examples, not specific clients.
DTC brand on WooCommerce with several warehouses in Odoo
Before: The generic plugin could not handle multi-warehouse and caused overselling in the store.
After: Each warehouse reports its correct availability to WooCommerce and overselling is gone.
Distributor with a broad variant catalog
Before: Variants mapped poorly and orders drew down the wrong SKU in the ERP.
After: Exact SKU mapping; every order draws down the correct variant in Odoo.
SMB invoicing from Odoo Accounting
Before: It copied WooCommerce orders by hand to invoice, with tax errors.
After: The order comes in and is invoiced in Accounting with the correct per-country tax, no re-keying.
What changes exactly
Without the integration
- Stock out of sync between WooCommerce and Odoo.
- Orders that do not map well to the ERP variants.
- The generic plugin stuck on your real operation.
- The team re-keying orders and adjusting stock by hand.
With the integration
- Stock synced both ways and multi-warehouse.
- Variants mapped by SKU.
- A tailored integration on top of your real Odoo modules.
- Orders, invoices and stock flowing on their own.
How we build it
We integrate via Odoo's external API (XML-RPC/JSON-RPC) or a custom module depending on the case, with an idempotent queue processing WooCommerce webhooks (WordPress REST API). We respect your existing modules and rules instead of imposing a closed connector, and we validate the SKU variant mapping before going to production.
What connectors exist for Odoo and WooCommerce?
Every option out there, not just ours. If an off-the-shelf app covers your case, use it: we would rather tell you here than on a call.
Odoo has no WooCommerce connector of its own
Worth knowing before you go looking: Odoo pushes its own eCommerce app, so there is no first-party WooCommerce integration. Everything available is community, third-party or custom.
Where it falls short: It does not exist. Every option means software from outside Odoo.
OCA connector-woocommerce
Open-source connector from the Odoo Community Association, two-way and free, with a published branch for Odoo 18.
Where it falls short: It is a small project with open issues. Check that the branch covers your exact Odoo and WooCommerce versions, and assume each major Odoo release can break it.
Commercial connectors (Upevo and similar)
Paid modules ready to install, with support behind them and updates tracked per Odoo version.
Where it falls short: They cover the standard flow. Your own rules (bundles, customer price lists, taxes with nuances) usually fall outside the basic edition.
Custom integration
Against the WooCommerce REST API and the Odoo API, with a queue and retries. The route when you have several warehouses, variants that do not line up or per-country taxes.
What breaks when you connect Odoo and WooCommerce
The failures that actually show up, usually weeks after the integration was signed off.
- 01
Community or Enterprise changes what you can install
Not every module exists for both editions or behaves the same in each. It is the first question to settle, before choosing a connector, and almost nobody asks it in time.
- 02
Variants are not modelled the same on both sides
WooCommerce and Odoo understand attributes and variants differently. A catalogue with sizes and colours is where most automatic syncs fall apart.
- 03
Taxes: mapping rates is not enough
You have to decide which Odoo tax matches each WooCommerce rate, and what happens with cross-border EU sales and OSS. Left on the default mapping, your VAT return comes out wrong.
- 04
Multi-warehouse stock
WooCommerce has one stock figure per product and Odoo has locations. Deciding which warehouse feeds the store, and what to do with reservations, is a business decision no connector makes for you.
- 05
Every major Odoo release is a migration
Community modules lag behind new releases. Upgrading Odoo without first checking the connector has a branch for that version leaves the store disconnected.
Frequently asked questions
Odoo Online (SaaS), Community or Enterprise?
We work with all three. Self-hosted Community and Enterprise give us more room (custom modules); with Odoo Online we use the external API, which Odoo only opens on the Custom plan. We adapt to your edition.
Does it sync multi-warehouse stock?
Yes. If you run several warehouses in Odoo, we compute the correct availability to WooCommerce and apply the allocation rules you define.
How does it handle product variants?
We map WooCommerce variants to Odoo variants by SKU (or by attributes if there is no clean SKU), so every order draws down the correct variant with no manual work.
Does it replace my current WooCommerce plugin?
We usually replace it where it falls short and keep what already works. We audit your operation first so we do not break what you have.
Related integrations
Xero + Shopify
Shopify orders, refunds and payouts synced to Xero, reconciled and with no duplicates.
See integrationEcommerceOdoo + Shopify
Shopify and Odoo in sync: orders, stock and invoicing in your open-source ERP, tailored.
See integrationEcommerceNetSuite + Shopify
Every Shopify order lands in NetSuite as a Sales Order or Invoice, with items, multi-location stock and revenue recognition reconciled.
See integrationShall we talk about your WooCommerce integration?
A 30-minute call, no strings. You leave with scope and a price.