How to write deal terms that protect both sides
Drafting terms in practice: what to specify, how to describe results and deadlines, acceptance criteria, typical mistakes and templates for services and goods.
In this article
The contract guarantees that money will be paid out by the rules. But what counts as a "completed" deal is up to you, and you write it in the terms. Vague terms are the main source of disputes. Good terms do not need a lawyer, but they do need specifics. So that the terms cannot be swapped, their hash can be fixed in the contract when the deal is created (how it works).
Why terms when there is a contract
The contract knows only numbers: amount, deadline, addresses. It does not know that a "laptop in good condition" or a "website works". Those formulations are needed by the guarantor if a dispute arises (how the guarantor decides). And parties who know the rules in advance more often settle things themselves.
The formula for good terms: "who, what, when, how to check"
- Who - the parties and roles.
- What - the subject of the deal, as specific as possible.
- When - deadlines and stages.
- How to check - objective acceptance criteria.
- What if - the procedure upon a breach.
What to specify without fail
| Section | Example |
|---|---|
| Parties | buyer - address 0x…, seller - address 0x… |
| Subject | "A 5-screen landing page from the Figma mock-up (link)" |
| Price | 800 USDC, Base network |
| Deadline | performance within 7 days of acceptance |
| Acceptance | "The layout matches the mock-up and passes a check on three screen sizes" |
| Revisions | "2 rounds of revisions included" |
| Guarantor | address, rates |
| Contacts | where the correspondence takes place |
How to describe the subject
Bad: "I will make a website".
Good: "A 5-page business-card website (home, about, services, prices, contacts) from the mock-up [link], responsive layout (360, 768, 1280 px), a contact form sending to email, hosted on the client's hosting".
The more specific, the fewer disputes. If the subject cannot be described, consider whether it is better to split the work into stages (more on this).
How to set a deadline
- State the starting moment: in the contract the period counts from acceptance of the offer, and can be chosen from a set (1, 7, 30 or 90 days).
- If you need intermediate points, describe the stages in the text.
- Leave a margin: expiry is closed with a refund to the buyer.
- Remember: the seller is protected by the ability to open a dispute before the term ends (lifecycle).
Acceptance criteria: objective, not "will like"
Bad: "The buyer must be satisfied".
Good:
- "The device switches on, the screen has no cracks or dead pixels, the battery lasts at least 4 hours (a screenshot of battery status)".
- "All 12 pages of text checked, no more than 1 error per 1,800 characters".
- "The domain is transferred to the buyer's account at the registrar, WHOIS shows the new owner".
What to do if something goes wrong
Describe in advance:
- how the buyer reports a problem and within what time;
- how much time the seller has to fix it;
- what counts as a material breach;
- whether partial performance is acceptable (for example a 50/50 split).
A template for services
1. Parties: Client (0x…), Contractor (0x…), Guarantor (0x…)
2. Subject: <what exactly is created/performed>
3. Materials: <links to the brief, mock-ups, examples>
4. Result: <format, where it is placed>
5. Deadline: <N days from acceptance>
6. Acceptance: <a list of checkable criteria>
7. Revisions: <number of rounds, response time>
8. Disputed cases: <what counts as a breach>
9. Contact: <channel and response time>A template for goods
1. Parties and addresses.
2. Item: model, condition, contents, serial number.
3. Photo/video: <links>, date of shooting.
4. Delivery: method, term, who pays, tracking number.
5. Inspection: <term> after receipt, an unboxing video is required.
6. Defects: what counts as material.
7. Return: conditions and who pays.Typical mistakes
- Ambiguity: "in a reasonable time", "good quality".
- Verbal agreements that did not make it into the text.
- Terms changed in conversation after signing: only the fixed text applies.
- Forgotten costs: delivery, network fees, taxes.
- Overload: nobody reads 20 pages of small print; short, clear points are better.
What to read next
See what terms look like in real situations: a freelance project, physical goods, a domain and digital goods.
Keep reading
- 2 · Practice
Use case - a 1,500 USDC freelance project paid by stages
A step-by-step example of ordering development through escrow: splitting into stages, terms, client and contractor actions, fee calculation and a partial dispute.
4 min read - 2 · Practice
Hash commitment: fixing a deal's terms without revealing them
How a keccak256 hash records a contract's fingerprint on the blockchain without publishing the text, and why swapping the document becomes impossible.
5 min read
Mentioned in
- Where escrow is used - 10 real-life scenarios with examples
- The deal lifecycle - from offer to payout, step by step
- How to choose a guarantor - criteria, rates and red flags
- Preparing for a dispute - what evidence to collect and how to present it
- Hash commitment: fixing a deal's terms without revealing them
- Use case - a 1,500 USDC freelance project paid by stages
- Use case - selling a physical item with delivery through escrow
- Use case - selling a domain and digital goods through escrow
Ready to try it?
Create your first deal in a couple of minutes. The money is locked in a smart contract and paid out by rules you can see in advance.

