⇄
HandshakeOTC ESCROW
ON CHAIN 1404
not connected
BETA Experimental software on an early-stage chain. Source is published but not independently audited — start with small amounts. Read more
PEER-TO-PEER · ESCROW HELD BY CODE

Trade hand to hand,
not order to order.

Lock BDAG or a token in escrow, name your price, and let anyone — or one specific address — fill it. Funds move atomically or not at all. Cancel anytime before it's taken.

LOCK→LIST→FILL→SETTLE→ LOCK→LIST→FILL→SETTLE→
DEAL TICKETHELD BY CONTRACT
1,000BDAG · GIVE
⇄
250TOKEN · GET
OPEN

What Handshake does

Handshake is a peer-to-peer escrow contract on chain 1404. While an offer is open, the maker's asset is held by the contract itself (not by us or any other person) and goes straight back to them if they cancel. Anyone can lock up BDAG or any ERC-20 token and post it as an open offer; a counterparty fills it and both assets change hands in one atomic transaction — either the full trade settles, or nothing moves at all. There's no pooled liquidity, no order book matching engine, and no intermediary ever holding funds — the contract itself is the only escrow.

TWO-WAY OFFERS
Give BDAG for a token, or give a token for BDAG — either direction, same contract.
PRIVATE OR OPEN
Restrict a deal to one specific wallet, or leave it open for anyone to fill.
CANCEL ANYTIME
Makers can pull an open offer back before it's filled — no lockup beyond that.
LIVE MARKET DATA
Real-time BDAG/USD price, total offers, protocol fee, and your wallet/network status at a glance.
ON-CHAIN HISTORY
Recent fills are read straight from contract events — nothing cached, nothing off-chain.
ANY ERC-20 PAIR
Not limited to one token — trade BDAG against any ERC-20 contract on chain 1404. Nothing is vetted, so verify a token yourself before trusting it.
bdag / usd
—
total offers
—
protocol fee
—
wallet
not connected
network
—

Recent fills

New offer

The token's contract address on chain 1404 — not your wallet address, and not the token's ticker or name. Find it on the token's official website, its CoinGecko/CoinMarketCap page (look for "Contract"), or a chain 1404 block explorer. Double-check it's the contract on this chain — the same token on a different chain will have a different address and won't work here.

Offers

Security & trust

The contract has no function that withdraws, rescues or redirects an open offer's assets. Once you lock BDAG or a token in an offer, only two things can happen to it: it goes to the taker when they fill your offer, or it comes back to you when you cancel. Nobody else, including the contract owner, can move it.
Only these settings: the fee (hard-capped in the contract at 3%), where fees are paid, per-offer beta limits, and pausing new offers. Each offer records the fee at the moment it's created, so a later fee change never affects an open offer. Pausing can't trap anyone: filling and cancelling existing offers always keep working.
A 2-of-2 multisig wallet (0x4E24…60fc) controlled by two separate hardware wallets. Every owner action needs both to sign, so no single key can change anything.
The contract (0xD907…f5CA) is verified on explorer.bdagexplorer.com, so the published source is proven to match the deployed code. Read the source on GitHub. It's also self-contained, with no external libraries or upgrade mechanism, so the code can't be swapped out later.
Both sides of a trade settle in the same transaction or not at all. There is no delivery step to dispute and no arbiter who could decide in someone's favour.
Please report it privately to security@handshakeotc.fyi rather than posting it publicly, so it can be fixed (or new offers paused) before anyone exploits it.

FAQ

No — escrow doesn't require a matching currency on both sides. Every offer here already pairs two different assets: BDAG on one side and any ERC-20 token on the other. Just like modern cross-border escrow isn't limited to a single currency, this contract locks one asset and releases it only when the counter-asset is delivered — atomically, in the same transaction — so mismatched pairs settle just as safely as identical ones.
Handshake doesn't vet, allowlist, or restrict which ERC-20 contracts it accepts — it locks and releases whatever token address you or a counterparty enters. That flexibility cuts both ways: a non-standard or deliberately malicious token contract could report a successful transfer without behaving the way a normal token would. The live check under the token address field confirms a contract exists and returns a symbol/decimals — it does not confirm the token is trustworthy. Only trade tokens you've independently verified yourself.
Nothing is sent to us: there are no accounts, no sign-ups and no server of ours behind this page. Your browser talks directly to public BlockDAG RPC endpoints (listed under RPC status below) to read the chain and send transactions you sign, loads its code library from cdnjs and fonts from Google Fonts, and asks CoinGecko for the BDAG price. Those services see a normal web request from your browser, as with any website. The only thing stored on your device is a note that you accepted the terms, kept in your browser's local storage.
No. The contract source is published and verifiable on-chain, which confirms the deployed bytecode matches published source — that is a transparency check, not a security audit. Handshake is experimental, beta software running on an early-stage chain. Treat every offer as something you could lose, and start with amounts you're fully comfortable putting at risk.

RPC status

Checked live, from your own browser, against each RPC below — not borrowed from a third-party leaderboard. Handshake automatically falls back to the next entry if one fails. This also cross-checks whether the responding RPCs agree on recent block hashes — chain 1404 has documented, actively-discussed disagreement between different node operators about which chain history is canonical. This check can only tell you whether these specific RPCs agree with each other, not which side (if any) is correct.