Law Office of Peter Cusimano, Barrister & Solicitor
Business Lawyer · Toronto, Ontario, Canada


The information in this article is a brief summary for informational purposes only and is only applicable in the Province of Ontario. It is not meant to be legal advice. If you require information or advice as it relates to your individual circumstances you are advised to consult with the Law Office of Peter Cusimano or speak to your own lawyer.

Using A Computer Development/Consulting Agreement

by: Peter A. Cusimano, B.Sc., LL.B.; Toronto Business Lawyer

Who Should Read This

This article is intended for computer consulting and computer programming companies. In addition, anyone who retains the services of a computer consultant or computer programmer will also find this article of interest and can easily adapt the material to their perspective.

This article discusses how a written agreement can protect the consultant/programmer and thereby work for your business and potentially save you money, aggravation, disappointment, and business failure.

How Your Business is at Risk

Have you ever considered what would happen if the program you wrote failed to properly work resulting in your client unable to conduct business? Programs never work initially and require constant revisions to work out the bugs. Often clients cannot understand the difficulty in finding and fixing bugs in a computer system. What happens if a virus infects your client's computer system? If you do not adequately protect yourself, you may not get paid for your services. Even worse, you could be sued and held liable to pay for your client's damages which could include more than just the price of your services. You could easily find yourself defending a lawsuit for thousands or millions of dollars for loss of profits and loss of contracts of your client if they are unable to conduct business as they anticipated while the computer system is down.

On the other hand, when the program is functional and of good quality, the ownership of the software often becomes a contentious issue between the parties. For example, does the customer own the source-code or do you own it? Are you required to give the source code to your client? Similarly, are you permitted to create a similar software product for your client's competitors? You may find that your client asks you to sign a confidentiality agreement. If you are not careful, you may be prevented from developing similar software on the basis that you are using confidential information. Alternatively, you may find yourself unable to sub-contract your work to others because of the confidentiality requirement. As a result, you may find yourself being sued for breach of confidentiality or an injunction may be issued against your company.

Where you retain the rights to the source code you can include a provision that prevents your customer from profiting from the software by reverse engineering the software and selling it to third parties. Alternatively, you may wish to have the ability to licence your software to anyone interested.

The results of any of the above scenarios could be devastating to your company and can easily cost you tens of thousands of dollars in legal fees to rectify. However, your company's exposure to liability can be limited in advance by the use of a written computer development/consulting agreement.

How to Protect Your Consulting/Programming Business

You should hope for the best, but plan for the worst scenarios to occur. If you are in the consulting or programming business, a computer development/consulting agreement should be prepared and signed by you and your client prior to the commencement of any work to limit your liability and help protect your business. The use of a written agreement can save you money, time, aggravation, and most importantly your business.

Your agreement will also help reduce the chance of a disagreement by outlining the roles of the respective parties. Your client will be required to prepare or approve the project specifications and the obligations of both your company and the customer will be clearly described.

In addition, your agreement can be used to ensure that your fees are easier to collect. Often clients refuse to pay for a project until every bug is worked out or they may be disappointed with finished product and continually demand changes. To protect your business, a payment structure will be inserted in the agreement requiring payments to be made as project milestones are attained. In the event that your client does not make a payment, a clause can be included allowing you to terminate the agreement and thereby ending your obligations to continue doing work and spending money on a client you anticipate will not be paying for your work. The agreement will also deal with preliminary work and any disbursements (out-of-pocket expenses) that are not included in your fee and which are to be paid for by the customer.

Although some people believe that asking their customers to sign a written agreement will spoil the relationship, smart business people know that a written agreement helps to protect their business and all parties will feel more comfortable knowing that their respective duties, obligations, rights, and benefits are in writing. The agreement will be tailored to the specific requirements of your business and will be written in plain English.

What Your Agreement Should Include

A good development/consulting agreement should address the following:

  • the agreement should accurately reflect the agreement between you and your customer
  • the agreement should clearly describe the project specifications so as to address the solutions to your customer's needs and wishes;
  • payments should be tied to the passing of performance tests and to project milestones being attained;
  • after-support should be provided for in the agreement. Often changes are required by the customer as a result of the client's changing needs or wishes;
  • ownership of the work often becomes a source of dispute if not dealt with early on.

You should discuss your options with your lawyer. By having the appropriate agreement in place you can protect your business and improve your business relationship with your customers who will appreciate your thoroughness and attention to details. Among other provisions, your agreement will contain provisions addressing these issues:

  • Date of agreement
  • Parties to the agreement
  • Definitions to clarify terms
  • Recitals including purpose and background information
  • Retainer of services
  • Term of the agreement
  • Services to be provided (project specifications; time requirements; person doing work)
  • Obligations of client
  • Follow up services (training, support, documentation)
  • Remuneration of services (method of payment, performance tests and milestones)
  • Discretionary bonus
  • Expenses (disbursements)
  • Covenants and representations by both parties
  • Ownership of work (copyright, patents, inventions)
  • Limitation of liability
  • Confidentiality and non-competition
  • Licencing
  • Termination
  • Capacity as independent contractor or employee
  • Dispute resolution (arbitration)
  • General contract provisions
  • Relevant schedules (project specifications)

Additional Agreements with Your Employees

In order to protect your business an employee agreement with your employees will be useful. You will want this agreement with your own employees and especially your software programmers. The agreement will provide that your company and not the employee owns the copyright to the software. Also, the agreement will provide that your employee will keep all information concerning your business and your customers confidential. Nothing could be worse than your employees going to your competition and disclosing secrets about your business or worse, your customer's business. Your reputation could be ruined if customer secrets are disclosed.

How the Law Office of Peter Cusimano Can Help You and Your Business Today

I will meet with you and will prepare the necessary written agreement. I will ensure that the agreement contains whatever is required to satisfy any of your specific wishes and to protect your business. You will find that our agreements are complete, and understandable. Complete and clearer agreements are harder rather than easier to do. If something is not clear to you, I will explain it to you.

If your company is about to retain a computer consultant or computer programmer, I can also prepare the necessary agreement so that it adequately protects your interests.

Revised: November 11, 2015.
©Peter Cusimano, 1995-2018. (