How Disputes Work

A transparent look into our decentralized arbitration lifecycle.

1. Open a Dispute

If the client and provider cannot reach an agreement, either party can trigger the openDispute(id, evidenceHash) function on the smart contract.

Status changes to: DISPUTED

2. Submit Evidence

Both parties have the opportunity to submit their proof of work or proof of failure. This evidence is anchored on-chain via a cryptographic hash (e.g., an IPFS CID containing chat logs, deliverables, and requirements).

3. Arbitration & Resolution

Our specialized arbitration team reviews the immutable evidence. We use the resolveDispute(id, providerBps) function to enforce a fair split based on the work completed.

Example Split: If the provider finished 80% of the milestone before the dispute, the contract routes 80% of the funds to the provider and refunds 20% back to the client.

4. Stale Dispute Fallback

If a dispute is opened but abandoned by all parties for 30 days, the smart contract activates a stale dispute fallback mechanism. It automatically splits the locked funds 50/50 between the client and provider, ensuring funds are never locked forever.