Marketplace Escrow Contract
I will build an escrow smart contract for your marketplace on Starknet or EVM

About this gig
When strangers trade, someone has to go first. Escrow lets neither side take that risk alone.
I build escrow contracts that hold the buyer's payment, and optionally a return bond from the seller, until the deal's terms are met. The buyer accepts delivery and funds release. If nobody acts, timeouts settle the deal. If there's a disagreement, the dispute path collects evidence on IPFS and hands the decision to a resolver you choose.
What you get:
- An escrow contract per order, or a factory for many deals
- Release, refund and timeout rules written as code
- Optional seller return bonds
- A dispute flow with evidence links and a resolver role
- Platform fee splits
- Tests, testnet deployment and an optional dApp for buyers and sellers
I wrote Bilateral Escrow, an open-source Cairo contract on Starknet that holds a buyer's payment and a merchant's return bond until delivery terms are met. It's the foundation of escrowed trade in WeSelling.
Tell me what's being traded, who resolves disputes, and which token and chain you want.
Use cases
Freelance platforms
Milestone payments released on approval.
Cross-border trade
Goods paid for into escrow, released on delivery.
P2P exchanges
Crypto-for-fiat trades with time limits and disputes.
Real estate deposits
Holding fees released when documents are verified.
Marketplace orders
Buyer payment and seller bond held until delivery.
Services and events
Deposits returned or released based on outcomes.
Group buying
Funds pooled until a target is reached, else refunded.
Proof-gated release
Release when a zkTLS or ZK proof shows the condition was met.
What changes
Today
- Buyers won't pay first, and sellers won't ship first
- Disputes come down to who argues loudest
- Payment platforms freeze funds or charge high fees to hold them
- Cross-border deals have no neutral middleman
After
- The buyer's payment is locked in the contract until delivery is accepted
- An optional seller return bond, so both sides have something at stake
- Timeouts that settle automatically when nobody acts
- A dispute path with evidence on IPFS and a human resolver
How it works
- 01Buyer pays into escrow
- 02Seller posts a bond
- 03Seller ships
- 04Buyer accepts or disputes
- 05Funds released
Compare packages
| Package | Starter$650 | Business$1,500 | Scale$3,600 |
|---|---|---|---|
| What it is | Single-escrow contract with release, refund and timeout, tested on testnet | Escrow factory with seller bonds, disputes, evidence links and fee splits | Full escrow product: contracts, dApp, email-login wallets and a dispute console |
| Escrow per order | โ | โ | โ |
| Release, refund and timeout | โ | โ | โ |
| Testnet deployment | โ | โ | โ |
| Escrow factory for many deals | โ | โ | โ |
| Seller return bond | โ | โ | โ |
| Dispute flow with IPFS evidence | โ | โ | โ |
| Platform fee split | โ | โ | โ |
| dApp for buyers and sellers | โ | โ | โ |
| Email-login wallets | โ | โ | โ |
| Admin dispute console | โ | โ | โ |
| Delivery | 8 days | 16 days | 28 days |
| Revisions | 2 | 3 | 4 |
Add-ons
- Faster delivery+30% of the package
- Internal security review with written findings+$250
- Written documentation for your team+$50
- 90 days of support and small changes+$240
Built before
Who it's for
- Marketplaces
- Freelance and service platforms
- Cross-border traders
- P2P exchanges
- B2B procurement
What I'll need from you
- What's being traded and the delivery process
- Who resolves disputes, and how
- Token and chain
- Fee model for your platform
Questions, answered
Does the contract know whether goods were delivered?
A contract can't see a parcel. Delivery is confirmed by the buyer, by a timeout or by a trusted signal such as a courier's API, and disputed cases go to a person. I design that flow with you so its limits are clear to your users.
Which tokens can it hold?
Any ERC-20 on EVM chains or any token on Starknet, usually USDC or USDT.
Who owns the code and accounts when we finish?
You do. Code goes to your repository, and services run on accounts in your name, so you are never locked to me. I hand over logins, keys and a short guide.
What if my project doesn't fit a package?
Send a message describing what you need. I reply with a custom offer priced to the actual scope, often after a short call.
The thinking behind it
Tools and tags
- Cairo
- Solidity
- Starknet Foundry
- Foundry
- IPFS
- starknet.js
- Next.js
- Reclaim zkTLS
- Chainlink
- Pragma
- Kleros-style arbitration
- Safe
- #escrow
- #smartcontract
- #marketplace
- #starknet
- #web3payments



