Skip to content

Odoo E-commerce Connector

The shared engine under the WooCommerce, Magento 2, PrestaShop and Shopify connectors.

The short answer

Odoo E-commerce Connector is the framework the WebBox store connectors share, so Shopify, WooCommerce, Magento 2 and PrestaShop map to the same Odoo models the same way. It models the shop record, the job queue, the mapping tables that join two catalogues, and the payloads that arrived. It suits an Odoo team running one or more storefronts that wants failures named rather than counted. Install a channel connector on top of it.

Request this module

Last updated

What it is for

A connector that reports a count of failures has told you nothing you can act on. Somebody opens the queue, reads a traceback, guesses whether the fix is a mapping, an export or a deletion in the shop, and retries. When the retry fails the same way, the guess repeats, and meanwhile orders are not arriving. The catalogue goes wrong more quietly. Products arrive from the shop with no Odoo counterpart, and unless something holds them somewhere visible they are simply absent: no error, no queue, just stock that never syncs and orders that fail later for reasons that look unrelated.

Platform
Odoo
Category
Connectors
Works with
Odoo 18 · Odoo 19
Technical name
integration
Status
Direct from webbox
Pricing
Paid

What is inside it

  1. 01

    Named failure causes

    Every failed job carries one of a closed set of causes rather than free text: a record Odoo has never seen, a record the shop does not know, or one deleted in the shop. Each implies a different fix.

  2. 02

    The unmatched queue

    Every external product gets a mapping row whether or not it has an Odoo counterpart, and the ones without are counted on their own tile. Categories and attributes map the same way, both trees side by side.

  3. 03

    The board

    A Sync-Health screen of six live tiles and four charts, grouping failures by cause so several failures across two connectors read as separate jobs of work rather than one number to retry.

What it looks like in practice

  1. A sync fails and the queue names which fix it needs

    The demo estate has run 16 jobs across 5 states and 3 of them failed. A count of failures on its own decides nothing.

    Each failure carries one of three named causes, so the Failed jobs by error type chart splits them into an import to run, an export to run, and a record to stop chasing.

    Jobs
    16 across 5 states
    Finished
    11 done, 3 failed
    Failure causes
    3, one of each

    Figures from the module's own demo data, on a fresh install. Install with demo data and open the Sync-Health board, then the Failed jobs by error type chart.

    Named failure causesThe board

  2. Two products the shop sent have no Odoo counterpart

    Nine external products carry a mapping row. Two of them point at nothing in the Odoo catalogue.

    The unmatched pair is counted on its own tile and stays on the mapping screen until somebody decides which Odoo product each SKU means. Nothing is written to your catalogue on a guess.

    Product mappings
    9, two unmatched
    Category tree
    5 nodes, both sides
    Orders imported
    15 files

    Figures from the module's own demo data, on a fresh install. Install with demo data and open the product mapping screen, then filter for rows with no Odoo product.

    The unmatched queueThe board

What it deliberately does not do

It is the framework, not the shop connector
On its own it models connectors, jobs and mappings. Talking to a particular storefront is the vendor module's job, and that installs on top of this one.
No hosting and no shop credentials
You bring the shop and its API keys. Nothing here signs you up to anything or proxies your credentials through a third party.
Queue jobs need a worker
The queue is real, which means something has to run it. On a single-process Odoo the jobs sit pending until a worker is configured.
Mapping is assisted, not automatic
Records that match by reference are matched. The rest are put in front of you, because guessing which Odoo product a shop SKU means is how catalogues get silently corrupted.

Questions

Can I install this on Odoo Online?
No. Odoo Online cannot install modules that contain Python, so this runs on Odoo.sh or a self-hosted instance. Check the versions listed above for the series and edition it is verified against.
Will this connect my WooCommerce store on its own?
No. On its own it models connectors, jobs and mappings; talking to a particular storefront is the vendor module's job. Install the WooCommerce, Magento 2, PrestaShop or Shopify connector on top of this one, and that module supplies the API dialect for its shop.
Why are my jobs stuck at pending?
The queue is real, so something has to run it. On a single-process Odoo every job sits pending until a queue_job channel and a worker process are configured, which looks exactly like a failure and is not one. Configure the worker before judging the first sync.
Does it match my catalogue to the shop's automatically?
Partly. Records that match by reference are matched for you. The rest are put in front of you on the mapping screens and stay there, because guessing which Odoo product a shop SKU means is how a catalogue gets silently corrupted. Assisted, not automatic.

Have something to build?

Tell us the problem. We'll come back with a plan, a price, and who'd actually build it.

  • Free scoping call
  • Reply within 1 business day
  • No lock-in