Water cooler and triangular chairs

A narrow escape – software services provider entitled to rely on single aggregate liability cap (Drax v Wipro)

25 July 2023. Published by Helen Armstrong, Partner and Ben Harris, Associate and Joshy Thomas, Knowledge Lawyer

When it comes to bespoke software development projects, a lot can go wrong. There's risk for the customer such as project delays, software defects, functionality issues and a lack of meeting of minds in terms of project requirements.

There's risk for the services provider too, from non payment to legal action for any of the above customer complaints. For this reason, software services agreements often include complex and detailed limitation of liability clauses – for example, limiting their liability to the customer for certain types of losses to the value of the fees paid/payable under the contract and/or excluding certain types of losses altogether.

The High Court examined such a limitation of liability clause in Drax Energy Solutions Limited v Wipro Limited [2023] EWHC 1342 (TCC). The key question for the court was whether the wording of the limitation of liability clause in the Master Services Agreement (MSA) should be treated narrowly, so that a single aggregate cap applied to Drax's pleaded claims, or more broadly, as separate caps for each claim. In determining this as a preliminary issue, the court decided that the language of the relevant clause and related provisions imposed a single cap for all claims.

The MSA and the limitation clause

Drax and Wipro entered into the MSA in January 2017.  Under the MSA and its seven related Statements Of Work (SOWs), it was envisaged that Wipro would design, build, test and implement a new Oracle-based IT system for Drax – including customer relationship management, billing and smart metering functionality, as well as software encryption, ongoing maintenance and related IT services. However, milestones were repeatedly missed and the project ended in failure: less than eight months in, Drax terminated the MSA for Wipro's alleged repudiatory breaches and sued Wipro for damages. Drax claimed total losses of around £31 million (more than four times the fees payable in that first year).

Clause 33.2 (the Clause) of the MSA contained the following limitation of liability:

"Subject to clauses 33.1, 33.3, 33.5 and 33.6, the Supplier's total liability to the Customer, whether in contract, tort (including negligence), for breach of statutory duty or otherwise, arising out of or in connection with this Agreement (including all Statements of Work) shall be limited to an amount equivalent to 150% of the Charges paid or payable in the preceding twelve months from the date the claim first arose. If the claim arises in the first Contract Year then the amount shall be calculated as 150% of an estimate of the Charges paid and payable for a full twelve months." (emphases added)

The questions for the court

Ahead of the main trial in this case, which is scheduled for October 2024, the court was asked to determine two preliminary issues:

  1. Did the Clause provide for multiple liability caps, such that each claim Drax might bring under the MSA would have its own cap and own individual financial limit, or did the Clause provide for one single aggregate cap, applying a single total limitation of liability to any and all claims Drax might bring, at any time, under the MSA?
  2. If the Clause did provide for multiple liability caps for different claims, what were the different claims in this case? How should Drax's £31 million of claimed losses, and the different factual and legal circumstances identified by Drax as leading to those losses, be split into different "claims" for the purposes of the Clause and the different applicable liability caps?

Wipro's position was that its liability was limited under the Clause to a single aggregate cap, but even if the Clause did provide for multiple caps, Drax had just the one overall "claim" in this case, so a single cap would still apply. Drax argued that the Clause provided for multiple caps, and also that it had multiple "claims" – either on the basis that "claim" meant "cause of action" (Drax identified as many as 16 individual causes of action), or on the basis that there were four different "categories of claim", relating to losses caused by: (i) alleged misrepresentations made by Wipro; (ii) the allegedly poor quality of Wipro's work; (iii) delays in meeting project milestones; and (iv) additional expenditure Drax incurred in having to terminate the MSA early.

The consequences were significant: if there was just one cap or claim, a single limit of around £11.5 million would apply under the Clause (being the parties' agreed estimate of 150% of the first contract year's fees), despite Drax's total claimed losses far exceeding that amount. If there were multiple caps and "claims", however, then each "claim" would be subject to its own individual cap, entitling Drax potentially to recover a far greater proportion of its £31 million total losses.

The court's approach to contractual interpretation

