May 22, 2026
Why Your Invoices Sit Unpaid Even Though the Work Is Done
The check is late because something on the invoice (or behind it) raised a question the customer never asked. Three places that question is born, and how to close all three.
You drove away from the final walkthrough on a Friday. The homeowner shook your hand, the punch list was clean, your bill went out the same evening. Today is twenty-two days later. The check is still not in your account.
This is not because the customer is dishonest. In most cases it's not even because they're slow. It's because something on the invoice, or behind it, created a question they didn't bother to ask you. The easy answer to a question you didn't get asked is "I'll deal with it next week."
There are three places that question is created. Fix all three and the gap between handshake and deposit slip collapses.
Place one. The invoice itself raised a question.
A homeowner reads a contractor's invoice the same way they read a restaurant check. They look for the total, look for anything that doesn't match what they remember ordering, and pay if nothing is weird.
Anything that triggers "wait, what is this?" puts the bill on the kitchen counter for another week.
Eight elements every residential invoice needs.
- Your business identity at the top. Name, license number, phone, email, mailing address. If you're insured and bonded, say so. The header is the first signal that this is a real business, not a guy looking for cash.
- The customer's name and the job site address. Sometimes those addresses are different. Investment properties. Parents paying for a child's house. Put both. The bill goes to whoever pays. The work happened where it happened.
- An invoice number you didn't make up. INV-2026-018, INV-2026-019, INV-2026-020. Sequential. It doesn't matter what the prefix is. It matters that no two invoices share a number. When a customer says "your last invoice," you both know which one.
- Issue date and due date. Both. Net 14 or net 30, you decide, but the due date is on the page.
- Line items that match the proposal they signed. If the proposal said "Plumbing rough-in: $4,200," the invoice line is identical. Different wording reads as a new charge.
- Materials separated from labor where it matters. Some customers want to see it for personal accounting. Some don't care. The ones who care will ask if it's missing.
- Change orders shown on their own. Never melted into the original phases. A change order on the invoice references the signed CO number ("CO-002: relocate sink rough, signed Feb 3").
- A balance after deposits. The customer paid you 30 percent at signing. The invoice shows the contract total, subtracts that 30 percent, and the balance due is the only big number on the page. A bill that asks for the whole contract amount without crediting the deposit reads as a scam even when the math is fine.
One small move that pays for itself. Put the amount due and the due date in a banner at the top of the page, not just buried at the bottom. Homeowners skim. Give them no excuse to miss the number.
Place two. How you bill creates friction.
There are two standard ways to bill residential work, and the right one depends on how the job is structured.
Milestone billing. You invoice when a phase finishes. Demo done, send the bill. Rough-in passes inspection, send the bill. Tile complete, send the bill. This works well on remodels under $50,000 where each phase has a clear "done."
Draw schedule. You write the schedule into the contract before work begins and the customer agrees to pay specific percentages at specific points. Common splits.
- 50, 40, 10. Half at start, 40 percent at rough-in pass, 10 percent at the final walkthrough sign-off. Good for projects $15K to $50K.
- 30, 30, 30, 10. 30 percent to start, 30 percent at rough-in, 30 percent at finishes underway, 10 percent at sign-off. Better for projects $50K to $150K where the rough-to-finish gap is long.
- Equal monthly draws. Additions, ADUs, full gut remodels. The job runs four to seven months, the customer wants predictability, you want the cash to land on a rhythm.
The 10 percent retainage at the end is the customer's leverage to make sure you close out the punch list, and it's standard. They expect it. If you skip it they will wonder why and ask their friend.
When a draw schedule lives in the contract, the invoice references it. "Draw 2 of 4 per contract dated January 14." You're not asking for money. You're confirming the agreement they already signed.
Allowances honestly reconciled
Allowances are where the largest reconciliation arguments happen, because the customer remembers the allowance number and forgets the upgrade conversation.
You quoted $3,800 for vanity hardware as an allowance. They picked $5,200 in oil-rubbed bronze pulls from a boutique catalog. The invoice should show.
- Hardware allowance per contract: $3,800
- Hardware actual (oil-rubbed bronze, vendor A): $5,200
- Allowance overage: $1,400
And the inverse. If hardware came in at $3,100, the customer gets a $700 credit on the next invoice. Pocketing allowance savings is the kind of small dishonesty that destroys the referral business you actually need.
Change orders that don't quietly disappear
Change orders get their own block on the invoice. The customer signed each one when it came up, so each has a number. The invoice references the number, the date, and the dollar amount. Burying a change order inside a phase line reads as a hidden charge, even if it isn't.
Place three. The books and the field tell different stories.
This is the friction you can't see, and it's responsible for more late payments than anything else.
You send the invoice from one tool. A Word doc, a spreadsheet, a project app. Then you (or your bookkeeper) re-key the same invoice into QuickBooks so the books have it. Two versions of the same invoice now exist. They almost always disagree on something small. A transposed digit. A missing line item. A total that's off by the cost of one fixture.
Three weeks in, the customer's CPA calls the customer to ask about a $48 discrepancy between the invoice they have and what their books show. The customer pings their bookkeeper. The bookkeeper pings you. You promise to "double-check it." Now the invoice is parked while three offices figure out who has the right number. Two more weeks evaporate.
This is the double-entry tax. Construction is the largest single industry on QuickBooks (17 percent of all users) and roughly four out of five contractors wait more than 30 days to be paid. Billing errors are one of the named reasons. Every job where the invoice you sent isn't the invoice your books carry is a job where the money will be late.
The cure is structural. The tool you build the invoice in should push the invoice into your accounting system automatically. Same customer. Same line items. Same total. Without you typing it twice. If you mark the invoice paid in the field, it should mark paid in the books. If you void it, it should void in both places.
When the books and the field are the same data, your bookkeeper has fewer questions, your customer's CPA has nothing to flag, and the only thing standing between you and a deposit is the customer's signature on their own check.
Five specific reasons checks come in late
1. The invoice landed in a personal Gmail at 11pm on a Friday. The homeowner glances at the preview, intends to look at it Monday, and the email rotates to page two of their inbox. Send invoices on Tuesday or Wednesday mornings.
2. You billed the milestone three weeks after it actually closed. The further you are from the work in the customer's memory, the more they second-guess. Bill inside 48 hours of the work finishing.
3. The PO number or job number wasn't on the invoice. Property managers, investors, and anyone with a bookkeeper expect a reference number. Without it your invoice waits behind every invoice that included one.
4. The line item wording doesn't match the proposal. "Electrical service upgrade" on the proposal becomes "Panel work" on the invoice. The customer's eyes catch the difference and they file the bill in the "ask later" pile. They never actually ask.
5. They lost the invoice and felt awkward asking for another one. Send a follow-up at day fourteen. Short, polite, a fresh copy attached. Don't make them ask.
Solis is the system where the bill and the books agree
The reason the cash-collection loop is broken for most small GCs is that the loop runs across four tools that don't know about each other. The proposal lives in one place, the invoice in another, the payment log in a third, and the books in a fourth.
Solis runs the whole cycle on one phone. The bid you wrote becomes the proposal you sent becomes the invoice you billed becomes the line that hit the books. Mark paid in the truck. Posted in QuickBooks before you start the engine. The customer's CPA gets the same numbers your bookkeeper has, which means nobody needs to ask anybody anything.
The invoices you've already sent are sitting in the inbox of a homeowner who isn't fighting you, just confused. Stop giving them a reason to wonder.
Join the waitlist and we'll show you what closing the loop looks like.