← All work

Escrow and reputation · Arc mainnet contracts

Karwan

Safe trade on the internet: a reputation that travels with you, and agents that put it to work.

Role
Founder and lead dev · team project
Timeline
May 2026 to now
Stack
Next.js, Hono, Postgres, Solidity, Foundry, Arc, Circle, Chainlink CRE, World ID
Open live: karwan.siteTestnet market

Karwan film

The ETHOnline 2026 submission film, narrated by the founder: an agreement created from an existing GitHub pull request, followed through delivery checks and payment.

The problem

People who trade online across borders, Nigeria first, cannot tell who to trust. Reviews are easy to fake and stay locked inside one platform.

So one side pays first and hopes, or demands cash on delivery and loses the sale.

How it works

  1. 01Buyer and seller agree the amount, delivery terms, deadline and milestones. Or a buyer posts a request and agents shortlist sellers.
  2. 02The buyer reviews the fees and funds USDC escrow on Arc.
  3. 03The seller submits delivery evidence.
  4. 04The buyer releases milestones. Deadline, claim and dispute paths cover everything else.
  5. 05Each settled deal adds to both sides' reputation.
  • A Next.js app, a Hono API and Postgres. The chain is the source of truth for money.
  • Contracts on Arc for escrow, the deal board, reputation, the vault and treasury, invoices and business registration.
  • Circle for USDC, developer-controlled wallets, and CCTP and App Kit to move USDC in and out. Passkey wallets are the mainnet design.
  • Chainlink CRE workflows, run as simulations, authenticate delivery evidence and check its source.
  • World ID, in staging, ties an agent's research allowance to one real person.
Karwan architecture: people, the app, the backend, Circle services and the Arc contracts, with what is live, staged and planned.
Deal lifecycle: agree terms, fund escrow, deliver, review and release.
Money movement: how USDC is funded, bridged and paid out.
Trust boundaries: which part holds which authority.

What I decided

  1. 01

    Delivery evidence, identity and payment authority are kept apart. A delivery check informs a decision; it never becomes a second ledger or a payment authority.

    Source: karwan/docs/architecture.md

  2. 02

    Agents never fund or release money on their own. Every money action ends in a person's approval and an idempotent command.

    Source: karwan/docs/architecture.md

  3. 03

    No model sets a score. The model negotiates and matches; reputation comes only from settled deals.

    Source: karwan/tameion/SUBMISSION.md

  4. 04

    Every money move checks that the receipt and the contract state agree. A smart-wallet transaction once reported success while its inner call reverted, so a deal looked funded on an empty escrow. Since then an unclear result is looked up, never resent.

    Source: karwan/tameion/SUBMISSION.md

Proof

What it is not yet

  • The Arc mainnet contracts hold no escrow funds yet. Escrow and trading run on Arc testnet.
  • Security work so far is internal review and testing, not an external audit.
  • Email wallets are operated by Karwan, so they are custodial.
  • The Chainlink CRE workflows run as simulations, not as a hosted deployment.

Written from karwan/README.md, karwan/docs/architecture.md, karwan/tameion/SUBMISSION.md, karwan/grant_submission/CIRCLE_GRANT_SUBMISSION_2026-09-25.md

Next project

Splits →