Skip to main content
This guide covers V1 integration with KlerosLiquid on Ethereum Mainnet. For new integrations, use Kleros V2 on Arbitrum.

Building a V1 Arbitrable Contract

A V1 arbitrable contract must:
  1. Implement IArbitrable receive rulings from the arbitrator
  2. Implement IEvidence (ERC-1497) emit MetaEvidence, Evidence, and Dispute events
  3. Call createDispute() on KlerosLiquid and pay the arbitration fee
  4. Enforce the ruling in the rule() callback

Minimal Example


V1 extraData Format

In V1, extraData is ABI-packed with two uint256 values:

V1 Appeal Process

In V1, appeals are part of the IArbitrator interface. To support appeals in your arbitrable:
The appeal cost increases with each round, incentivizing correct early voting. Crowdfunding appeal fees allows any interested party to keep a dispute alive.

Integration Tools

V1 provides several helper tools:

Using the Arbitrable Proxy

For simpler integration, use the Arbitrable Proxy contract. It handles appeal management and evidence submission, allowing your contract to focus on business logic:
  1. Your contract creates a dispute through the proxy
  2. The proxy handles appeal crowdfunding and evidence events
  3. Your contract polls the proxy for the final ruling
This approach is documented in the GitBook integration guide.