Bitcoin · Marketplace · PSBT

Trio Marketplace

I worked with the OrdinalsBot team on Trio’s full-stack marketplace transaction flow, turning listings and purchases into wallet-signable PSBTs that settle on Bitcoin.

Full-stack marketplace engineer Trio marketplace architecture showing seller and buyer wallets connected through listing and purchase PSBTs to Bitcoin settlement
PSBTtransaction model
Bitcoinsettlement layer
Full-stackdelivery scope

Project file

PeriodMarketplace launch

Product
Trio, an order-book marketplace for trading Bitcoin inscriptions and Ordinals without handing assets to a custodial marketplace balance.
Delivery scope
Marketplace interface, API integration, wallet state, listing and purchase PSBTs, signing, broadcast, and transaction recovery.
Public evidence
4public sources

Project constraints

  1. 01The seller keeps control of the inscription until settlement
  2. 02Asset provenance and Bitcoin UTXOs must stay intact
  3. 03Two wallets can reject, change, or abandon the flow

Make a multi-party Bitcoin transaction understandable without hiding the UTXOs, signatures, and failure states that make it safe.

A marketplace card and a buy button are only the visible edge of a Bitcoin trade. Underneath, the seller has to approve exact terms without transferring the inscription to a custodian. The buyer then funds a compatible transaction, signs the inputs they control, and broadcasts a transaction that preserves the agreed asset and payout outputs. I worked across that full path, including the interface states needed when a wallet is disconnected, a signature is refused, a listing is stale, or a transaction has not confirmed yet.

01

Listing terms encoded in a PSBT

The listing path bound the inscription input, seller payout, price, and marketplace terms into a partially signed transaction. The seller could approve those terms with their wallet while retaining custody of the asset.

02

Purchase transaction assembly

The buy flow combined the seller-approved listing input with the buyer’s funding inputs and the required outputs. That construction had to preserve the inscription, price, fees, change, and Bitcoin’s input and output rules before asking the buyer to sign.

03

Wallet-aware product states

I connected transaction construction to the marketplace interface so users could distinguish connection, validation, signature, broadcast, mempool, confirmation, cancellation, and failure instead of seeing one optimistic loading state.

04

Reconciliation after broadcast

A signed transaction was not treated as a completed trade. Marketplace state had to follow the transaction through broadcast and confirmation, then expire or reconcile listings that could no longer settle as originally constructed.

  1. 01

    Worked full-stack with the OrdinalsBot team on the marketplace listing and purchase journey.

  2. 02

    Implemented PSBT transaction construction across seller listings, buyer funding, wallet signatures, and Bitcoin broadcast.

  3. 03

    Connected backend transaction rules to clear interface states for wallet rejection, stale listings, validation errors, mempool visibility, and confirmation.

  4. 04

    Kept self-custody and the exact transaction terms visible in the product instead of masking them behind a custodial balance.

A live Bitcoin marketplace where the seller’s terms, the buyer’s funds, signatures, broadcast, and confirmation remain visible parts of the transaction.

The public Trio marketplace now exposes a live trading product, while OrdinalsBot’s documentation describes the PSBT-based, order-book model and its marketplace APIs. Those sources establish the product and transaction model; my role was the full-stack PSBT work that connected wallet actions, marketplace state, and Bitcoin settlement into one usable flow.

  • Sellers could list an inscription by signing defined transaction terms without first depositing the asset into a marketplace account.
  • Buyers could complete the trade through a wallet-signed purchase PSBT assembled from the seller’s approved input and their own funds.
  • The interface carried transaction state through validation, signature, broadcast, and confirmation instead of reporting success too early.
Bitcoin PSBTUTXO selectionWallet integrationsTransaction constructionMarketplace APIsMempool and confirmation state
Next case studyPizza Pets