The court first revisited the now well-established "natural and ordinary" meaning approach to contractual interpretation. Where there is ambiguity in the contractual wording, the court is entitled to prefer the construction that is consistent with commercial common sense (but only to the extent that a reasonable person in the parties' position would have perceived it). The court would take into account the quality of the drafting: the more carefully drafted the contract, the more weight the court would give to the literal text over the commercial context. However, the court would not seek to relieve a party from a bad bargain.

In this case, the court accepted that there was more than one possible interpretation of the wording of the Clause, noting that it was not well drafted and that there were "linguistic quirks" and an inconsistent choice of wording throughout the contract.

In interpreting the Clause, the court followed the principles referred to in the leading Supreme Court decision in Triple Point Technology v PT, recognising that commercial parties are free to make their own bargains and allocate risks as they think fit and that "the court in construing the contract starts from the assumption that in the absence of clear words the parties did not intend the contract to derogate from [their] normal rights and obligations".

Issue 1: One cap or multiple caps?

Perhaps unsurprisingly noting the use of phrases such as "total liability", and "the claim" (rather than "a claim" or "for each claim"), the court held that the language of the Clause and related provisions were a "clear indicator" that the Clause imposed a single aggregate cap, not multiple caps.

As to business common sense and contextual considerations, including the purpose of limitation clauses:

  • Drax argued that there were multiple SOWs under the MSA, and more SOWs could have been executed in future by other group companies, in respect of other projects – so it didn't make business sense for there to be a single aggregate cap, which Drax would be stuck with in respect of any and all claims that might arise under any SOWs in the future. The court dismissed that argument as unrealistic – Drax had termination rights it could utilise under the MSA if the project was proving or threatening to be a disaster.
  • Drax also argued that if the Clause provided for a single aggregate cap, that would result in its claims being limited to just £11.5 million – a third of their potential £31 million value, which would make no business sense. The Court disagreed. Balancing the parties' competing perspectives, the court's view was that, although it was true that a single aggregate cap would significantly limit Drax's claims, the Clause still left Drax with potential and not insignificant damages, while at the same time operating as an effective limit on Wipro's liability, without being "so high as to be devoid of any real purpose" as a limitation clause.

Ultimately, the court recognised that "it may be that Drax did not… protect itself in terms of claims to be made as it could or should have done [but that] is quite different from saying that the Clause makes no commercial sense".

Accordingly, the court found that Drax's total claim of £31 million was effectively limited to £11.5 million by the single liability cap under the Clause.

Issue 2: One claim or multiple claims?

Despite its conclusion for Issue 1 effectively closing off the second issue, the court answered Issue 2, accepting neither party's primary cases about the meaning of "claim":

  • Drax's contention that "claim" meant "cause of action" (resulting in 16 "claims") simply couldn’t be right, as "there would be a total cap of £132 million for the first 12 claims and then a further cap for the remainder". The Clause had to operate as an effective limitation on Wipro's liability.
  • Wipro's position that "claim" meant "liability", however, would have been too restrictive, depriving Drax of the ability to bring multiple claims under the MSA: that would be an "artificial" interpretation which would mean "there could never be more than one operative claim".

Instead, the court adopted a middle ground that involved "construing a claim in the context of and for the purposes of the operation of the Clause". The court considered that Drax's alternative case, that "claim" should be interpreted in accordance with the four broad categories of claim included in its Particulars of Claim, was a sensible approach and would not lead to an "odd outcome" as to the applicable liability caps under the Clause. Even though the court accepted that Drax's four categories were somewhat arbitrary, the parties' chosen contractual wording was not entirely clear as to what "claim" meant, and their primary arguments were not workable within the purpose of the Clause, and therefore the court explained that "some other meaning must be given".

Comment & Practical Takeaways

This case highlights the potentially narrow and purposive approach the courts may adopt when construing limitation of liability clauses within their factual and commercial context.

Software developers, IT service providers and others that typically operate within an MSA/SOW contractual framework should take care to consider and agree allocation of risk effectively before entering into any MSA or SOW (including considering whether each SOW should contain its own specific limitations of liability that override any general limitations in the MSA).

Clauses containing financial caps can use a variety of ways to ensure certainty and enforceability for example by fixing an overall sum for the cap or by limiting the amount to the sums paid to the supplier.  When referring to "paid" sums it is important to define "paid" as opposed to "payable".

As well as dealing with the value of the cap it is important to carefully describe what the cap applies to: a single cap may apply to all claims made "under" or "in connection" (much wider) with the agreement, a defined period such a calendar year, or per claim. In some circumstances, it may be advisable to apply different limits for different kinds of loss, accepting that the more complex the arrangements the more likely that arguments may ensue.