Skip to content

How it works ​

work2own has two smart contracts on Robinhood Chain, a web app with an API, and two work2own wallets with special roles.

Components ​

ComponentWhereRole
Work2OwnEscrowOn-chain, 0xB207…422bHolds all USDG for quests and gigs. Enforces slots, deadlines, review windows, disputes, refunds and payouts
StockPayoutOn-chain, 0xEC5f…8d8dSwaps USDG for a stock token on Uniswap V3 after safety checks and sends it to the worker. Holds no funds between transactions
Appapp.getwork2own.comThe website. Builds and simulates your transactions; your wallet signs them
API and indexerwork2own serverReads every escrow and payout event into a database so pages load fast. Stores the off-chain parts: quest descriptions and steps, proofs, gig posts, applications, profiles, photos, projects
OperatorWallet 0x0eF9…231cA bot that verifies automatic quests, runs stock payouts at a protected price, releases payments after 7 days without review, closes ended quests, and frees expired slots in quests that are otherwise full
ArbiterWallet 0xf4af…2AebSettles disputed gigs by splitting the budget. This address also receives the platform fee as treasury

All addresses are listed in Smart contracts.

What lives on-chain and what does not ​

On-chain (in the escrow): who funded what, rewards, slots, deadlines, the review mode, each worker's claim and status, the chosen payout token, the timestamps that drive the 24-hour and 7-day windows, every payout and refund, and a fingerprint (keccak-256 hash) of every proof, delivery and rejection reason.

Off-chain (in the work2own database): the texts behind those fingerprints, quest descriptions and steps, gig posts and applications, profiles and photos, projects, sign-in sessions, and the payout country you declared.

The fingerprint links the two. When you submit, the work2own server stores your proof and returns its hash, and your transaction writes that hash on-chain. A proof changed afterwards no longer matches the on-chain fingerprint.

Life of a quest ​

text
Employer: createCampaign ──► USDG rewards in escrow, fee to treasury
Worker:   claimSlot        ──► slot Reserved (24 h), payout token fixed
Worker:   submitQuest      ──► slot Submitted, proof fingerprint on-chain
Review:   manual  → employer approveQuest / rejectQuest (≤ 7 days) / anyone releaseQuest (after 7 days)
          automatic → operator verifyQuest / rejectQuest
Payout:   created on completion ──► USDG sent, or stock swapped by worker/operator
End:      after the deadline, closeCampaign refunds reward × unused slots to the employer

Life of a gig ​

text
Employer: posts a gig (off-chain, free) ──► workers apply with their profile
Employer: createGig(worker, budget, deadline) ──► budget in escrow, fee to treasury
Worker:   submitGig (before the deadline, chooses payout token)
Employer: approveGig, or rejectGig within 7 days ──► Disputed
Anyone:   releaseGig after 7 days without an answer
Arbiter:  resolveDispute ──► split between worker payout and employer refund
Employer: cancelGig after the deadline if nothing was delivered ──► full budget back

Payouts ​

Every completed quest or gig creates a payout in the escrow, with the worker, the amount in USDG and the chosen token. A payout is either Pending or Paid.

  • USDG: sent at once, whoever completed the work.
  • Stock token: the escrow calls StockPayout to swap and deliver. This only runs when the worker or the operator triggers it; otherwise the payout stays Pending until the operator runs it. If any safety check fails, the swap is cancelled, the payout stays Pending, and nothing is lost. When a swap was attempted, the reason is recorded on-chain.

Details: Stock payouts.

How the app gets its data ​

  • The indexer reads the escrow and StockPayout events from the deployment block up to the latest block, a range of blocks at a time, and applies them in chain order.
  • Contract settings (fee, maximum deposit, pause) are read live about every minute.
  • Pages read from the API and refresh themselves. The app reads the chain through the work2own server's RPC endpoint; your wallet signs and sends your transactions.

work2own is an independent project. It is not affiliated with, endorsed by or sponsored by Robinhood Markets, Inc. Nothing here is investment advice.