Skip to Content
Catalog / ECO · E-Commerce & Integrations / WooCommerce Integration
WooCommerce Integration
woocommerce_integration

WooCommerce Integration

Two-way sync your WooCommerce store with Odoo: products, stock, customers and orders

v19.0.1.0.0 Abdelfatah Mohammad (AlshayebCo) E-Commerce & Integrations Application

Adds a woocommerce config store model (chatter, per-entity sync toggles, completion flags, pagination state, webhook fields) plus woocommerce import log, woocommerce webhook log and woocommerce product push log models, and a woocommerce import wizard transient. Inherits product template, product product, product category, product attribute(.value), product tag, account tax, contact, sales order(.line), stock quant, stock move, product pricelist, pos order and company to carry woo_id/woo_instance_id mapping fields and create_or_update_from_woo / push-to-WooCommerce methods. Uses the python 'woocommerce' API client and 'requests'; four ir.cron jobs drive paged imports and a daily missing-order catch-up; an http public controller receives signed webhooks and an image controller serves product images to WooCommerce. WooSB bundles map to Odoo combo products via product_bundle_pack. Odoo 19 idioms throughout: models.UniqueIndex, odoo fields.Domain/Command, res groups privilege, list views. Server actions provide a destructive SQL-based 'Clean WooCommerce Data' and combo/referrer maintenance utilities. Depends on stock_account, account_accountant, delivery and product_bundle_pack.

Overview

Online stores running WooCommerce need their catalog, inventory, customers and orders to stay aligned with the accounting and inventory truth in Odoo, without manual re-keying. This module connects one or many WooCommerce stores to Odoo over the REST API, imports the full catalog (categories, attributes, tags, taxes, products, variations and bundle products) and customers, then pulls orders into confirmed sales orders with optional automatic invoicing. Once the initial import is done, per-entity bidirectional sync and real-time webhooks keep both systems in step, with Odoo acting as the master for stock. Paged background imports, an import wizard, and detailed import/webhook/push logs make large catalogs and troubleshooting manageable.

Workflow

Woocommerce Config

Not Connected
Connected
Connection Error

Sale Order

New Order
Pending Payment
On Hold
Processing
Completed
Cancelled
Refunded
Failed

Woocommerce Import Log

Success
Error

Woocommerce Webhook Log

Received
Processed
Failed

Key Features

  • Connect one or many WooCommerce stores using REST API keys, with a one-click connection test and a guided 'Import All Data' sequence.
  • Imports the full catalog: product categories, attributes and values, tags, tax rates, simple, variable and WooSB bundle products (mapped to Odoo combo products).
  • Imports customers (registered and guest) and pulls orders into Odoo sales orders with order lines, taxes, shipping lines and billing/delivery addresses.
  • Handles large stores with paged background cron imports (simple, then variable, then bundle products) plus a daily catch-up job for recently missed orders.
  • Bidirectional sync toggled per entity (categories, attributes, tags, products, customers, orders, stock, taxes) once the initial import is complete.
  • Real-time webhooks for order, product and customer events, auto-registered in WooCommerce and verified with HMAC-SHA256 signatures.
  • Odoo-as-master stock sync pushes live on-hand quantities back to WooCommerce, with optional fixed stock and bundle stock handling.
  • Optional automatic draft invoice creation (and auto-posting) for every confirmed WooCommerce order.
  • Order status round-trips: confirming or cancelling in Odoo updates the WooCommerce order, and dedicated buttons mark orders processing, on-hold, completed or refunded.
  • Import wizard for targeted backfills (by date, status or specific WooCommerce IDs) and one-click retry of failed imports, backed by import, webhook and product-push logs.

Technical Details

Technical Name woocommerce_integration
Version 19.0.1.0.0
License LGPL-3
Domain ECO · E-Commerce & Integrations

Menu Structure

WooCommerce
Configuration
WooCommerce Stores
Import
Import from WooCommerce
Import Logs
Webhook Logs
WooCommerce Data
Products
Customers
Orders
Categories
Tags
Attributes
Attribute Values
Taxes

Security

Two dedicated WooCommerce roles under the Sales privilege group: a User role with read-only access to configurations and logs, and a Manager role with full create/write/delete on configurations and logs. Product push logs are readable by all internal users, and the import wizard is available to managers. Webhook endpoints are public (required for WooCommerce to call in) but are protected by HMAC-SHA256 signature verification against a per-store secret.

WooCommerce / User (read-only on stores and logs) WooCommerce / Manager (full management of stores, imports and sync; granted to Admin by default)

Dependencies

stock_account account_accountant delivery product_bundle_pack

External Dependencies

requests woocommerce