Shop & Cargo Well
Cargo Well is the only buyer shop surface. Buyers discover by catalog item, not by browsing storefronts. Sellers still register an SSU and post asks; those asks appear on the type-level book.
Pelusium runs a dual order book on top of collateralized haul settlement:
- Goods book — store and partner asks (pickup SSU) and standing bids (dropoff SSU, max goods price, freight bid).
- Freight book — Open haul jobs (locked courier pay) plus optional courier asks (I’ll fly for ≥ F).
When a bid and ask cross on goods, Prefill haul opens Create shipping job with pickup, dropoff, cargo, goods, and freight. You still sign create_haul_job. The Open job then sits until a courier accepts. If nobody flies, open My orders → Raise freight → Cancel & recreate (one sign refunds both escrows, then the create form opens with a higher courier bid).
The notification bell points the same way: a goods cross links to My orders (Prefill); a courier ask that meets an Open haul links to Shipping (Accept).
Forms autofill from the live book, recent haul prints, and the freight index when we have data. Every suggestion is editable.
Two ways to sell in the Well
| Path | Who | What you do | Where buyers see you |
|---|---|---|---|
| Pelusium store | Sellers using the Pelusium app | Register your store, authorize the SSU, view stacks, post asks | Cargo Well rows tagged as a store |
| Partner listing | External apps (e.g. Trinary) | Your app calls the Pelusium partner listing API with a wallet proof; cargo stays in your SSU | Cargo Well rows tagged as partner |
Both paths show asks on the Cargo Well board. Neither path moves cargo by itself. There is no public store directory — /shop redirects to Cargo Well. Your store URL is a seller console (inventory + post ask), not a shopper catalog.
Partner listings are advertising only. The seller still authorizes Pelusium on the pickup SSU and must approve pickup when a buyer creates a haul. See Shipping & freight jobs.
Partner asks (external apps)
A partner can publish an ask without registering a Pelusium store. The partner app sends listing metadata (pickup SSU, commodity, quantity, total price in SUI, seller wallet) plus a signed wallet proof. Pelusium shows the row on Cargo Well with an origin label so players know it came from that app.
When a buyer clicks Buy & deliver on a partner row:
- Pelusium prefills Create shipping job with pickup, cargo, goods payment, and seller wallet.
- The buyer picks a drop-off SSU and signs create as shipper.
- The haul then follows the same accept → approve pickup → pickup → deliver flow as any other job.
If the partner provides an external link, the Well may show a shortcut back to their app for context—the on-chain job still lives in Pelusium.
Listings and standing bids
- Sell listings / asks — “I have N of this commodity at this total price in SUI” tied to a store or partner source (pickup SSU).
- Buy orders — “I want N units to this dropoff SSU; I will pay up to X SUI per unit and this freight to a courier.”
Bids without a dest SSU are not matchable. Crossing rows on Cargo Well become Prefill haul. Seller listings stay advertising until that haul exists (the game does not lock in-SSU stacks yet).
My orders shows resting bids (waiting on goods vs waiting on a freighter). Bump raises a resting goods/freight bid; Cancel & recreate raises freight on an Open haul. Buying is Cargo Well bids, not store-page OTC.
Cargo Well (market board)
Cargo Well answers: “For this commodity, what are people quoting right now?”
You pick a commodity type (the same categories you use when creating a job). The board can show:
- Sell side — Store and partner asks, implied price per unit, and size.
- Buy side — Standing willingness to buy.
- Charts — Depth and how the book formed over time from current orders.
Buy & deliver (partner asks) or Freight (native stores) opens Create shipping job with fields prefilled so you do not re-type pickup and cargo. Prefill haul on a crossing also fills dropoff SSU and the buyer’s freight bid.
Trending (when you have not picked a commodity yet) suggests types with current listing or bid activity.
If a bid and ask could overlap (same type, bid ≥ ask, dest SSU on the bid), the Well shows a crossing with Prefill haul. You still sign the job. Open hauls are the freight book until a courier accepts.
The Well also shows a freight index (recent haul escrow averages) next to the goods tape so you can see whether the goods cap or the courier bid is the underpriced leg.
Buying a larger quantity (planner)
On Create shipping job, after you choose the commodity, Buy from Cargo Well can suggest how to split your purchase across several listings (best total price vs fewest chunks). Apply fills the form with one slice; you can repeat or adjust. Nothing is reserved or delivered until you submit the on-chain job and the courier run completes.
Listings vs what is in your SSU
The app tries to keep listings honest when inventory changes, but sync is best-effort. Treat listings as advertising until a job exists; if something matters, confirm in-game or with the seller directly.
For app builders
External marketplaces integrate via the Builder API (partner listings, async haul intents, job board reads, pending goods crosses, courier freight asks). Player-facing behavior above still applies: partner API rows are asks; haul SSU steps are unchanged. The matcher records pending crosses; settlement is still create_haul_job.