BazaarFi Documentation
BazaarFi is a trustless marketplace for trading any digital asset for any other digital asset on Solana. NFTs for NFTs, tokens for NFTs, bundles for bundles — every trade settles atomically through an on-chain escrow program. There are no middlemen, no custodians, and no way for either side to walk away with both bundles.
The core guarantee: a trade either settles completely — every asset on both sides moves in one transaction — or it fails completely and nothing moves. This is enforced by the Solana runtime, not by BazaarFi.
What you can trade
- SOL — native lamports, escrowed directly on the trade account.
- SPL tokens — including Token-2022 mints with safe extensions. Mints with transfer hooks, transfer fees, or permanent delegates are rejected by the program to protect both parties.
- NFTs — any mint with supply 1 and 0 decimals. Collection verification is surfaced throughout the app so you can spot lookalikes instantly.
Each side of a trade can hold up to 16 assets. Settlement must fit one atomic transaction, so the app keeps combined token bundles to 12 or fewer — larger maker bundles are still supported because deposits happen before the trade goes live.
The five-minute tour
- Explore open trades, filter by asset type, collection, or maker reputation.
- Create a trade by dragging assets from your portfolio into the offer, then searching for what you want in return.
- Review, sign, and your assets move into a program-owned vault. The trade is now live and discoverable.
- A taker accepts: one transaction swaps both bundles. Or you cancel at any time and everything returns to your wallet, including rent.
Read next
- How trades work — the full lifecycle from creation to settlement.
- Security model — what the program checks and why you can trust it.
- Fees & rent — exactly what a trade costs.
- Architecture — how the web app, indexer, and on-chain program fit together.
- On-chain program — instructions, accounts, and state machine.
- API reference — REST endpoints for trades, search, and activity.
- SDK — build and sign transactions from TypeScript.
- Development — monorepo workflows and testing.
- Deployment — devnet and mainnet operations.
- Full technical docs on GitHub — database schema, indexer, WebSocket events, and more.