Escrow for KAS deals without a money-holding middleman. The money sits in an on-chain Kaspa covenant — even our arbiter can only resolve a dispute toward the buyer, the seller, or the visible service fee. Any other payout simply isn't expressible in the covenant, so the network rejects it.
One side creates the deal: role, type (goods / OTC / service), amount, conditions. The other opens the invite link, sees exactly the same terms and joins. Each side's key is generated in their own browser and saved to your master key file (your Desk profile).
The buyer sends KAS to their own funding address and presses "Lock into escrow" — the browser assembles the on-chain contract. The browser also re-computes the escrow address itself and refuses to fund if the server's parameters differ. From that moment nobody holds the money: the covenant does.
Happy? The buyer releases — the seller is paid. Seller backs out? Refund. Something wrong? Open a dispute — an AI mediator reads the deal and your on-chain chat and proposes a fair outcome in minutes; if either side isn't satisfied, a human arbiter steps in. Everyone silent? Auto-release protects the seller. Arbiter never rules? The emergency timeout returns funds to the default side — the deal can't hang, even if we vanish. Funds stay locked in the covenant until the deal closes; only then does the winning side withdraw their payout to their own wallet.
Dispute window presets: 24–120 h in one-day steps, plus 7 days — the deal creator picks one (defaults follow the type: goods 72 h, OTC 24 h, service 120 h), and the joining party sees it before joining. While the window is open, the buyer can dispute; once it closes, funds flow to the seller on their own.
The covenant admits a fixed set of outcomes, and in every one the money goes to the buyer, the seller, or the visible service fee. There is no "send elsewhere" path in the script — a guarantor's honesty stops being a factor.
The deal chat is not a website chat. It is on-chain messaging on the Kaspa BlockDAG, built on the Kasia protocol: every message is an end-to-end encrypted transaction in the ledger; photos and videos travel encrypted, their fingerprints anchored on-chain. Nobody — including us — can forge, edit or backdate the thread. In a dispute, this chat is the case file.
First — settle amicably, one click either way. Then — an AI mediator reads the revealed chat and proposes an outcome within minutes. Its verdict is a non-binding recommendation: it only helps the sides agree fast. Nothing moves until a party accepts it with their signature; if no one does within 24 hours, a human arbiter rules. The AI never touches money, and the covenant caps where funds can go no matter who decides.
"Got the goods and went silent" doesn't work here: if the buyer neither releases nor disputes within the window, the escrow pays the seller automatically.
If a dispute stalls and the arbiter misses the contract deadline, funds return to the default side by themselves — no permission from us needed. The deal survives even our disappearance.
The covenant and the arbiter tool are open (GitHub). Your recovery sheet reopens the deal on any device, the escrow is watchable on any explorer, and the on-chain timeout means it can never hang. Recovery & offline →
The buyer opens a dispute and the funds freeze in the covenant. From there, resolution runs on a visible track:
Pick an attack. The outcome is decided by the covenant on Kaspa, not by our word — a payout it can't express is a transaction the network rejects.
The normal ending: the deal resolves amicably. The fee is enforced by the contract itself and shown before you confirm — it can't quietly change.
Only if a dispute reaches a verdict. The covenant enforces the service fee on every normal resolution — release, refund, mutual settlement and arbitration alike. The one path with no service fee is the emergency timeout, when the arbiter never ruled.
| Kaspa Escrow | Chat-group guarantor | |
|---|---|---|
| Who holds the money | an on-chain covenant — nobody | a person you have to trust |
| Can the middleman steal | no — the network rejects any other destination | yes — reputation is the only barrier |
| Fee | 0.5% amicable · 2% arbitration | 3–10% |
| Evidence | on-chain Kasia chat: E2E photo/video, impossible to forge or backdate | screenshots anyone can forge |
| If the middleman vanishes | timeout returns the funds by itself | money is gone |
No. The deal's funds sit in an on-chain Kaspa covenant. The contract admits a fixed set of outcomes, and in every one the money goes strictly to the buyer, the seller, or the service fee. Sending it anywhere else — including to the arbiter — is a transaction the network will not accept.
A classic guarantor holds your money — you trust a person. Here nobody holds it: the covenant script does. Theft isn't "against the rules" — it simply isn't expressible in the covenant, so the network rejects it. And it costs 0.5% instead of the usual 3–10%.
Open a dispute within the dispute window. Both sides state their claims, one side reveals the deal chat to the arbiter, the AI mediator proposes an outcome, and a party executes it with their signature. Not accepted in 24 hours — a human arbiter rules. All evidence is the E2E deal chat with photos and videos, anchored on-chain.
The dispute window protects the seller too: if the buyer neither releases nor disputes, the escrow auto-releases to the seller when the window closes.
The deal is an on-chain contract with an emergency timeout: if the arbiter never rules by the contract deadline, funds go to the default side by themselves. The contract and offline tools are open source — the deal outlives the website.
Only the two of you. The deal chat is on-chain messaging on the Kaspa BlockDAG (Kasia protocol): every message is an end-to-end encrypted transaction, so the thread cannot be forged or backdated. The server relays only ciphertext. The arbiter can read it only if one side deliberately reveals it during a dispute — and the decrypted copy is wiped when the deal closes. A chat key cannot move funds.
Your master key file — the encrypted profile in your Desk. Your deal key and service token are saved there automatically; back it up once (Desk → Export key file). Lose the master file and its password with no backup and you lose access to your side of the deal (the funds themselves still follow the deal's normal paths or the timeout). We never store or ask for private keys.
Open beta. The contract passed a full on-chain cycle and adversarial attacks on our test range (52/52 in the VM), plus live mainnet dispute runs — but the external audit is still ahead. Deals run from 50 to 10,000 KAS.