AI in Contracting: Subcontractor Paperwork Chasing Checklist

Coding Liquids tutorial cover featuring Sagnik Bhattacharya for AI in Contracting: Subcontractor Paperwork Chasing Checklist.
Coding Liquids tutorial cover featuring Sagnik Bhattacharya for AI in Contracting: Subcontractor Paperwork Chasing Checklist.

Keep one expiry sheet with every subcontractor's insurance certificates, licences and safety documents, let it count the days while an assistant drafts each reminder, and have a person verify every certificate before the subcontractor starts. AI saves the typing and the nagging; it never confirms that cover is real.

A certificate is a snapshot, not proof. Published legal guidance on certificates of insurance makes the point plainly: the standard form is issued for information only, it is not part of the policy, it cannot make you an additional insured (only an endorsement can), and it does not promise you will hear if the policy is cancelled. An assistant can read the dates off a certificate in seconds. Whether the cover is still in force today is a question for the broker, and that judgement stays with you.

Follow me on Instagram@sagnikteaches

A building contractor with eighteen active subcontractors typically receives certificates as phone photos, PDFs in six different inboxes and the occasional printout. Nobody notices an expiry until a site manager asks for the document on the day a crew turns up. The fix is dull and effective: one sheet, one weekly sweep, and reminders that say exactly what is needed and by when.

Connect on LinkedInSagnik Bhattacharya

This is a paperwork routine, not a contract management platform. There is nothing new to buy: a sheet, an assistant and a weekly habit. If you already use software that stores certificates, the verification and escalation steps below still apply, because they are about what a person checks, not where the file lives.

Subscribe on YouTube@sagnikteaches

The paperwork worth chasing, in the order it blocks work

Not every document stops a job, so rank them by what they block. A certificate of insurance is the one-page summary a subcontractor's broker or insurer issues to show cover; the others below are the usual companions.

Mark each row as required or not required per subcontract, so the sheet never nags anyone about cover they do not need. The right-hand column says when to chase each document.

DocumentWhy it blocks workCheck when it arrivesChase when
Signed subcontract or work orderWithout it there is no scope, price or terms to hold anyone toSigned by the right legal entity; scope and price match the quoteBefore mobilisation
Public (general) liability certificateProtects you if their work damages property or injures a third partyNamed insured, limit, dates and activities covered30 days before expiry
Employers' liability or workers' compensation coverCovers their own workers; a gap can fall back on you depending on the contractDates and insurer, or a signed statement that they have no employees30 days before expiry
Vehicle or plant coverNeeded where they bring vans, plant or access equipment onto siteCover type matches the equipment they actually bring30 days before expiry
Professional liability (professional indemnity)Only for subcontractors who design or specifyLimit, and how long the contract says it must be kept after completion30 days before expiry
Trade licence or registrationSome work cannot lawfully be done without itNumber and status checked on the issuing body's register, not on the subcontractor's say-soAt expiry, or yearly
Method statement, risk assessment, induction recordNeeded before work starts in a hazardous areaSigned off by someone competent and matched to the real taskEach new task or site
Operative cards and training certificatesProof that individuals can do work such as working at heightName matches the person; card type fits the task; expiry dateAt expiry, and before each new operative starts
Tax and registration paperworkNeeded to pay them correctly; what you need depends on where you trade, so ask your accountantLegal name matches the subcontract and the bank accountBefore first payment
Bank details formProtects you from payment fraudConfirm by phoning a number you already hold, never one printed on the formBefore first payment, and on any change
Warranty or guarantee documentsBacks the work after you have leftNames the product and the durationAt completion

If you are still choosing who gets onto your list at all, a prequalification step does the sifting before any certificate is chased; the tutorial on building and scoring a prequalification questionnaire covers it. For the onboarding side, see tracking insurance expiry and onboarding with AI.

Tier the subcontractors so effort follows risk

The eleven documents above do not apply equally. A scaffold firm working at height deserves more scrutiny than a driver dropping off blocks. Sort each subcontractor into one of three tiers when you add them, and let the tier decide which rows they get and how hard you verify. The tier is your decision, written down; an assistant cannot assess the risk of a task it has never seen.

TierTypical workDocuments requiredHow hard you verify
AWork at height, demolition, groundworks with plant, structural or hot workEverything in the table that applies, plus operative cardsRead every certificate; the broker confirms cover; method statement signed off before the first day
BStandard trades on a controlled site, such as electrical, plumbing, plastering and joinerySigned subcontract, liability cover, own-worker cover or a signed no-employees statement, method statement, licence where one existsRead every certificate; the broker confirms on the first job only
CShort visits with low risk, such as deliveries, cleaning or plant hire with no operatorSigned work order and liability coverRead the certificate; no broker call

