WooCommerce Integration for Odoo

WooCommerce sends orders, customers, payments, and refunds to Odoo Sales, Inventory, and Accounting in real time — Odoo sends the product catalogue, stock levels, pricing, and fulfilment status back to your WordPress store — and every online order generates a ZATCA Phase-2 compliant e-invoice inside Odoo automatically.

Key Highlights

Bidirectional · Real-timeOrders, payments, and refunds sync between WooCommerce and Odoo as they happen
5 Odoo modulesSales, Inventory, Accounting, eCommerce, and Website connected
ZATCA Phase-2 readyOdoo issues Saudi-compliant e-invoices for every WooCommerce order
Stock synced liveWooCommerce product stock updates the moment Odoo processes an order

Core Features

  • Real-Time Order Sync
  • Live Stock Updates per Product
  • ZATCA Phase-2 E-Invoice per WooCommerce Order
  • Product Catalogue Sync from Odoo to WooCommerce

WooCommerce for the Storefront, Odoo for the Operations

WooCommerce on WordPress is among the most widely deployed open-source storefronts in Saudi Arabia and across the GCC — merchants choose it for the control it gives over hosting, design, and Arabic theme flexibility. But running a WooCommerce store without an ERP integration means that every order placed online has to be downloaded, re-entered into accounting by hand, stock adjusted manually, and a separate ZATCA Phase-2 compliant invoice raised outside the storefront. As order volumes grow, the daily reconciliation consumes a growing share of the operations team's day, stock discrepancies between WooCommerce and the warehouse lead to oversells, and the ZATCA Phase-2 obligation — which requires a cleared tax invoice against every taxable online sale — cannot be met from WooCommerce alone.

The integration connects WooCommerce directly to Odoo Sales, Inventory, Accounting, eCommerce, and Website so that every order — with the customer, products, SKUs, quantities, shipping method, and payment — lands in Odoo the moment it is placed. Odoo allocates the stock against the correct warehouse, confirms the fulfilment, and issues the ZATCA Phase-2 compliant tax invoice automatically and stores it against the Odoo sales order. On the reverse path, Odoo sends the current product catalogue with titles, prices, images, and descriptions back to WooCommerce, updates stock on hand per product after every warehouse movement, and writes the fulfilment and tracking confirmation back onto the WooCommerce order — so the store always shows accurate stock and customers see their tracking information without staff switching between systems.

For Saudi WooCommerce merchants, the integration closes obligations that the storefront alone cannot cover. ZATCA Phase-2 mandates a cleared B2B e-invoice or simplified B2C invoice for every taxable sale — WooCommerce does not generate ZATCA-compliant documents; Odoo does, and the integration ties each WooCommerce order to its cleared invoice automatically. Merchants running WooCommerce alongside Salla, a physical POS, or both share the same Odoo inventory, so no SKU can be oversold across channels. Stock across KSA warehouses — Riyadh, Jeddah, Dammam — is managed in Odoo and reflected back to WooCommerce product by product, so the storefront always shows what is physically available. SAR settlement, Arabic product titles, and right-to-left invoice PDFs are all handled within Odoo's Saudi localisation module.

A mid-size Saudi online retailer ran a WooCommerce store on a local server and kept accounts in a separate accounting package. Every morning an operations coordinator opened the WooCommerce orders dashboard, downloaded the CSV for the previous day, re-entered each order into the accounting system, manually adjusted stock figures for each SKU sold, and then created invoices one by one — none of which were ZATCA Phase-2 cleared. At peak sale periods, this process lagged by a full day, causing oversells on popular SKUs and invoices reaching customers without proper ZATCA clearance. After iWesabe connected WooCommerce to Odoo, orders landed in Odoo in real time, stock decremented instantly, ZATCA Phase-2 invoices were issued and cleared on the day of sale, and fulfilment status wrote back to the WooCommerce order automatically. The morning data-entry session became redundant.

Order SyncStock LiveZATCA Invoicing

