Skip to Content

Case study: E-Commerce

From overselling to zero stock conflicts

A US e-commerce operator ran several WooCommerce storefronts against one shared Odoo inventory spread over multiple companies. The stock boundaries were not enforced, so the storefronts kept selling what was already committed elsewhere.

Industry

E-Commerce and retail

Region

United States

Odoo

Version 15 to 17

Scope

Multi-company, integrations, migration

The challenge

What was not working.

Several storefronts sold against a single centralised inventory that no longer reflected reality. Customers were oversold, stock ran short, and fulfilment broke down after the order had already been taken. A duplicate-charge defect in the card gateway was billing some customers twice, and the tax, shipping and storefront integrations were each failing in different ways after falling behind on version.

What we built

The work, in detail.

Rebuilt the multi-company model

We restructured the company and warehouse setup with explicit centralised inventory rules, so every storefront reads and commits against one authoritative stock position instead of a stale local copy.

Dropshipping in the same model

Supplier-fulfilled lines were wired into the same inventory logic, so they no longer contend with warehouse stock.

Live storefront synchronisation

Real-time stock synchronisation between Odoo and every WooCommerce storefront, so the shop front and the ledger agree.

Shipping and tax automation

ShipStation for shipping and label automation, closing the loop from order to dispatch with no re-keying, and the tax integration repaired for accurate multi-jurisdiction reporting.

Payments, including backend card charging

Card and wallet payments wired in, with staff able to charge a card against an order directly from Odoo without leaving the ERP.

Fixed the duplicate-charge defect

We traced and closed the gateway defect that was double-charging customers, removing an ongoing revenue and chargeback risk.

Carried it two versions forward

A full Odoo 15 to 17 migration, with every custom module refactored for compatibility.

The result

What changed.

Stock conflicts across companies eliminated

Order fulfilment automated from checkout through dispatch

Full financial visibility across all companies in one set of books

A live double-charging defect closed

Stack

What it runs on.

  • Odoo 15 to 17
  • Multi-company
  • WooCommerce
  • ShipStation
  • Tax automation
  • Card gateway
  • Dropshipping

Questions

About work like this.

Can Odoo run several online stores on one inventory?

Yes, and it is the right design when the stores share stock. The work is in the multi-company and warehouse rules that decide what each store may commit, which is exactly where an unconfigured setup starts overselling.

Does a multi-company setup slow down stock updates?

It should not. Stock synchronisation runs against one authoritative position, so each storefront reads the same figure at the same time rather than reconciling copies afterwards.

Can staff take a card payment from inside Odoo?

Yes. We wire the gateway so an agent can charge a saved or entered card against an order in the backend, which matters for phone and repeat orders.