The tiers also give you a cheap gap check. Paste the tier table and the sheet into an assistant and ask it to list, for each subcontractor, every required document that has no row yet. Those gaps become MISSING rows. It is the quickest way to find the paperwork nobody has ever asked for, which is a different problem from paperwork that has expired.

One sheet that does the counting for you

A spreadsheet counts days better than any person, and it does not need AI to do it.

Give every document its own row, and use these columns: subcontractor, contact, document, insurer or issuer, policy or licence number, cover or limit, start date, expiry date, days left, status, planned last day on site, last chased, and verified by with a date. Laid out in that order, the expiry date sits in column H, days left in I, status in J and the planned last day on site in K. Two formulas do the work, in Excel or Google Sheets, with the first row of data in row 2.

Days left (I2):   =IF(H2="","",H2-TODAY())
Status (J2):      =IF(H2="","MISSING",IF(H2<TODAY(),"EXPIRED",IF(H2-TODAY()<=14,"RENEW NOW",IF(H2-TODAY()<=30,"DUE SOON","OK"))))

Add conditional formatting on the status column: red for EXPIRED, amber for RENEW NOW and DUE SOON, grey for MISSING. Here are a few rows filled in as at 10 June.

SubcontractorDocumentCoverExpiryDays leftStatus
Groundworks firmPublic liability$5,000,0003 June-7EXPIRED
Roofing firmVehicle coverComprehensive11 June1RENEW NOW
Electrical firmPublic liability$2,000,00024 June14RENEW NOW
Electrical firmEmployers' liability$5,000,0009 July29DUE SOON
Plastering firmPublic liability$2,000,00030 September112OK
Scaffold firmOperative cardsNot recorded(blank)MISSING

The sheet has one blind spot, which is why the planned last day on site is a column. The plastering firm shows OK with 112 days left, yet if its work runs to 30 November the cover will lapse mid-job. Add a second rule that flags any expiry earlier than the planned last day on site, either as a line in your prompt or as a formula in a spare column:

Lapses mid-job (N2):   =IF(OR(H2="",K2=""),"",IF(H2<K2,"LAPSES MID-JOB",""))

Filter that column alongside the status column every week. A row can be OK on status and still fail here, which is exactly the plastering firm's case.

Turning a pile of PDFs and photos into rows

Typing dates from seventy certificates is the dull part, and the part an assistant does well. The risk is quiet misreading, so the prompt has to forbid guessing and demand a trace back to the file.

Below is text read from certificates of insurance. For each file, return one row:
file name | insured name | insurer | policy number | cover type | limit | start date | expiry date | certificate holder | additional insured wording present (YES, NO or UNCLEAR)
Rules: dates are day, month, year; write them like 12 Mar 2027. If any field is unreadable or ambiguous, write UNCLEAR. Never guess or infer. Do not summarise. Keep the file name in the first column so I can trace every row.

[paste the text or attach the files, one certificate per section]

A realistic answer is a table the same shape as the sheet, with the file name in column one. The checks that follow take a person two minutes per file, not ten.

  • Dates. An assistant can read a printed "03/04/26" as 4 March when the form is day first and the expiry is 3 April. That is why the prompt says day, month, year, and why the output spells the month in words, so a misreading cannot hide.
  • Numbers. Photographed policy numbers pick up O for 0 and 1 for I. Compare the number against the original before it goes into the sheet.
  • Names. If the insured name is a trading name and the subcontract names a limited company, the row is a mismatch even if it reads fine at a glance. Let the assistant list mismatches, and let a person decide.
  • Files. Do not feed in bank details, tax numbers or personal ID. Certificates for sole traders can carry a home address, so use a business plan for this work, not a free chatbot.

Name every saved file so the folder sorts by what matters: project code, subcontractor, document, then the expiry date, for example J104_electrical_PL_exp-2027-06-24.pdf. The file name in column one of the extraction table then doubles as your evidence trail, and a glance down the folder shows which certificates are about to run out.

Eighteen subcontractors, seventy-two items: the first sweep

Here is what the first full load looks like for the contractor with eighteen active subcontractors, using illustrative figures. Each subcontractor averages four tracked items (liability cover, cover for their own workers, vehicle or plant where relevant, and a licence or operative card), which makes seventy-two rows.

Status after loadingItemsWhat happens this week
EXPIRED4Final-stage message; a manager decides whether crews stand down
RENEW NOW (14 days or fewer)5Second-stage message with a deadline
DUE SOON (15 to 30 days)8First friendly reminder
MISSING6Request message with the exact document named
OK49Nothing
Total72

