On our roadmap

Why Construction Invoices Resist Automation

Job costing, retainage, and pay apps make construction AP a harder problem than it looks.

Accounts payable automation is a solved problem in most industries. Software reads the invoice, matches it to a purchase order, routes it for approval, and cuts the payment, with human attention reserved for exceptions. Construction firms that buy these tools tend to discover the same thing within a quarter: the software handles the office supply invoices beautifully and stalls on everything that matters. This article is about why construction invoices resist automation, and what a system would have to understand before it could genuinely help.

The core document in construction billing isn't an invoice in the ordinary sense. It's an application for payment—a claim about progress. The standard convention, embodied in the AIA's G702 and G703 forms, has the contractor certify the value of work completed to date against a schedule of values, line by line, with columns for previous applications, work completed this period, materials stored on site, retainage withheld, and the balance to finish.

Every one of those columns is a place where this month's paperwork depends on last month's. An application isn't evaluated on its own; it's evaluated against the contract sum, the approved change orders, the prior applications, and what the project team believes actually happened on site. A generic AP tool that extracts "vendor, date, amount" from the front page has captured almost none of what the reviewer needs to decide whether the number is right.

Construction accounting doesn't post an invoice to an expense account and move on. Each line must be coded to a job, a cost code, and usually a phase, because the entire financial control system—budget versus actual, work-in-progress reporting, forecasting—depends on costs arriving in the right bucket. A drywall sub's application might span four buildings and a dozen cost codes.

The coding decision requires context the invoice doesn't contain. Someone has to know that this vendor's work on this project belongs to cost code 09-250, and that the change order work billed on page three goes somewhere else. In most firms that knowledge lives with project managers and project accountants, which is why invoice approval routes through both, and why the routing itself becomes a source of delay: the document sits in one inbox, then another, collecting questions.

In most states, paying a subcontractor without collecting the right lien waiver is how a GC ends up paying twice. So the payment cycle carries a parallel document exchange: a conditional waiver with the application, an unconditional waiver after the check clears, each in the statutory form the state requires, each for the correct amount and period. The waiver review is its own reading-comprehension task, and it gates the payment. Any automation that processes the invoice but not the waiver has automated the half of the workflow that wasn't blocking anything. (Bex approaches this territory from the other direction today—Bex Liens reads and tracks the lien notices that arrive on paper—but waiver exchange during payment is a distinct workflow.)

Underneath all of this is the familiar construction document problem. One sub bills on a clean G702 produced by billing software. Another sends a spreadsheet with its own column conventions. A third sends a PDF scan of a printed form with handwritten corrections, and a supplier sends a plain invoice with no schedule of values at all. Template-based extraction tools, including the AI-assisted ones tuned on standard commercial invoices, degrade badly across this variety. The result in practice is that "automated" AP in construction often means software that files the document and a person who still keys in the numbers.

The delays compound quietly. Between PM review, accounting review, waiver collection, and the monthly draw cycle, the span from a sub's application to payment is typically measured in weeks—one reason payment speed is a perennial grievance between GCs and their trade partners.

The pattern in the failures is consistent: each one is a place where processing the document requires reading it the way an experienced project accountant does—recognizing a pay application as a pay application, checking it against the schedule of values and the retainage terms, knowing the firm's cost structure, noticing that the waiver is conditional when it should be unconditional, and writing back to the sub in plain language when something doesn't reconcile. That combination—heterogeneous document comprehension, customer-specific business rules, and a correspondence loop with an outside party, all with a human approving the result—is not what generic AP software does. It happens to be a precise description of the machinery Bex Core already runs for other document types, from observation reports to insurance certificates, with a human approval gate on every commitment.

A plain statement first: Bex does not automate invoices, pay applications, or accounts payable today. It is on our roadmap, and it sits there rather than in the product because we build modules in the order our customers push us hardest, the way the existing five came to exist. If invoice intake is the workflow eating your back office—if your project accountants spend month-end re-keying pay applications and chasing waivers—we want to hear exactly what your version of the problem looks like, down to the document formats and the approval path. Specific requests shape what we build next, and custom development for a particular firm's workflow is always a conversation we're willing to have. The email address is below.