---
title: "23 Jobs Closed Yesterday, 9 Cannot Be Invoiced. The Overnight Run Sorts That Before the 6:45 Huddle"
description: "Unattended overnight AI matches supply tickets, finds missing work orders and flags open permits, so a plumbing shop invoices 22 of 23 jobs by 8:15 a.m."
canonical: https://callsphere.ai/blog/23-jobs-closed-yesterday-9-cannot-be-invoiced-the-overnight-run-sorts
category: "Home Services"
tags: ["plumbing contractors", "servicetitan", "invoicing", "back office", "claude cowork", "chatgpt work"]
author: "CallSphere Team"
published: 2026-07-05T16:39:21.000Z
updated: 2026-07-05T16:39:21.000Z
---

# 23 Jobs Closed Yesterday, 9 Cannot Be Invoiced. The Overnight Run Sorts That Before the 6:45 Huddle

> Unattended overnight AI matches supply tickets, finds missing work orders and flags open permits, so a plumbing shop invoices 22 of 23 jobs by 8:15 a.m.

Twenty-three jobs closed yesterday. Nine of them cannot be invoiced this morning, and nobody in the office knows which nine until the office manager opens all twenty-three one at a time. That is the actual condition of most plumbing service shops at 7 a.m., and it is why the average residential service invoice goes out two to four days after the truck left the driveway.

The reasons the nine are stuck are boringly familiar. Three have no signed work order because the homeowner was at work and the tenant signed nothing. Two are commercial jobs where the property manager's purchase order number never made it into the job. Two have photos of the finished install but not the required before shot. One has a permit number typed into the notes field instead of the permit field. One has $612 of Ferguson material on the truck account that was never posted to the job, so the job cost is wrong and the invoice would be wrong with it.

## The workaround everyone calls a process

Most shops handle this with a person and a highlighter. The office manager or the dispatcher runs a morning sweep through ServiceTitan, Housecall Pro or FieldEdge, opens the completed jobs one by one, finds what is missing, and starts texting techs who are already on their first call of the day and are not going to answer. Anything that cannot be fixed by lunch slides to tomorrow. Anything that slides twice becomes an argument about whether the customer will even remember the work.

Then the same person does the second sweep: matching supply house tickets to jobs. Ferguson, Winsupply, the local wholesaler, and whatever went on a credit card at Home Depot Pro at 6:45 in the morning. Then the third sweep: which memberships expire this month, which annual backflow test reports are coming due, which permits are still open with no final inspection scheduled. Nobody finishes all three sweeps on a busy week. In freeze season nobody finishes the first one.

## What changed: work that runs while the shop is dark

The development that matters for this is not a smarter chatbot. It is that as of 2026, AI assistants can be given a goal and left alone for hours. ChatGPT Work, which launched on 9 July 2026, and Claude Cowork, which launched 12 January 2026 and reached mobile and web in July, both accept a plain-English instruction, connect to the apps and files you already use, and keep working unattended — long enough to walk every closed job, every supply ticket and every open permit between close of business and the morning huddle.

**The practical change for a plumbing shop is that the morning sweep stops being work you do and becomes a queue you review, with the exceptions already separated from the clean ones and the reason for each exception written in one sentence.**

```mermaid
flowchart TD
  A["9:00 pm — day's jobs close in ServiceTitan"] --> B["Overnight run starts"]
  B --> C["Match Ferguson and Winsupply tickets to job numbers"]
  B --> D["Find invoices missing a signed work order or PO"]
  B --> E["Check open permits and unscheduled final inspections"]
  B --> F["Pull memberships and backflow tests due in 30 days"]
  C --> G["Reviewed queue built, exceptions on top"]
  D --> G
  E --> G
  F --> G
  G --> H["6:45 am huddle — service manager clears nine items"]
```

## What the 6:45 huddle looks like when the queue is already sorted

The service manager opens one screen. Fourteen jobs are marked ready to invoice, already checked against the flat-rate task codes, with material posted and totals reconciled. Nine are held, each with a single line: *Job 41882, Rivera — tenant signature missing, drafted text ready for Danny.* *Job 41890, Oakmont Apartments — no PO on file, last three jobs for this property used PO prefix OAK-, drafted email to the property manager ready.* *Job 41877 — Ferguson ticket 88-4412 for a 50-gallon Bradford White matched to this job, $612, confirm to post.*

The huddle turns into approvals. Danny gets the text at 6:50 and gets the signature at his first stop. The Oakmont email goes out before the property manager has finished her coffee. The Ferguson ticket posts with one tap. By 8:15 the office manager is invoicing twenty-two of twenty-three jobs instead of fourteen, and she has not opened a single job to find out what was wrong with it.