The six MISSING rows came from the tier gap check, not from the inbox. The 23 flagged items belong to twelve subcontractors, so twelve messages go out, not 23. Tell the assistant to group by subcontractor and list every outstanding document in one message; people reply to one clear request far more readily than to five fragments. As a planning figure, allow around ninety minutes for the first load, because half the certificates are photographs and someone has to chase the missing ones just to get started. After that, the weekly routine below takes about a quarter of an hour. Treat both as estimates to adjust with your own inbox.

Reminder drafts that get a reply

A reminder works when it names one document, gives one deadline and says where to send it. Most failed chasers are vague. Compare these two.

  • Vague: "Hi, just checking on that insurance thing. Can you send it over when you get a chance?"
  • Specific: "Hello [first name], your public liability certificate for [project] expires on [date]. Please ask your broker to send the renewed certificate to [email address] by [date, seven days before expiry]. If it has already renewed, send us the new one and we will update our records."

Four stages cover almost every case. The wording gets firmer, and the sender gets more senior, as the date approaches.

StageWhenSent byWhat it says
130 days before expirySite adminFriendly heads-up; names the document, the date and where to send it
214 days beforeProject managerSpecific deadline; says the crew cannot start new work without the renewal
37 days beforeCommercial managerFinal reminder; quotes the subcontract clause that requires current cover
4Day after expiryDirector or commercial managerFormal notice; states what happens now and how to restore access

Paste the flagged rows and ask for the right stage by status. This prompt produces the twelve grouped messages in one go.

Below are the subcontractor rows that need chasing this week (columns: subcontractor, contact first name, document, expiry date, status, project).
Group by subcontractor and write one short message per subcontractor listing every outstanding document.
Pick the tone from the status: DUE SOON = friendly heads-up; RENEW NOW = specific deadline; EXPIRED = formal notice; MISSING = polite request.
Use [first name] for the greeting and [your name] to sign off. Use only the dates in the rows; never calculate or invent a date or a deadline. Do not mention penalties or clauses.

Notice the last instruction. The assistant adds no clause numbers or penalties; a person adds those at stages three and four after checking the subcontract. Dates also come from the sheet, because date arithmetic is a classic weak spot for these tools. If you also chase progress updates, chasing subcontractors and progress updates with AI covers that side, and the same drafting rules apply.

Some replies will push back, usually with "you never asked for this on the last job". An assistant is good at drafting a reply that is warm and does not move: acknowledge the point, say the requirement now applies to every site from a stated date, and repeat the deadline. Whether to make an exception is yours to decide, and every exception goes on the sheet with a name and an end date.

Thanks for flagging that, and fair enough. It is now a standing requirement on all our sites from [date], so it applies to every subcontractor. Please send the [document] to [email address] by [date] so your team can start on [date].

Escalation wording, and who is allowed to send it

An escalation message is only as strong as the clause behind it. Before you let anyone write "your crew will be stood down", check that your subcontract actually requires current certificates and says what follows if they lapse. If it does not, the wording cannot invent the right, and the gap is worth fixing in your standard terms. The tutorial on drafting a subcontractor agreement with ChatGPT lists clauses worth checking, and a solicitor should review the final wording.

Once a person has confirmed the clause, a stage-four message can be drafted like this and then edited before sending.

Hello [first name],
Your [document] for [project] expired on [date]. Clause [number] of the subcontract requires cover to be in force whenever your team is on site.
From [date] we are unable to allow your team to carry on work at [site] until we hold a valid certificate. As soon as it reaches us at [email address], we will confirm access the same day.
If you believe cover is in force, please ask your broker to confirm that in writing today.
Regards, [your name], [role], [phone number]

Two guard rails apply. First, withholding payment because paperwork is missing can carry strict notice rules; take advice before using it, and do not rely on wording an assistant produced. Second, log every stand-down decision with the name of the person who made it and the time. A decision made by an assistant is not a decision.

The ten-point check a person does on every certificate

This part of the checklist is not delegable. Open the certificate itself, not the assistant's summary, and tick each point.

  1. The insured name matches the legal name on the subcontract, not just a trading name.
  2. The type of cover matches the requirement (liability, own-worker cover, vehicle, professional).
  3. The limit meets or exceeds the contract minimum.
  4. The policy period starts before the subcontractor's first day on site and covers their planned last day.
  5. The activities or trade described include the work they are doing for you.
  6. The certificate holder is the right legal entity of yours.
  7. Where the contract requires additional insured status or a waiver of subrogation, you have asked for the endorsement, not just a line on the certificate.
  8. The excess or deductible is one you can live with if they have to claim.
  9. The insurer is on your accepted list, if you keep one.
  10. For new or high-value subcontractors, the broker named on the certificate has confirmed the cover, using contact details you looked up yourself.

