You finish a run of calls for a property group you've billed for two years. The work's clean, the techs logged everything, and the invoice goes out Friday like always. Monday it comes back from their accounts payable desk with one line: PO exhausted, no approval on file, please resubmit against a valid purchase order.
Now you're stuck. The money's spent, the labor's paid, and the only thing standing between you and getting paid is a purchase order number that ran out somewhere in the middle of last month. Nobody told you. Nobody told them. The number just quietly crossed zero while your trucks kept rolling.
A blanket purchase order is a spending cap a commercial customer sets up so you can keep working against one approved number instead of chasing a signature for every call. It's a good arrangement right up until it runs dry. When it does, the next invoice bounces, the account goes on hold, and dispatch keeps sending crews to a job that's gone unbillable. The fix isn't a fancier accounting system. It's a running tally and a heads-up that goes out before the number's gone, not after.
Track what each PO actually covers
Before you can watch a PO drain, you need to know what's in it. Most shops have the number written down somewhere. Fewer have the rest, and the rest is what trips you up.
For every open blanket PO, keep these five fields in one place:
- The PO number and who it covers. A property group with six buildings may hand you six separate POs, or one that spans all of them. Know which.
- The authorized amount. The cap. This is the ceiling you're billing against.
- What it pays for. Labor only, labor plus materials, one site or several, emergency calls or scheduled work. A PO written for maintenance won't cover the compressor you swapped on an after-hours run.
- Invoiced to date. Every dollar you've billed against that number, added up.
- Remaining balance. The cap minus what you've invoiced. This is the one you watch.
One more field earns its place: the expiration date. A lot of blanket POs cap both the dollars and the calendar, so a number with plenty of room left can still die on June 30th. Track the date right next to the balance and you'll catch whichever runs out first.
Watch the balance, flag at 80 percent
A PO that's 80 percent used isn't an emergency, and that's the whole point. You want to find out while there's still room to finish the work in front of you and still get a renewal cut without anybody scrambling.
Zero is the wrong trigger. By the time the balance hits zero you've already got invoices you can't send, and the facilities manager is getting your renewal request at the same moment their AP desk is bouncing your bill. Everybody's annoyed, and it reads like your fault for noticing late.
Eighty percent gives you a cushion. On a $20,000 PO that's a flag at $16,000 used, with $4,000 still live, plenty to cover a call or two while the paperwork catches up. Set the threshold wherever your average ticket says it should sit. If a single job can run $3,000, flag earlier. If you're billing small recurring tickets, 80 percent is fine.
Build the running tally
The tally is simple arithmetic. Every time an invoice goes out against a PO, subtract it from the remaining balance. When the balance drops below your threshold, the account gets flagged before dispatch schedules the next crew.
You can run this in a spreadsheet, and plenty of shops do. One row per PO, a column for the cap, a column for invoiced-to-date, a formula for the balance, and a cell that turns color at 80 percent. It works as long as somebody updates it every time they cut an invoice, which is exactly the step that gets skipped on a busy Friday.
Where automation helps is closing that gap. A small setup can read each invoice as it's created, match it to the right PO, subtract the amount, and drop a flag on your desk the moment an account crosses the line. Nobody has to remember to update a sheet. The system does the subtraction and raises its hand.
Be honest about what it can't do, though. The automation only knows what you told it, so the cap, the coverage terms, and the expiration date have to be entered right when the PO comes in. It can flag the account, but it can't decide whether to keep dispatching or write the renewal note itself, a person still reads the flag and sends the request. And if an invoice gets coded to the wrong PO, the tally's off until someone catches it. Good data in, useful flag out.
The note that gets the PO extended
When a PO crosses your threshold, the renewal request goes to the facilities manager, not their AP inbox. AP processes what's already approved. The manager is the one who can approve more.
Keep the note short and give them everything they need to say yes in one reply. A week of back-and-forth usually means your first message made them go dig for numbers. Hand them the numbers. Something like this does the job:
Hi Dana, a heads-up on PO 4471 for the Westpark buildings. We're at about $16,200 of the $20,000 authorized, so roughly $3,800 left. We've got two scheduled calls and a filter change coming before month's end that'll use most of it. Can you extend the PO or issue a new one so we don't have to pause service? Happy to send the invoice detail if your AP team needs it for the file.
That note works because it names the PO, shows the math, says what's coming, and asks one clear question. The manager can forward it straight to whoever cuts the number. You're not asking them to go find out how much they've spent with you. You already told them.
Worth doing this week
- Pull your open blanket POs into one list. Number, customer, site, cap, invoiced to date, balance, and expiration date for each.
- For any PO where you can't find the cap or the terms, call the customer and get them before you bill another dollar against it.
- Set your flag threshold. 80 percent is a safe start; move it earlier if your tickets run large.
- Write your renewal note once and save it as a template, so it's a two-minute send instead of a blank page every time.
- Decide who owns the flag. One person who sees it and makes the call to send the renewal before the next crew rolls.
If wiring the tally to flag itself sounds like one more thing you don't have time to build, that's the kind of small, boring automation we set up for Houston service shops. The arithmetic was never the hard part. Remembering to do it on a Friday was.