What the WooCommerce–Odoo Connector Delivers

Real-Time Order Sync

Every order placed on WooCommerce — with its customer, products, SKUs, variants, quantities, shipping choice, and payment method — is sent to Odoo the moment it is confirmed. Odoo creates the sales order, allocates stock, and begins the fulfilment workflow without any manual trigger or file export.

Live Stock Updates per Product

After every warehouse movement in Odoo — sale, return, or stock adjustment — the updated on-hand quantity is written back to the corresponding WooCommerce product, so the storefront never shows a quantity that differs from what is physically in the warehouse. Out-of-stock products are marked accordingly without staff intervention.

ZATCA Phase-2 E-Invoice per WooCommerce Order

Every WooCommerce order that lands in Odoo triggers a ZATCA Phase-2 compliant tax invoice — B2B clearance or simplified B2C, QR code, Arabic right-to-left layout, 15% Saudi VAT, SAR settlement — issued and stored against the Odoo sales order the same day, without any separate invoicing step.

Product Catalogue Sync from Odoo to WooCommerce

Products, variants, prices, images, and descriptions are managed once in Odoo and pushed to WooCommerce, so the storefront always reflects the current catalogue. Price updates and new products in Odoo appear in WooCommerce on the next sync without any duplicate entry in the WordPress admin.

Fulfilment & Tracking Write-Back

When Odoo confirms a delivery order and generates a tracking reference, the WooCommerce order status updates and the tracking number is written back to the order — the customer receives the shipping notification automatically and staff do not need to update two systems.

Arabic Product Data & RTL Invoice Rendering

Arabic product titles, descriptions, and customer-facing content from Odoo sync to WooCommerce alongside English equivalents, and Odoo issues the ZATCA invoice in Arabic right-to-left layout with the Arabic product names the Saudi customer sees on their receipt — keeping storefront and invoice consistent.

Why Saudi WooCommerce Merchants Run Odoo as Their Back Office

  • ZATCA Phase-2 e-invoicing for every WooCommerce order — Odoo issues the cleared B2B or simplified B2C tax invoice with QR code, Arabic right-to-left layout, and 15% Saudi VAT automatically for each sale that arrives from WooCommerce
  • Live stock accuracy across Riyadh, Jeddah, and Dammam — Odoo manages stock per KSA warehouse and writes the updated quantity back to each WooCommerce product after every movement, so the storefront never oversells
  • SAR settlement and Saudi VAT reconciliation — WooCommerce payments in SAR are posted against the Odoo sales order and the accounting ledger with 15% VAT correctly split and tracked per transaction
  • Arabic product catalogue and right-to-left invoice rendering — Odoo supports Arabic product titles, descriptions, and RTL-formatted ZATCA invoice PDFs within the Saudi localisation module without requiring changes to the WordPress theme
  • Multi-channel coexistence — the same Odoo inventory feeds WooCommerce, Salla, and physical POS simultaneously, so no SKU can be oversold across channels regardless of where the sale originates

Supported Markets

Saudi Arabia

SAR • ZATCA compliant

United Arab Emirates

AED

Bahrain

BHD

+ Kuwait, Oman, Qatar & more

Business Outcomes After Go-Live

1

No more morning order downloads and re-entry

Orders land in Odoo the moment they are placed on WooCommerce — with customer, products, quantities, and payment status already mapped — so the daily CSV download and manual re-entry session is eliminated from day one.

2

ZATCA-compliant invoicing from the first order

Every WooCommerce sale triggers a ZATCA Phase-2 cleared e-invoice from Odoo automatically, so the business meets its e-invoicing obligations without a separate manual invoicing workflow alongside the store.

3

Stock accuracy across every channel

WooCommerce, Salla, and physical POS all draw from the same Odoo inventory, so the on-hand quantity is always correct and oversells across channels are structurally impossible.

4

Catalogue maintained in one place

