Swaps

Listing UI not built yet

Atomic NFT swaps on Radix: one NFT, fixed acceptance terms, settled in a single transaction.

What is built, and what is not

The component is live on Radix mainnet and both journeys have been run on it end to end — a real listing filled and its proceeds withdrawn, and a second listing cancelled. The transaction ids are below and in the registry.

The part you would use — a page that lists what is for sale, and the wallet flows to list, fill and cancel — is not built. There is nothing to browse here yet, and that is the honest state of it rather than an empty result set.

The work is posted on the Guild's own board and funded in escrow like any other task, so you can watch it land. Task 92 builds this page from real listings; task 93 adds the headless legs. Both sit under project P7.

Component
component_rdx1cq80zarwh84mmrkn95xc7glgg5yvz0vkvqs9amxsnpwxuhkldd5mp4
List, then fill, then withdraw proceeds
txid_rdx1hdkp85s…gjq6 → txid_rdx1qma458r…wuntq → txid_rdx1tudezul…vwwk9
List, then cancel
txid_rdx1rjrmzgv…lrfc → txid_rdx1nv7zpn6…74lzj

How a swap works

A listing escrows the NFT
The seller deposits one non-fungible into the component and states what they will accept: an amount of a fungible resource, a specific NFT, or any-of a list of alternatives. The asset sits in the component until someone fills the listing or the seller cancels it.
A fill settles atomically
Whoever supplies one of the stated alternatives receives the NFT in the same transaction that takes their payment. There is no partial fill and no change: the buyer supplies exactly one alternative, or the transaction reverts.
Proceeds are pulled, not pushed
A fill credits the payment to a per-listing vault. The seller withdraws it themselves against their listing receipt, so a buyer can never be blocked by a seller account that refuses third-party deposits.
Every listing expires
Expiry is mandatory. Thirty days is included when you list; extending beyond that is a separate paid call. An expired listing cannot be filled, and the seller cancels to take the asset back.
The fee is a flat XRD amount paid by the buyer
It is a component royalty on the fill call, set by a dial the Guild can change. It is set to 0 XRD today, so a fill costs the buyer the Radix network fee and nothing else.

What this is not

  • Creator royalties are not enforced. The component takes its own flat XRD fee on a fill and pays nothing to the collection's creator. If a collection expects a royalty, this venue does not collect it.
  • A listing is not an appraisal. The asking terms are whatever the seller typed. Nobody reviews them, and no price here is evidence of what anything is worth.
  • There is no dispute path, no insurance, no claim bond and no review window. A swap is one transaction, not a task: the protections that exist on the task board do not apply here and are not needed, because nothing is owed after the fill.
  • The Guild does not custody your NFT beyond the listing itself, and cannot move a listed asset. Cancel returns it to the seller; a fill sends it to the buyer. There is no third path.