Then record who verified it and when, in the verified-by column of the sheet. No message and no site pass should say "approved" until that cell is filled.

Using the assistant as a second pair of eyes

Once your requirements are in a short table, an assistant can compare a stack of extracted rows against them and list where they fall short. It is a useful screen for the obvious failures, and a poor substitute for the ten points above. A sample result, for a contract that requires public liability of at least $2,000,000, the correct insured name and cover to a 30 November finish:

SubcontractorRequirementCertificate showsResult
Groundworks firm (renewal)Limit of at least $2,000,000$1,000,000; the expired certificate showed $5,000,000FAIL: limit cut at renewal
Electrical firmInsured name matches the subcontractA trading name; the subcontract names a limited companyCHECK: name differs
Plastering firmCovers work to 30 NovemberExpires 30 SeptemberFAIL: lapses mid-job
Roofing firmVehicle cover in forceIn force to 11 JunePASS today; renewal due in one day

Read every FAIL and CHECK yourself, and spot-check a few passes. The groundworks row is the one a date-only update would miss: the renewal arrived, but with a fifth of the old limit, so whoever typed the new expiry into the sheet would have marked it OK. An assistant that is right nine times in ten still lets a one-in-ten gap onto your site.

Edge cases that break the sheet

  • Mid-job renewals change the policy number. The sheet can end up with two rows for the same cover and a false EXPIRED on the old one. Keep one row per policy period and mark the old one superseded.
  • Subcontractors who trade under two names. Record the legal name first and the trading name second, and check the certificate against the legal name.
  • Their own subcontractors. A subcontractor may bring in a third tier. Your contract should say whether you need their paperwork too; if so, they get rows of their own.
  • Seasonal subcontractors. Do not delete a subcontractor who is quiet for six months. Mark them dormant with their last expiry date, and re-run the check before they return.
  • Auto-renewals with late certificates. Decide a grace period in advance (say seven days) and write it on the sheet, so it is a rule and not a favour.
  • Certificates that arrive on WhatsApp. Save the image into the shared folder under a consistent file name, and log it, or the file will be lost in a chat.

A 15-minute Monday routine

  1. Update (5 minutes). Add any certificates received in the last week, using the extraction prompt, and check the dates against the originals.
  2. Sort (1 minute). Filter the status column for everything except OK, then add any row flagged LAPSES MID-JOB.
  3. Draft (2 minutes). Paste the filtered rows into the grouped-messages prompt.
  4. Review and send (5 minutes). Read every message, fix any date or tone, and send. Stage-three and stage-four messages go to the manager for approval first.
  5. Log (2 minutes). Update the last chased column, and write a one-line note against anyone who has asked for an extension.

Measure it by a number rather than a feeling: how many items were EXPIRED on a site day over the last month. The target is zero, and every miss tells you which stage of the cadence needed tightening. If the company's own certificates sit in the same mess, the compliance calendar for licences, insurance and certificates covers the same idea for your own business.

Subcontractor paperwork questions that come up in week two

Can AI check that an insurance certificate is genuine?

No. It can read the printed fields and compare them with your requirements, but a certificate is only a summary of a policy at one moment and it can be wrong, out of date or altered. For new or high-value subcontractors, ask the broker named on the certificate to confirm the cover directly, using contact details you looked up yourself.

How early should I start chasing renewals?

Thirty days before expiry is a sensible first reminder, because brokers and insurers often need a couple of weeks to issue a renewal certificate. Follow with a firmer message at 14 days and a final one at 7. Chasing earlier than 30 days mostly produces certificates that are about to be replaced.

Can I let a tool send the reminders automatically?

Yes for the first two stages, once you have tested the wording on a handful of subcontractors and the sheet's dates are reliable. Keep the final reminder and anything that mentions standing a crew down or holding payment with a person, because those depend on the subcontract and on a judgement about the relationship.

What if a subcontractor says the broker is slow?

Ask for the broker's written confirmation that cover is in force and the new end date, with the full certificate to follow by a fixed day. Treat that as a short, recorded extension, not as approval, and note on the sheet who agreed it and when the real certificate is due.

Further reads

Sources: published legal guidance on what a certificate of insurance does and does not prove (a commercial law firm's article); Google Sheets and Excel date functions. Insurance, tax and payment rules for subcontractors vary, so check requirements with your broker, accountant and solicitor.

Want subcontractor paperwork chased without the nagging?

On a 1:1 call we'll look at how paperwork reaches you today, build the expiry sheet around it, and decide which reminders can be automated and which need a person.

Book a 1:1 call with me