Partner Commerce Hub: selling partner-owned stock as your own catalogue
A pattern for B2B sellers who want to list products they do not stock, from outside suppliers, without the buyer noticing any difference — same storefront, same checkout, same account manager, no supplier named. Illustrated here with a representative automotive-parts scenario rather than one named client.

The Challenge
This is a pattern we design against repeatedly, shown here on a representative scenario rather than a single client's numbers: a B2B seller wants to offer products from outside suppliers through its own storefront, with nothing changing for the buyer — same catalogue, same prices logic, same salesperson — and without disclosing who the supplier is or bringing the range onto its own shelves first.
It is a classic automotive-aftermarket problem: one buyer, many dissimilar suppliers. Dissimilar in every respect — price-list format, communication channel, response speed, discipline around deadlines. The hard part is not connecting any one of them; it is folding all of them into a single process.
Stock and money already live in a separate accounting or ERP system. A storefront that cannot read from it produces a second version of the truth within days.
Not every supplier has an API. Some send a price file, some take orders by email, some only answer a person in a messenger. A design that only handles the easy suppliers, or that requires an API from everyone, leaves most of the catalogue slow and manual.
The Solution
One canonical operation, many adapters
Internally, every supplier is the same: the same six-step exchange — check availability, get a price, place the order, get confirmation, get the dispatch, get the invoice. What differs is only how a given supplier executes each step: an API call, a click in a portal, a message read by a person. Onboarding a new supplier becomes a configuration change, not a new business process.
The manual channel is a first-class adapter, not an exception
A supplier reached by email or messenger gets the same deadline, the same rating, and the same audit trail as one with a full API — a person just executes the step instead of a machine. This is deliberate: most real suppliers in this space do not have an API, and a design that treats them as a special case ends up running most of the catalogue off the books.
Choosing a supplier is not choosing the cheapest one
When several suppliers can fill the same line, the system weighs price against delivery cost and time, confidence in the stated stock, the supplier's track record, and the expected cost of a return — because a supplier who is 2% cheaper but confirms only 85% of the time costs more once the re-orders, delayed customers, and manual rework are counted in.
The buyer sees a promise, not a guess
A confirmed stock level, a cache from the last price file, and a line that still needs a supplier's confirmation are three different situations, and a storefront that shows all three as plain "in stock" ends up promising things nobody agreed to. Each offer carries a confidence level, and the storefront copy — "ships today" versus "confirming, reply within a few hours" — is chosen from it rather than guessed.
The manager works the exceptions, not the order queue
If most orders complete on their own, a manager should not have to scan all of them to find the few that need attention. The queue surfaces only what fell outside the normal path — no reply, a changed price, a missed deadline — each with a deadline of its own and one-click actions: reassign to a backup supplier, accept a new price, ask the buyer, escalate.
An AI agent for the channel that stays manual
Between "we message a supplier on WhatsApp" and "the supplier has an API" sits a gap that no longer has to be closed by a person full-time: an agent sends the templated request, reads the free-text or voice reply, extracts quantity, price and lead time, asks a follow-up if something is missing, and escalates low-confidence or high-value cases to a human. The original message is always kept next to the structured result it produced.