Name your terms.
Post what you sell or what you want, priced against the market. Or search the agora for someone who already has it.
List what you sell, find who’s buying, and let a smart contract hold both sides until the trade is done. Any major coin, or pay in cash, by Revolut or by a local bank transfer. No exchange, no custodian, no middleman.
Sellers set a price against the market and name what they accept: coins, a local bank transfer, Revolut or cash in person. Buyers post what they want and what they pay with. You choose the counterparty; a contract holds the coins.
Every trader carries a public record: deals settled, minutes to lock, how often they let a window lapse, and what counterparties wrote afterwards. A reputation is earned one settled deal at a time.
Post what you sell or what you want, priced against the market. Or search the agora for someone who already has it.
Choose an offer and a size inside its limits. The counterparty accepts or lets it pass. Once accepted, the amounts are fixed.
Same chain: both coins go into one escrow contract. Across chains: each side locks a vault that opens with one shared secret.
The contract releases both legs together. If anyone fails to show, the timelock sends every coin back where it came from.
Both sides rate the trade. Every review is tied to a real deal, so a reputation can’t be bought, only earned.
When both coins live on one chain, a single escrow contract swaps them in one transaction. When they live on different chains, two vaults share one secret, and revealing it to claim one side is what unlocks the other.
ETH for USDC on Ethereum. BNB for USDT on BNB Chain. TRX for USDT on Tron.
BTC for USDT on Tron. USDT on BNB Chain for ETH on Base.
USDT for pounds by Faster Payments. BTC for dirhams in cash. USDC for euros on Revolut.
No contract can see a bank account, so this route needs an arbiter. The arbiter never holds the coins and can’t send them anywhere else. Bank transfers match only within one country; cash meets in the seller’s city.
Crypto was invented so two strangers could trade without asking anyone’s permission. Then the middlemen came back: exchanges that hold your coins, desks that hold your coins, escrow agents who hold your coins. U-Swap holds nothing. You find your counterparty, you both lock into code, and the code releases both sides at once or sends everything home. Swap with people, not middlemen.
Bitcoin, Ethereum, BNB Chain, Base and Tron. Any two can meet in the market. Same-chain pairs settle through the escrow contract; cross-chain pairs settle through hash-locked vaults.
Every review is tied to a deal. Open one and you see exactly what happened, lock by lock.
Six small contracts on one shared core do all the holding. No owner key can take a deposit, and nothing can be frozen against you. Open any of them to see exactly what it can do.
open(taker, tokenA, amountA, tokenB, amountB, expiry)Maker locks side A for a named taker, or for anyonefill(id)Taker pays side B; both legs settle at oncecancel(id)Maker takes side A back any time before the fillrefund(id)After expiry, anyone can send side A home to the makerlock(receiver, token, amount, hashlock, timelock)Lock funds that open only with the secretclaim(id, secret)Pays the receiver if sha256(secret) matches, and publishes the secretrefund(id)After the timelock, returns the funds to the senderopen(buyer, token, amount, payWindow)Seller locks the coins for one buyer, 15 minutes to 24 hours to paymarkPaid(id)Buyer records the payment before the window closesrelease(id)Seller confirms the money arrived; the buyer gets the coinscancel(id)Buyer may always back out; seller only if no payment was marked in timedispute(id) · resolve(id, toBuyer)The deal’s arbiter picks buyer or seller, nothing elsedonate(id, amount)Give until the target is met; never more than the targetapproveMilestone(id, index)Organiser and an independent verifier must both approve each payoutrefund(id)Missed target: every donor takes back their full gifthalt(id)The verifier can stop a cause; donors share whatever is unpaidsetTrader(bot) · revokeTrader()The handshake: appoint the bot, or remove it at any momentcheckIn()The weekly A/B check from the owner’s wallet; trading stops after 7 days without onetrade(tokenIn, tokenOut, fee, amountIn, minOut)Bot only: Monday to Friday, inside the stops, above the floorsweep() · withdraw(token, amount, to)Payouts above the payout level to the owner and a pledged cause; the owner withdraws any timedeposit(amount) · refund()One share per unit, never past the target; full refunds if the raise missessettle()Anyone, weekly: the cause’s share of new profit, then a 24-hour withdrawal windowwithdraw(shares)Your share of every asset, in kind, with no prices involvedhalt()Stops trading for good; withdrawals stay openOP_IF OP_SIZE 32 OP_EQUALVERIFY OP_SHA256 <hashlock> OP_EQUALVERIFY <receiver pubkey> # claim path: the counterparty, with the secret OP_ELSE <locktime> OP_CHECKLOCKTIMEVERIFY OP_DROP <sender pubkey> # refund path: you, after the timelock OP_ENDIF OP_CHECKSIG
The wallet funds it, the counterparty claims it with the secret they learned from the other chain, or the sender takes it back once the locktime passes.
Propose a humanitarian project with a target of $1M, $2.5M, $5M, $7.5M or $10M. Donations wait in a contract and reach the organisation one verified milestone at a time. Or pool capital for it: at the target, the bot trades the pool and 25% of any profit goes to the cause every week.
The short answers. The contracts section and the legal pages have the long ones.
No. Coins wait in a smart contract: one escrow when both coins share a chain, or a hash time-locked vault on each chain for a cross-chain swap. U-Swap has no key that can move them.
Every lock has an expiry. If your counterparty never completes, the contract sends your coins back to you after the timelock: 24 hours for the side that locks first, 12 for the other.
The seller’s coins wait in an escrow while the buyer pays by a same-country bank transfer, Revolut or cash in person. The seller releases when the money arrives. If they disagree, an arbiter can only send the coins to the buyer or back to the seller.
0.20% of the coin the buyer receives, fixed when the deal opens and capped at 1% in code. Bitcoin legs and money legs carry no fee. Network fees are separate.
BTC, ETH, BNB, TRX, USDT and USDC, on Bitcoin, Ethereum, BNB Chain, Base and Tron. Any two can meet in the market.
Not yet. This is a preview: the traders, deals and reviews are sample data and nothing is signed. The contracts are written and tested, but not yet deployed or audited.
For clients with $1M to $100M: your own vault contract, traded by the desk’s bot under rules in the code. It trades Monday to Friday and stops for the day at +1.35% or at the loss stop. The bot can’t withdraw, and results can be zero or negative.
Participants pool stablecoins. At the target the bot trades the pool, and every week 25% of any profit goes to the cause. It’s capital at risk, and the cause receives nothing from the pool if there’s no profit.
Anyone whose local laws allow them to use a decentralised service run by smart contracts. Residents of restricted countries can’t open a desk account or join a pool.
Not for the market: connect a wallet or choose a display name. The private desk needs an account and identity checks.