WooCommerce Connector
Run your storefront on WooCommerce and your business on Odoo. Customers, products, variants, orders, stock, refunds and coupons stay in step — on a schedule, or the instant they change.
See it working
Real screens from a running Odoo, not mock-ups.
How it works
Nothing is imported straight into your database. Every record travels through a queue, so you always know what came in, what is waiting, and exactly why something did not go through.
What moves, and which way
| Data | Direction | What you get |
|---|---|---|
| Customers | Woo → Odoo | Contact with billing details, plus a delivery address when shipping differs. Matched on email so guest and registered checkouts do not duplicate. |
| Categories & tags | Woo → Odoo | Product categories with their parent hierarchy preserved, and product tags. |
| Attributes | Woo → Odoo | Attributes and their values. Only attributes flagged for variation create Odoo variants, so the matrix stays sane. |
| Products | Woo → Odoo | Simple and variable products. Each WooCommerce variation is matched to the right Odoo variant by its attribute values and given its own SKU and price. |
| Orders | Woo → Odoo | Sale order with product lines, shipping, fees, per-line discounts and taxes. The customer note and payment gateway come across too. |
| Refunds | Woo → Odoo | Store refunds mirrored as credit notes against the original invoice. |
| Coupons | Woo → Odoo | Discount type, amount, usage limits and expiry, for reporting and reconciliation. |
| Stock | Odoo → Woo | On-hand quantities pushed back, summed across whichever warehouses you nominate. |
| Prices | Odoo → Woo | Odoo sales price written to the WooCommerce product. |
| Fulfilment | Odoo → Woo | Validate the delivery and the order flips to completed in the store. Carrier tracking can be posted as a customer-visible order note. |
Orders that process themselves
A workflow matches a WooCommerce status — optionally narrowed to one payment gateway — and decides how far the order should travel on arrival.
The five switches
- Confirm order — quotation becomes a sale order
- Validate delivery — picking is completed
- Create invoice — customer invoice drafted
- Validate invoice — invoice posted
- Register payment — paid through the journal you pick
Later switches only appear once the one before them is on, so an impossible combination cannot be saved.
Ready on day one
A sensible set is created for you at first connection:
| Pending | Left as a quotation |
| On hold | Confirmed only |
| Processing | Confirmed, invoiced and posted |
| Completed | Everything, including delivery and payment |
If a step cannot run — nothing to invoice, stock unavailable — the reason is posted on the order's chatter and the import carries on.
Everything in the box
📶 Real‑time webhooks
- Order, product and customer topics, registered in the store in one click
- Every delivery verified against its HMAC‑SHA256 signature before it is trusted
- Payloads run through the same importer as a scheduled sync — one code path, one behaviour
- Pause and resume without deleting anything
📈 Dashboard
- Sales graph per store over the last 30 days
- Live counters for orders, products, customers and pending queues
- Every counter is a link straight to the underlying records
- A guided panel walks a new store through its first setup
🔍 Traceability
- A log book per operation, with drill‑down issues by severity
- The raw WooCommerce payload kept on every queue line
- An external‑ID table you can search either way
- Old successful logs cleaned up automatically
🏦 Multi‑store, multi‑company
- Any number of stores, each with its own company and warehouse
- Per‑store pricelist, payment terms, sales team and fiscal position
- Record rules keep one company's data out of another's
- Separate stock‑export warehouses per store
💰 Taxes your way
- Use the taxes already set on your Odoo products, or
- Mirror the rates that arrive on the order, matching or creating them as needed
- Tax‑inclusive pricing supported
- Analytic distribution applied to every imported order line
🔒 Safe by default
- API keys readable only by system administrators
- User and Administrator access levels
- Transient network failures retried with a backoff before giving up
- Scheduled actions ship switched off — nothing runs until you say so
Live in four steps
Connect
Generate a REST API key pair in WooCommerce, paste it with your store URL, and press Test Connection.
Automate
Review the order workflows and point payments at the right journal.
Import
Categories and attributes first, then products, customers and orders — all from one wizard.
Stay in sync
Switch on the schedules, or add webhooks for instant updates.
Requirements
| Odoo | 18.0 — Community or Enterprise |
| WooCommerce | 3.5 or newer, REST API v3 (v2 also supported) |
| Python package | woocommerce — install with pip install woocommerce |
| Odoo apps | Sales, Inventory, Invoicing, Delivery |
| For webhooks | A public HTTPS address — WooCommerce will not deliver over plain HTTP |
Asksol
Odoo implementation, customisation and support.
www.asksol.pk
Support: support@asksol.pk • Licensed OPL‑1
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Discuss (mail)
• Inventory (stock) • Invoicing (account) • Sales (sale_management) |
| Lines of code | 5001 |
| Technical Name |
ask_woocommerce_connector |
| License | OPL-1 |
| Website | https://www.asksol.pk |
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module