WIP schedules that tie before your surety asks
I rebuild a contractor's WIP schedule with code, from the job-cost export you already have, and tie it to the books and to your CPA's schedules. AI reads contracts, change orders and invoices. It never does the math. Your controller signs, and a log shows what ran.
Who this is for
CFOs and controllers at general contractors and specialty subcontractors. And the people who read your numbers: your CPA, your surety agent, your bank.
If you close the books and then spend days rebuilding the WIP in a spreadsheet, this page is for you.
What contractor CFOs tell me
The surety asks for interim financials, and it takes weeks. A balance sheet, a P&L, AR aging and the WIP. The bond waits while the numbers get pulled together by hand.
The schedules have to tie. The WIP and the job schedules have to reconcile to the books before the CPA or the surety sees them. When they don't, someone outside the company finds it first.
Under billings show up late. They are the first sign a job is fading. Checked once a quarter, they show up after the damage is done. Checked weekly, one bad job stays one bad job.
"What will my auditor ask if AI touched this schedule?" A fair question. The answer has to be a record, not a promise.
How it works
AI reads, code does the math, a person signs, and the log proves it ran.
| Who | Does what |
|---|---|
| AI | Reads contracts, change orders, pay applications and invoices. Proposes cost codes and flags what does not match. |
| Code | Calculates percent complete, earned revenue, over billings and under billings from your job-cost export. Ties every job back to the books. |
| Your controller | Reviews the breaks and signs. Nothing leaves without a signature. |
| The log | Records what ran, on which file, and who approved it. That is what you show the auditor. |
AI never touches the WIP math. Percent complete is a calculation, and a calculation should give the same answer every time.
It works on top of what you already run. We start from the exports your systems produce today. Nothing gets replaced.
Common starting points: QuickBooks · Foundation · Sage · Viewpoint · Procore
Start with a surety-ready WIP check
Send me last quarter's job-cost export, your WIP schedule and your CPA's schedules. Code rebuilds the WIP, reconciles it to the books and to the CPA's numbers, and lists every break it finds.
You get the rebuilt schedule, the list of breaks and the code that produced them. It is yours to keep.
If it is useful, the next step is a monthly WIP and over/under report before close, so the surety's next request is a send, not a project.
Proof
On a real estate developer's quarterly reporting, the engine found nine formula errors in a quarter the client had already signed.
Same principle here: code checks every number, a person decides what to do about it.
Who you are working with
I started as a SOX auditor at KPMG, then ran information risk at JP Morgan. I build systems an auditor can follow, because I used to be the auditor.
What stays with your CPA and your surety agent
Tax, the audit or review opinion, and bonding advice stay with them. What changes is what they receive: schedules that tie, with a record of how each number was produced.
If you are a construction CPA or a surety agent and you have a contractor whose financials you keep chasing, send me the case.
Speaking
- FICPA Broward chapter, December 10, 2026: "Never Let the Model Do the Math"
- CFMA national webinar, February 17, 2027: "Where AI Belongs Near a WIP Schedule, and Where It Must Not Go"
Questions
Not the math. AI can read the contracts and change orders that feed it. Percent complete, earned revenue and over and under billings are calculated by code, the same way every time, and a person signs.
No. The work starts from the exports your systems already produce.
They stay in your own workspace. You own the files, the code and the log.
What ran, on which input, and who approved it. The log answers all three for every run.