Products, variants, prices, and descriptions are managed in Odoo and pushed to WooCommerce automatically — no duplicate maintenance in WordPress admin, no price discrepancy between the ERP and the storefront.

5

Faster fulfilment with automatic order completion

Odoo updates the WooCommerce order to Completed and delivers the tracking number to the customer without any manual step, shortening fulfilment time and reducing customer service queries about order status.

6

Accurate channel-level reporting

With WooCommerce revenue, Odoo cost-of-goods, and accounting all on the same database, the margin per order — by product, by channel, and by warehouse — is visible in real time without end-of-month spreadsheet reconciliation.

WooCommerce Integration Steps with iWesabe

1

Prerequisite check — confirm the WooCommerce and WordPress versions, API access (WooCommerce REST API v3), the Odoo edition and version, and the Odoo modules — Sales, Inventory, Accounting, eCommerce — to be connected, plus the currencies, tax settings, and product catalogue scope in scope

2

Deploy the Odoo connector — install and configure the appropriate Odoo connector module to establish the API connection that links WooCommerce to Odoo and configure the webhook or polling settings for order and stock events

3

Configure credentials and sync rules — connect the WooCommerce store to Odoo securely using the REST API credentials, set the sync direction and frequency for orders, customers, products, and stock, and define the source of truth for each object

4

Map products, customers, and tax — align WooCommerce product SKUs and variants with Odoo product templates, map WooCommerce customer records to Odoo partners, and configure ZATCA tax codes and VAT account mapping for Saudi orders

5

Test with sample orders — place test orders in WooCommerce, confirm they appear in Odoo with correct stock allocation, trigger a ZATCA invoice, test a WooCommerce refund, and verify that stock levels and tracking write back to WooCommerce correctly

6

Go live with monitoring — enable the live connection and run iWesabe's monitoring across the first full trading week so any mapping, stock, or ZATCA invoice discrepancy is caught and resolved before it reaches customers or the accounting ledger

Why iWesabe for WooCommerce–Odoo Integration

12+

Years Experience

Since 2012

Odoo Gold Partner

Certified by Odoo SA

200+

Implementations

Across KSA & GCC

4

Delivery Locations

KSA · UAE · Bahrain · India

  • Odoo Gold Partner with hands-on WooCommerce–Odoo integrations across Saudi online retail — orders, stock, catalogue, and ZATCA invoices wired as one automated workflow from storefront to ledger
  • ZATCA Phase-2 done properly — every WooCommerce order issues a cleared B2B or simplified B2C e-invoice from Odoo, with QR code, Arabic right-to-left layout, and 15% Saudi VAT, configured from day one
  • Open-source stack expertise — iWesabe has experience with WooCommerce on self-hosted KSA servers and configures the REST API connection and connector to work reliably with WordPress hosting environments common in the region
  • Bilingual delivery and post-go-live support across the first full trading week, so the operations and finance teams confirm accurate orders, invoices, and stock before iWesabe steps back
iWesabe has connected WooCommerce to Odoo for online retailers, fashion brands, food businesses, and distributors across Saudi Arabia. Every integration includes ZATCA invoice verification, VAT mapping, stock synchronisation testing, and a first-week monitoring period — so the storefront, the warehouse, and the ledger agree from the first live order.

WooCommerce–Odoo Questions from Saudi Businesses

It connects WooCommerce and Odoo so that orders, customers, payments, and refunds sync from WooCommerce to Odoo automatically, and the product catalogue, stock on hand, pricing, and fulfilment status sync from Odoo back to WooCommerce. Every order that arrives in Odoo issues a ZATCA Phase-2 compliant tax invoice automatically, stock is decremented and written back to the WooCommerce product, and when Odoo confirms delivery the WooCommerce order status updates and the customer receives their tracking number — all without manual steps.

