Skip to main content

Type a word from a question or an article title.

Security

What you can verify yourself without taking our word

The money in a deal sits in a smart contract, not with us. Here is what exactly the contract does and cannot do, what rights it has and how to check everything in a block explorer.

What nobody can do, including us

  • Change the contract's code: it is deployed without a proxy or upgrades.
  • Take the money of an active deal. The owner can reach only accumulated fees and "ownerless" tokens sent by mistake.
  • Stop payouts: a pause blocks only creating and accepting new offers, and exiting a live deal always works.
  • Swap the terms: if a terms hash is recorded, an offer can be accepted only with the same hash.
  • Interfere in a dispute: the ruling is made only by the guarantor named in the deal itself.

What the contract owner can do

  • Allow and forbid tokens for new deals.
  • Mark guarantors as "verified" (a reference label, not a guarantee of honesty).
  • Pause creating and accepting new offers.
  • Withdraw accumulated platform fees.
  • Hand ownership to another address in two steps (protection from a typo).

Rules built into the contract

Platform fee
1% of the amount, when the deal closes
Guarantor base rate
1-10% in the interface (the contract allows up to 10%)
Guarantor dispute rate
not below the base, up to 30%
Offer lifetime
7 days, then it can be withdrawn without fees
Performance term
1, 7, 30 or 90 days from acceptance
Guarantor is silent
after 30 days - a 50/50 split, the guarantor gets nothing
Withdrawing an offer before acceptance
100% refund, no fees

How to verify the contract in five minutes

  1. 1Open the contract address in the explorer of the right network via the links below.
  2. 2Make sure the address matches what the website shows and is the same on all networks.
  3. 3In the Contract tab see whether the source code is published and compare the build settings.
  4. 4In "Read Contract" check the platform fee, the owner and the pause flag.
  5. 5Check who the owner is: a plain address or a multisig.

The contract on different networks

The address is the same: the contract is deployed via CREATE2.

0x6462DDDc0a3D893A7C17f94410e2d27162a390aD

Status of checks

Independent audit
not conducted yet
Automated tests
unit tests, fuzzing of the payout math and solvency invariants
Source code
builds reproducibly: Solidity 0.8.24, optimizer 200, no metadata in the bytecode

Honest limitations

  • Escrow protects against a dishonest counterparty, not against a bug in code: do not deposit more than you can afford to lose.
  • The outcome of a dispute depends on the guarantor, whom you choose yourself. Choose a neutral and available one.
  • Transactions are irreversible. Check addresses and the network before signing.
  • The contract does not verify whether an off-chain obligation was met: people do.

Found a vulnerability?

Tell us privately and do not publish until it is fixed. Do not exploit it with real money: responsible disclosure is always better.