Marketplaces & Two-Sided Platforms// topic
Marketplace architecture and the transaction data model
In short
The schema and state machines underneath every marketplace — listings, availability, holds, orders and the transitions between them — and the modelling decisions that are expensive to reverse once real supply is on the platform.
7 pages
definitions
- Availability: a set of intervals, not a grid of day cellsAvailability is not a stored fact. It is the answer to a question, computed from recurring rules, exceptions and what has already been consumed — and a day-cell table is a cache of that answer.definition7 min
- Inventory hold: the row that exists so the second buyer is refusedA hold is a record, not a screen state. It names one unit of supply, one claimant, one expiry and one reason — and while it lives, nothing else may overlap that unit.definition6 min
- Listing snapshot: the version of the offer the buyer agreed toAn order that reads its terms from a live listing is an order whose terms change when the seller edits. The snapshot is the copy that makes it defensible.definition9 min
- Order states versus order flags: the distinction that keeps a transaction consistentOne question admits a value to the state machine: does it change which transitions are legal from here? Everything that fails that test is a flag on the record.definition8 min
- The unit of supply: the thing your marketplace is actually allocatingNot what you list, and not what you invoice: the unit of supply is the smallest thing two buyers can want at once when only one of them can have it.definition8 min
diagnostics
- Available in search, gone at checkout: locating the stale layerRe-ask the source of truth at the moment of failure. If it agrees with the index, your two paths apply different rules; if it disagrees, something is holding a stale copy.diagnostic10 min
- Orders that sit in pending forever: tracing the transition that never firedPending is not one problem. It is orders waiting on an event that never arrived, orders waiting on a human nobody notified, and orders in a state with no way out — and one query separates them.diagnostic10 min
Other topics in Marketplaces & Two-Sided Platforms
See allMatching, ranking and dispatchHow supply actually meets demand — matching and dispatch algorithms, the ranking signals behind result order, fairness in how leads are distributed, and what changes when the binding constraint is time, distance or a thin seller pool.6 pagesSplit payments, payouts and the money ledgerMoney movement in a multi-party transaction — split charges and commission, delayed release, refunds and partial refunds, wallets and credits, and the double-entry ledger that has to reconcile with the processor every single day.1 pageBuild versus buy, platform choice and scopingThe decision made before any code — what Sharetribe, Marketplacer, Mirakl or a multi-vendor Shopify app really give you and exactly where they stop, what genuinely drives marketplace scope, and how to brief the work so it can be estimated at all.1 page
Working on something in this space?
Tell us where you are in a sentence or two. We'll tell you honestly whether we're the right team, and what a sensible first slice of the work looks like.
Start the conversation