Our client agreed to provide a software solution for one of its existing customers to enhance its customers’ ability to make payments to its own customers. Our client subcontracted the software development work to a third party.

Context and Challenge

The main challenge when using a subcontractor is to ensure that the subcontractor is contracted to fulfil the obligations that you are under with your customer – that there are no gaps. The subcontract must at least mirror the head contract or it can impose greater obligations on the subcontractor.

In this case the client wanted to sign with the subcontractor quickly, ahead of being able to sign with the customer. Usually things are done the other way around or simultaneously.

Process and Insight

As always we spent time at the outset understanding the context. For example, we wanted to understand how critical the software was to the operations of our client’s customer. We always want to get a sense of how bad things could get if things go wrong or deadlines are missed. We also wanted to get a feel for the stance that the subcontractor was likely to take – whether they would be easy to work with, how solid their experience was from other projects and the likelihood of being able to take action against them if they failed to perform. Basically, we wanted to assess the risk in this project.

Having carried out the initial risk analysis we then came up with a solution with the subcontractor that we felt we could easily mirror with our client’s customer. We also built in protections in the subcontract agreement in case the customer wanted to impose additional terms that we hadn’t covered. 

Having agreed terms with the subcontractor we then drafted and negotiated the client / customer contracts. Only very minor changes were then needed to amend the subcontractor agreement.


We drafted and negotiated the subcontract agreement and then drafted and negotiated a software development agreement and SaaS contract with our client’s customer. The SaaS contract was to cover ongoing delivery of the software as a service beyond delivery of the developed product. The SaaS contract also included support and maintenance provisions and service availability guarantees.


We were able to conclude all of the contracts within the required timescales so the development work could start as planned.