The integration works with WooCommerce REST API v3, available from WooCommerce 3.5 onwards running on WordPress 5.6 or later. On the Odoo side, it is compatible with Odoo 16 and Odoo 17 Enterprise and Community editions, covering the Sales, Inventory, Accounting, and eCommerce modules. iWesabe confirms version compatibility during the prerequisite check at the start of every project.

Orders, customers, payments, and refunds flow from WooCommerce to Odoo in near real time — the connector picks up new events on a short polling interval or via webhooks depending on the WooCommerce hosting environment. Stock quantities and fulfilment status flow from Odoo back to WooCommerce after each warehouse movement. Both directions are active simultaneously and the frequency is configurable.

Every order that lands in Odoo from WooCommerce triggers a ZATCA Phase-2 compliant tax invoice inside Odoo — B2B clearance via the ZATCA portal for business customers, or a simplified B2C invoice for individual customers. The invoice carries a QR code, the correct 15% Saudi VAT, Arabic right-to-left layout, and SAR settlement. This happens in Odoo automatically; nothing needs to change on the WooCommerce or WordPress side.

Odoo is the single inventory system of record. Whether a sale comes from WooCommerce, Salla, or a physical POS, every transaction decrements the same Odoo stock figure. Odoo then writes the updated on-hand quantity back to the WooCommerce product, so what a customer sees available always matches what is physically in the warehouse — across all channels simultaneously.

A WooCommerce refund is picked up by the connector and passed to Odoo, where the corresponding credit note is created against the original sales order, stock is reversed to the originating warehouse location, and the accounting entry is posted. The ledger stays accurate without any manual journal entry, and the WooCommerce refund and the Odoo credit note are linked for audit purposes.

A standard setup covering order sync, live stock updates, ZATCA invoicing, and basic catalogue sync is typically live within one to two weeks. Configurations with a large product catalogue, multi-warehouse stock routing, or simultaneous integration with Salla or physical POS usually take two to three weeks. iWesabe runs sample orders and a test trading period before go-live.

Explore More Solutions

Discover our full suite of industry-leading ERP tools built for every business sector.

Magento Integration for Odoo

Magento sends multi-store orders, customer groups, invoices, and credit memos to Odoo Sales, Inventory, and Accounting — Odoo sends the product catalogue, multi-source stock, customer-group pricing, and order status back to Magento — and every online order generates a ZATCA Phase-2 compliant e-invoice inside Odoo automatically.

Explore

PrestaShop Integration for Odoo

PrestaShop sends orders, customers, multi-language products, invoices, and credit slips to Odoo Sales, Inventory, and Accounting — Odoo sends the bilingual product catalogue, stock, pricing, and order status back to PrestaShop — and every online order generates a ZATCA Phase-2 compliant e-invoice inside Odoo automatically.

Explore

OpenCart Integration for Odoo

OpenCart sends orders, customers, products, and payments to Odoo Sales, Inventory, and Accounting — Odoo sends the product catalogue, stock levels, pricing, and order status back to your OpenCart store — and every online order generates a ZATCA Phase-2 compliant e-invoice inside Odoo automatically.

Explore

eBay Marketplace Integration for Odoo

eBay sends marketplace orders, buyer details, and order updates to Odoo Sales, Inventory, and Accounting — Odoo sends listing-level stock updates, end-listing triggers when sold out, and fulfilment + tracking back to eBay — keeping inventory accurate across eBay and every other channel while the Saudi entity's books stay ZATCA-compliant.

Explore

Education ERP & School Management

Manage students, fees, attendance, grades, and staff in one unified platform — reduce administrative burden, improve parent engagement, and run a more efficient institution.

Explore

Construction ERP & Contracting Management

Control projects, subcontractors, budgets, and site operations from a single platform — eliminate cost overruns, streamline progress billing, and deliver every project on time.

Explore

Ready to Connect WooCommerce to Odoo?

Talk to iWesabe about syncing WooCommerce with Odoo Sales, Inventory, and Accounting — with real-time order sync, live stock updates, ZATCA Phase-2 e-invoicing, and one accurate record across both systems.