The second thing the overnight run produces is the list nobody ever gets to: seven memberships expiring in 30 days with drafted renewal calls, four backflow assembly test reports due to the water purveyor next month with the customer names and assembly serials attached, and two permits pulled in April with no final inspection requested. That last one is the quiet killer — an open permit surfaces at closing when the homeowner sells, and it comes back to you as an angry phone call two years later.

## The money is in the calendar, not the clock

The easy pitch is hours saved. The real number is when the cash arrives. Here is a worked example with the assumptions stated so you can swap in your own.

Assume a six-van residential and light commercial shop. Twenty-two completed jobs a day, five days a week, average invoice $740. Assume 35% of invoices currently go out three days late because something was missing, and that the overnight review cuts that to 8%.

| **Assumption** | **Today** | **With the overnight queue** |
| --- | --- | --- |
| Jobs per week | 110 | 110 |
| Invoices delayed 3 days | 38.5 | 8.8 |
| Dollars sitting uninvoiced 3 extra days | $28,490 | $6,512 |
| Office hours on morning sweeps per week | 9.0 | 2.5 |
| Office cost at $28 per hour loaded | $252 | $70 |

The office labor saving is about $182 a week — call it $9,500 a year, which is real but not the headline. The headline is roughly $22,000 that stops living in limbo at any given moment, and the jobs that would otherwise have been written off entirely because the missing signature was never chased. Most shops of this size can name two or three write-offs a year in the $600 to $2,000 range that started as a missing work order. One of those covers the tool.

## Where to keep a human in the loop, without exception

Do not let anything send an invoice on its own. The overnight run should prepare, match, draft and flag — and stop. A plumbing invoice is a legal document that supports a mechanic's lien claim in most states, and if the amount is wrong because a task code was misapplied, you have handed a commercial customer a reason to dispute the whole thing. Preparation is safe. Sending is not.

Do not let it write to the customer's balance, issue credits, or apply discounts. Do not let it email a commercial general contractor about payment; that relationship is your operations manager's and the tone of one email can cost you a schedule slot next quarter. And keep permits and code questions with your licensed master plumber — the AI can tell you a permit is open and the final was never requested, but it cannot decide whether the work as installed is going to pass.

There is also a data problem worth naming. If your techs habitually dump everything into the notes field rather than the proper fields, the overnight review will do exactly what your office manager does today, only faster and with more confidence than it deserves. Clean up the two or three fields the run depends on — PO number, permit number, equipment serial — before you turn it loose.

## Start with one sweep, not three

Pick the supply house match. It is the most mechanical, the easiest to check, and the one where mistakes are cheapest. Give the assistant read access to your field management system and your supply house statements, tell it to match yesterday's tickets to open jobs and list what it could not match, and run it for two weeks while your office manager checks its work against her own. When she stops finding errors, add the missing-signature sweep. Do not start with permits; that one needs the most judgment and will sour the whole thing if it goes sideways early.

## Frequently asked questions

### Does this replace my office manager?

No, and shops that frame it that way get bad results. It replaces the part of her morning that is opening records to discover a problem. What she does after the problem is known — the call to the property manager, the judgment about whether to eat a $180 diagnostic fee to keep a good customer — is the part you are paying her for and the part that keeps money in the business.

### Can it work if I run Housecall Pro instead of ServiceTitan?

Yes. The overnight approach does not care which field management system you run as long as it can read job records and attachments. The practical difference is how much of your data lives in structured fields versus free text. Shops on any of these systems that use the equipment and PO fields properly get more out of it than shops that use the notes field for everything.

### What happens during a freeze event when we do 90 calls a day?

That is the week it earns its keep, and also the week to be careful. Volume is exactly when the office falls behind and when jobs get closed with sloppy paperwork. Expect the exception queue to triple. Plan for a second person to clear approvals during a freeze rather than assuming the queue clears itself.

### How long does an overnight run actually take?

For a shop closing twenty to thirty jobs a day, the work takes a fraction of the night. The reason it runs overnight is not that it is slow — it is that everything it needs has settled by then and nothing new is being changed underneath it. Kick it off after the last tech closes out and have the queue waiting before the first coffee.

Worth a mention on the front end of all this: the overnight queue only helps with jobs you already booked. The calls that come in at 8:40 p.m. during a freeze, or while the whole office is in the morning huddle, are a separate leak. [CallSphere](https://callsphere.ai) builds AI voice and chat agents that answer the phone and the website chat around the clock, book the appointment into your schedule, and hand you the caller's details in the morning — so the overnight work and the overnight calls both show up sorted.

---

Source: https://callsphere.ai/blog/23-jobs-closed-yesterday-9-cannot-be-invoiced-the-overnight-run-sorts
