Skip to content

Template

Software development contract template, with the clauses buyers forget

Fourteen clauses to adapt with your lawyer, a note on what each one settles, and the five that matter most filled in for a real-sized project.

Free, no e-mail address. Yours to adapt and share.

Software development contract template filled in: scope, changes, ownership of the code, repository and governing law for a fictional planning platform

By , Founder and CEO

What is in the file

Start from the Word file, fill in the square brackets, attach your specification as Schedule 1 and the prices as Schedule 2, and have a lawyer in your jurisdiction review it before anyone signs.

  1. 01Fourteen clausesFrom parties and scope to liability, exit and governing law, each in plain English.
  2. 02A note per clauseWhat the clause settles and where US, UK and EU law differ, to delete before signing.
  3. 03Five schedulesScope and acceptance, prices and changes, open source, data processing, support.
  4. 04The filled-in exampleThe five clauses buyers forget, filled in for a planning platform built by a supplier in Belgium for a company in Rotterdam.
On this page
  1. 01What a software development contract must include
  2. 02Ownership of the code: where the law differs
  3. 03The repository and the accounts
  4. 04Fixed price or time and materials
  5. 05Contracting across borders

What a software development contract must include

A software development contract has to settle five things that cause most disputes: the scope, described in modules you can accept one by one; how changes are priced before anyone starts them; who owns the code and when the ownership passes; where the code and the accounts live from the first day; and which law and courts apply. The rest, from payment terms to confidentiality, is standard and matters less in practice.

This template holds fourteen clauses in plain English, each with a note on what it settles, five schedules, and a filled-in example of the five clauses buyers forget. It is written for a buyer who commissions custom software from an agency, at home or in another country. It is not legal advice: contract law, consumer law and intellectual property differ per country, and a lawyer in your jurisdiction should review the result before you sign.

Write the specification first; the contract points to it as Schedule 1. Our software requirements template gives you the questions, and our guide on how to choose a software development company the checks to run before you get this far.

Fourteen clauses, five that buyers forget

  1. 1.Parties and purpose
  2. 2.Scope in modulesoften forgotten
  3. 3.Price and payment
  4. 4.Changesoften forgotten
  5. 5.Delivery and acceptance
  6. 6.Ownership of the code and IPoften forgotten
  7. 7.Repository, accounts and accessoften forgotten
  8. 8.Hosting, data and security
  9. 9.Warranty
  10. 10.Support and maintenance
  11. 11.Liability
  12. 12.Confidentiality
  13. 13.Termination and exit
  14. 14.Governing law and disputesoften forgotten

The Word file explains every clause; the PDF shows the five highlighted ones filled in for a fictional project.

Ownership of the code: where the law differs

The clause on intellectual property is the one where jurisdictions differ most, and where a contract copied from another country fails.

JurisdictionWho owns code written for you by defaultWhat the contract needs
United Statesthe author, unless it is a work made for hire: an employee's work, or certain commissioned works agreed in writingan explicit assignment, because software by an outside agency rarely qualifies as work made for hire
United Kingdomthe author, or the employer for an employee's worka written assignment signed by the supplier
Belgiumthe author; for software written by employees, the employer is presumed to hold the economic rightsa written assignment for work by an outside supplier
Netherlandsthe author, or the employer for an employee's worka written deed of assignment
EU in generalthe author, under the Software Directive, with an employer rule for employeesa written assignment for commissioned work

In every case, the safe course is the same: assign all intellectual property in what is created for you, in writing, and say when it passes: on creation, or on payment of each module. Keep the supplier's own pre-existing tools out of the assignment, with a licence for you to use them as part of your software.

The repository and the accounts

The single clause that protects a buyer most is not about law at all: the code lives in a repository owned by you from the first commit, and the domain, cloud accounts and app store accounts are in your company's name. With that clause, you can continue with another supplier at any moment; without it, even a fair supplier holds the keys. We describe this in our own contracts, and it is the first thing we suggest a buyer checks in any offer.

Fixed price or time and materials

The template is written for a fixed price per module. For time and materials, replace clause 3 with rates per role, a weekly report of hours and a monthly cap.

Fixed price per moduleTime and materials
Who carries the risk of the estimatethe supplieryou
What you need on your sidea clear description per modulesomeone who decides priorities every week
How changes worka new line with its own pricemore hours on the next invoice
Best fora product or module you can describework that changes as users react

What custom software costs per type of project is in custom software development cost; developer rates per country, if you go the hourly way, in developer rates by country.

Contracting across borders

Working with a supplier in another country adds three choices to the contract. Pick one governing law and one court; English law is common between UK and EU parties, Belgian or Dutch law between EU parties, and some US buyers accept English or Belgian law for a European supplier. Settle the currency of the invoices, because the module price is only fixed in that currency. And if the supplier processes personal data of people in the EU, attach a data processing agreement under article 28 of the GDPR as Schedule 4; what it contains is explained in data processing agreement.

For US buyers, the time zone and tax side of working with a European team is in outsourcing to Europe from the US; for UK buyers, in bespoke software development for UK companies.

Contract questions from buyers

What should a software development contract include?

Scope in modules with acceptance criteria, a price and how changes are priced, ownership of the code with a written assignment, a repository and accounts in your name, and governing law. Then warranty, support, liability, confidentiality and exit.

Who owns the code if the contract says nothing?

In most countries, the developer or agency that wrote it. A buyer only owns the code with a written assignment, except for code written by its own employees.

Is this template enough to sign?

No. It gives you the structure and the questions; have a lawyer in your jurisdiction adapt the liability and intellectual property clauses before anyone signs.

Can I use the template for an app or a SaaS product?

Yes. Add the app store accounts to clause 7, and for a SaaS product make sure the hosting and support schedules match what you promise your own customers.

Custom software

How VBS contracts a project

We work at a fixed price per module, agreed after a first call, with the repository in your organisation from the first commit, accounts in your name, a written assignment of the intellectual property, and hosting in the EU with a processing agreement. Every release goes out with a backup and a way back. That is how we built the platform DA Logistics runs on every day and how the same core went live for Zuco Logistics on a server of its own. See custom software development and nearshore software development, or book a call.

Tell us where you stand.

A few sentences will do. We reply within 24 hours with a proposal for a first call.

Optional, if you prefer a call.

What do you want to achieve, and what is already there?

We only use your details to reply to you.