E-Commerce Integration
WooCommerce + Odoo Integration
Run WooCommerce on WordPress for storefront while Odoo handles inventory, fulfilment, accounting, and customer data. Native bidirectional sync built on WooCommerce's REST API — products, inventory, orders, customers, refunds, and accounting entries flow in real time without WP-Cron flakiness.
Last reviewed:
What it is
Bidirectional real-time integration between WooCommerce (WordPress) and Odoo. Products + inventory pushed from Odoo to WooCommerce; orders + customer data flow from WooCommerce to Odoo; refunds and returns trip appropriate Odoo accounting entries; WooCommerce Subscriptions billing reconciled. Built on WooCommerce's REST API (not the older WP-Cron-triggered patterns that fail silently) with TechUltra-specific extensions for multi-currency, B2B, and the various WooCommerce plugins ecosystem (Wholesale Suite, WPML for multilingual, multi-vendor marketplaces).
Why it matters
WooCommerce on WordPress remains one of the most popular e-commerce platforms globally — affordable, flexible, plugin-rich. The integration weakness is reliability: most WooCommerce-Odoo connectors are built on WP-Cron which fails silently when WordPress doesn't get traffic, leaving orders un-synced. Production WooCommerce integrations need webhook-based, REST-API-driven sync — which is what TechUltra builds. Plus handling for the WooCommerce ecosystem's variability (different plugins doing similar things differently) requires real engineering.
Features
| Capability | What it does |
|---|---|
| Webhook-based real-time sync | WooCommerce webhooks trigger immediate Odoo updates. No WP-Cron dependency, no silent sync failures during low-traffic periods. |
| Product + inventory sync | Product catalog (titles, descriptions, prices, images, variants, attributes) and inventory levels synced from Odoo to WooCommerce. Multi-warehouse Odoo inventory mapped to WooCommerce stock by location. |
| Multi-currency | WooCommerce multi-currency (via WPML, WOOCS, or other plugins) reconciled with Odoo's multi-currency accounting. FX gain/loss handling on currency-mismatch transactions. |
| WooCommerce Subscriptions | Active subscriptions sync to Odoo Subscriptions module. Recurring billing aligned, prorations handled, upgrade / downgrade flow synced. Deferred revenue + churn analytics in Odoo. |
| B2B / Wholesale support | WooCommerce Wholesale Suite, B2BKing, and similar B2B plugins integrated. Customer-specific pricing, payment terms, purchase order workflow, B2B-only catalogs. |
| Multi-store (WordPress Multisite) | WordPress Multisite networks with WooCommerce stores per site handled. Shared product catalog in Odoo, per-store branding and customer base. |
| Multilingual (WPML, Polylang) | WPML and Polylang multilingual stores supported. Product translations managed in WooCommerce; Odoo accounting handles base language with per-store regional mapping. |
| Refunds + returns | WooCommerce refunds (full, partial, manual, automatic) create Odoo credit notes with appropriate GL postings. Return-to-inventory handled per refund type. |
| Payment gateway reconciliation | Stripe, PayPal, Razorpay, Authorize.net, and other WooCommerce gateways reconciled to Odoo bank accounts. Multi-gateway setups supported. |
| Tax handling | WooCommerce tax classes mapped to Odoo tax codes. EU VAT including OSS, UK MTD VAT, USA sales tax (Avalara / TaxJar), India GST IRN, others supported. |
How it works
-
Discovery + WP audit
Audit your WordPress + WooCommerce setup (plugins, theme, payment gateways, multi-site / multilingual, B2B). Identify integration scope. Output: integration spec.
-
REST API + webhook setup
Configure WooCommerce REST API access (consumer key / secret). Set up webhooks for orders, customers, refunds. Configure Odoo's WooCommerce connector with appropriate mappings.
-
Sandbox + UAT
Test orders, refunds, returns, subscription billing in sandbox. Validate accounting postings. Finance + operations sign-off.
-
Production cutover
Switch webhooks to production. Initial sync of products + customers. Monitor first 48 hours.
-
Ongoing maintenance
WooCommerce updates (frequent — every 4–8 weeks), WordPress core updates, plugin updates all tracked. Sync layer updated when WooCommerce REST API evolves.
Deployment timeline
Single-store WooCommerce: 3–5 weeks fixed-price. Multi-site / multilingual: 5–8 weeks. WooCommerce Subscriptions + B2B: 5–8 weeks. Migration from a Shopify-Odoo setup (rare but happens for cost reasons): 4–6 weeks.
Best for
Businesses running WooCommerce on WordPress with Odoo as the ERP — particularly: brands at 50+ orders/day where manual order entry isn't viable; multi-language / multi-country WooCommerce stores; subscription-based businesses on WooCommerce Subscriptions; B2B operators using WooCommerce Wholesale Suite or B2BKing; cost-sensitive operators preferring WooCommerce's affordability over Shopify's per-month subscription. Not yet a fit for very small WooCommerce stores (under 20 orders/day) where manual workflow remains tractable.
Frequently asked questions
-
Why not use a WooCommerce plugin from the WP App Store?
Many WooCommerce-Odoo plugins exist. Some work for simple cases. Common failure modes: WP-Cron-based sync that fails silently, no handling for multi-currency, no support for WooCommerce Subscriptions, no proper refund accounting, no support for multi-site or WPML. We build production-grade integrations that handle these edge cases. For simple single-store setups, an off-the-shelf plugin can be sufficient — we'll say so honestly during discovery.
-
Does it work with WordPress Multisite?
Yes — WordPress Multisite networks with WooCommerce stores per site supported. Each store has its own customer base and orders, shared product catalog from Odoo, per-store branding.
-
What about WPML / Polylang for multilingual stores?
Both supported. Product translations managed in WooCommerce (via WPML or Polylang's WooCommerce add-on). Odoo carries the base-language product catalog and pushes to translated versions appropriately. Customer-facing experience: localised; back-end accounting: single source.
-
Can it handle WooCommerce Subscriptions?
Yes — active subscriptions sync to Odoo Subscriptions module. Recurring billing aligned, prorations on plan changes handled, upgrade / downgrade flows tracked. Deferred revenue accounting (per ASC 606 / IFRS 15) handled in Odoo. Churn analytics flow through.
-
What about Headless WooCommerce setups?
Headless WooCommerce (Next.js / React / Vue frontend, WooCommerce as backend) supported. Integration is the same — Odoo talks to WooCommerce REST API, the frontend technology doesn't matter to the sync layer.
-
What's the integration cost?
It depends on the number of sites and languages, whether you use WooCommerce Subscriptions or B2B wholesale plugins, whether you run a multi-vendor marketplace (Dokan, WCFM), and your order volume. We don't work from a price list: a one-week discovery maps your sync rules and ends with a fixed price, so the number you sign is the number you pay.
-
How does it handle WooCommerce's frequent updates?
Integration built against stable WooCommerce REST API (versioned). WooCommerce updates every 4–8 weeks; integration tested against new versions. Major version changes (e.g. WooCommerce 8.x → 9.x) trigger an integration update within WooCommerce's supported window.
-
What payment gateways are supported?
All major WooCommerce payment gateways — Stripe, PayPal, Square, Authorize.net, Klarna, Afterpay, Razorpay (India), Mollie, Paystack (Africa), 2Checkout, plus regional gateways. Multi-gateway setups (different gateways per region) supported. Reconciliation to Odoo bank accounts handled per gateway's payout schedule.
-
Does it work with WP page builders (Elementor, Divi, etc.)?
Yes — page builders don't affect the WooCommerce backend / REST API where the integration operates. Product pages can be built with any page builder; integration syncs the underlying product data regardless of page rendering.
-
What about WooCommerce-Memberships?
WooCommerce Memberships and similar membership / subscription plugins supported as part of the broader subscription integration. Membership states (active, expired, paused) sync to Odoo customer status.
-
Can we migrate from Shopify to WooCommerce + Odoo?
Yes — Shopify exports + WooCommerce import + integration setup. Typical migration 6–10 weeks all-in. Often done to reduce Shopify subscription cost (especially Shopify Plus at USD 2,000+/month) while keeping the Odoo ERP backbone.
-
What's the first step?
30-minute scoping call. Bring: WooCommerce plan / WordPress hosting (shared / VPS / dedicated / WP Engine), monthly order volume, plugins in use (Subscriptions, WPML, B2B etc.), current Odoo state. We'll outline the right next step.
-
How do you connect WooCommerce to Odoo?
You connect them through the WooCommerce REST API, not a WP-Cron plugin. We create REST API access with a consumer key and secret, then set up webhooks for orders, customers and refunds. Next we configure Odoo's WooCommerce connector with your product, tax and payment mappings. Every flow is tested in a sandbox before go-live, and we monitor the first 48 hours.
-
Is WooCommerce Odoo sync one-way or two-way, and how often does it run?
Sync runs both ways, in real time. Odoo pushes products and stock levels to WooCommerce. WooCommerce sends orders, customers and refunds to Odoo. WooCommerce webhooks trigger each Odoo update immediately, so nothing waits for a scheduled job. That also removes the WP-Cron problem, where sync stops silently whenever the WordPress site gets no traffic.
-
What data syncs between WooCommerce and Odoo?
Product titles, descriptions, prices, images, variants and attributes sync from Odoo, along with stock by warehouse location. Orders and customer records come into Odoo. Refunds create Odoo credit notes, and returns go back into stock. Active WooCommerce Subscriptions sync to Odoo Subscriptions. Payouts from Stripe, PayPal and other gateways reconcile to your Odoo bank accounts through Odoo accounting.