Lock funds in an immutable contract. Release on delivery. No custodian, no arbitrator, no admin keys. Two parties, one contract, atomic settlement. If the buyer ghosts, auto-release protects the seller.
No custodian holds your funds. The smart contract is the escrow agent. It cannot be bribed, corrupted, or hacked through social engineering. Code is the only arbiter.
Disputes have a 30-day deterministic timeout. Funds can never be locked forever. The seller can always force-claim after 30 days of unresolved dispute. Game theory, not governance.
Charged only on released funds. No fee on cancellations or refunds. The fee recipient is immutable — set once at deployment, never changeable. Revenue flows forever.
Click "Load Recent" to browse escrows or look up by ID.
Onchain Escrow is a fully immutable, decentralized smart contract protocol for trustless two-party escrow on Ethereum. Buyer deposits ETH or ERC-20 tokens. Seller delivers off-chain. Buyer releases payment. If buyer goes MIA, auto-release protects the seller after a deadline and grace period. Disputes have a deterministic 30-day timeout — funds can never be locked forever.
Single contract. No owner. No admin keys. No proxy. No pause. No upgrade. The only privileged value is the fee recipient, set as an immutable variable at deployment. There is no function to change it. There is no governance. There is no multisig. The contract runs autonomously forever.
Buyer creates escrow (deposits funds, sets seller, deadline, terms hash). Seller delivers off-chain. Buyer calls release(). Seller receives funds minus 2% fee. Done.
Deadline passes. Seller calls requestRelease(). 72-hour grace period starts. If buyer doesn't dispute within 72 hours, seller calls claimRelease(). Funds released with 2% fee.
Buyer disputes during grace period. Escrow enters Disputed state. Buyer can still release at any time. Both can mutually cancel. If neither acts, seller can force-claim after 30 days. Deterministic resolution — no permanent fund lock.
Either party proposes. Other party confirms. Full refund to buyer. No fee charged.
ReentrancyGuard on all state-changing functions. SafeERC20 for all token transfers. Checks-Effects-Interactions pattern for all ETH transfers. Balance measurement for fee-on-transfer token support. No selfdestruct. No delegatecall. No external dependencies.
— Otoshi
Deployed on Ethereum. Immutable forever. No keys to lose, no admin to corrupt. Just code, holding money, releasing on command.