Build Log
The JCT payment dates that catch people out
Co-founder
A bank holiday in the run-up to payment gives everyone an extra day except the person deciding whether to pay less.
Every forward-counted deadline in the JCT interim cycle moves out when a bank holiday falls inside it, the final date for payment included. The pay less notice does not follow it out. That one is counted backwards from the final date, and the same holiday that moved payment out is excluded from the count coming back, so the last safe day to serve stays exactly where it was. The gap between the two opens from five days to six.
Which is where it catches people. Take the correct final date, count back five days on a calendar, and you are a day late. The right to pay less than the certified sum has gone for that cycle, and the certified sum falls due in full.
What encoding the rules made me check
I wrote a calculator for this cycle, which meant turning the reckoning provision into code, and code will not let you be approximately right. Every phrase I had been reading past for months had to become an instruction.
Bank holidays come out of the count. Weekends do not. I had assumed the two travelled together, because in nearly every other professional context they do. A period of days here runs straight across a Saturday and a Sunday without pausing, so a deadline can land on a weekend and still be the deadline. Writing the exclusion list out made that plain in a way that reading it never had. Christmas Day, Good Friday, and days that are bank holidays under the Banking and Financial Dealings Act 1971. No weekend anywhere in it.
The final date for payment runs from the due date, not from the certificate. This is the one I would guess catches most people, because the certificate feels like the event that starts the clock. The due date is the anchor, and the certificate deadline and the final date both hang off it independently rather than in sequence. A certificate issued on the last permitted day is still on time, and it has bought nobody a single extra day at the other end. The final date sits where it always sat.
A cycle that shows it
An Interim Valuation Date of Monday 13 April 2026, unamended provisions, England and Wales holidays:
- Due date: Monday 20 April
- Certificate by: Saturday 25 April
- Pay less notice by: Wednesday 29 April
- Final date for payment: Tuesday 5 May
The certificate deadline lands on a Saturday and stays there. The Early May bank holiday falls on Monday 4 May. Counting forwards, it pushes the final date for payment off the 4th and onto the 5th. Counting backwards from that new final date, it drops out of the count again, so the pay less deadline stays on Wednesday the 29th rather than following payment out to the 30th. Five days apart in a cycle with no holiday in it, six days apart in this one. Anyone counting back five days from Tuesday 5 May on a calendar lands on Thursday 30 April, and is a day late.
What I could not encode
A date engine can only answer the question the contract asks in its unamended form. Bespoke payment terms are common, and a schedule of amendments can move any of these periods while leaving everything around them looking familiar. The contract particulars govern, and nothing in a piece of code can see them.
The edition turned out not to be the variable I expected it to be. The interim payment mechanics are the same in the 2016 and 2024 forms, so a surveyor asking which edition they are on is usually asking a question that will not change the answer. The amendments are what change it.
That shaped what I built. It computes the part that is determinate from the dates alone, states the assumption it is working under, and hands the rest back to the person who can actually read the contract. A tool that guessed at the amendments would be more useful right up until the first time it was wrong, and then it would be worse than no tool at all.
Worth not doing by hand
The arithmetic is not difficult. It is fiddly enough to get wrong at four in the afternoon with three other things open, and there is no reason to spend attention on it. The JCT payment date calculator is free and takes an Interim Valuation Date. It is a working aid rather than legal or professional advice, and it assumes the payment provisions are unamended.
If you are a practising contract administrator and you think we've read any of this wrong, we would genuinely like to hear it.
A monthly note from Tendermark. What we're building, and what we're learning about tender comparison. One email a month. Unsubscribe any time.
We'll only use your email for this. Unsubscribe any time. See our Privacy Policy.