Customer Story · Retail
One source for inventory, invoicing, partners, and visitors
How a well-known name in the IT hardware world brought its inventory, invoicing, and website together in Odoo, with a private partner portal and public product information from the same source.
Most brands run their inventory, invoicing, and website in three systems that keep each other in sync through integrations. Every integration is a place where things can go wrong. It can also run in one.
Our client is a well-known name in the IT hardware world, with two very different audiences: professional partners who order through a private portal, and individual visitors looking for product information on the public website.
The facts at a glance
The starting point
Product information sat in a separate system, the webshop in a third, and inventory in the ERP. The same truth three times, maintenance three times, and three times the chance that a spec on the site didn't match what was in the box.
The same problem applied for partners, but with price agreements and availability that had to be recorded slightly differently than for the public. Two audiences, and in practice twice the maintenance for what was at its core the same information.
What was built
We handled the migration to Odoo, with the full inventory, invoicing, and website in the same environment. Product information is recorded once, managed centrally the way a PIM system would, and publishes from that one source to two places.
A private partner portal shows its own price agreements and availability, while the public website shows the same product data to regular visitors, each with the access rights and display that fit.
One source, two faces
A spec, a product photo, or a price change gets updated once and is immediately visible in both places. That doesn't just save double work, it also prevents exactly the kind of mismatch between what's online and what's in the warehouse that this project started with.
Inventory levels that flow through in real time to both the partner portal and the public website also make sure that nobody, internal or external, makes a promise the warehouse can't keep.
Why it stayed on time and on budget
The project was delivered within the agreed timeline and the agreed budget. In ERP-land that's not a given, and it's also not primarily a technical achievement.
An ERP transformation is rarely an IT project. It requires close collaboration between the business, the process owners, and the implementation team, people who know how the work really flows and are willing to look at it critically. The commitment of the team on the client's side contributed significantly to the result. An implementation partner can carry a project like this, but not carry it alone.
This also included ongoing attention to user adoption, not as a closing training session but throughout the whole project. A system that's technically sound but that nobody uses consistently hasn't delivered anything, no matter how neatly it was delivered.
What it delivered
Inventory, invoicing, and website now speak the same language. Partners see real-time availability through their own portal, visitors find current product information on the public site, and behind both screens sits one and the same truth.
On top of that, there's simply less maintenance. A spec only needs to be updated in one place now, instead of three times with the risk that versions drift apart.
The most important part is perhaps what no longer happens: no more mismatch between what's on the website and what's in the warehouse, and no more separate maintenance for two audiences that fundamentally need the same product information.
Does this starting point sound familiar?
Do your inventory, invoicing, and website still run in separate systems, with a partner portal and public information you have to maintain twice? We see that pattern often, and it can be brought together into one source with the right setup.
We're happy to think along with you about what a similar approach would mean for your organization.
Schedule a strategy session →