Skip to main content

Construction Bookkeeping: How to Handle High-Volume Invoice Entry

·8 min read

Construction companies deal with more invoice complexity than almost any other industry — mixed labor/materials, lien waivers, retention, change orders. A guide for bookkeepers handling construction AP.

Why Construction AP Is in a Category of Its Own

Every industry has its invoice quirks, but construction AP stands out for sheer complexity. A mid-size general contractor running $5M–$20M annually might deal with 15–40 subcontractors, 30+ materials vendors, equipment rental companies, permit agencies, and inspection services — all sending invoices in different formats, on different schedules, with different billing structures.

Add in retention, change orders, lien waivers, certified payroll requirements, and job cost allocation, and you have a set of AP challenges that standard bookkeeping tools and workflows weren't designed for.

This guide is for bookkeepers and controllers handling construction AP. It covers what makes construction invoices different, the key fields that matter, and how to build a workflow that handles volume without losing accuracy.


Common Construction Invoice Types

Subcontractor invoices (AIA G702/G703 format)

The AIA G702 Application for Payment is the standard billing format for construction subcontractors. It's a two-page document: the G702 is a summary (scheduled value, work completed to date, stored materials, retention, net amount due), and the G703 is the continuation sheet (line items by cost code or work breakdown structure).

These are structured documents with specific fields — but they're still PDFs, often scanned, and the line items on the G703 can run many pages.

Materials and supply invoices

Lumber yards, concrete suppliers, hardware distributors — these typically look like standard commercial invoices but may include job site delivery addresses, purchase order references, and delivery confirmation numbers that need to be captured for job cost matching.

Equipment rental invoices

Daily or weekly rental rates, fuel surcharges, delivery/pickup fees, and utilization periods. Common from companies like United Rentals, Sunbelt, or local equipment dealers.

Time and materials (T&M) invoices

Labor hours at specified rates plus materials markup. These are common from mechanical, electrical, and specialty subs. They require validating that the hours × rate math is correct and that the materials markup is within the contracted percentage.


Key Fields on Construction Invoices

Standard AP fields (vendor, invoice number, date, total) are necessary but not sufficient for construction. The additional fields that matter:

Job number / project code: Which job is this invoice for? This is the routing field for job cost accounting. Without it, the bill can't be allocated.

Cost code / phase code: Within the job, which cost category? Concrete, framing, electrical rough-in, etc. Most construction accounting systems (Sage 300 CRE, Viewpoint, Foundation, or QBO with class tracking) use multi-level cost codes.

Retention amount: The amount withheld from this payment per contract terms (typically 5–10%). On a $10,000 subcontractor invoice with 10% retention, $1,000 is held until project completion. This must be tracked separately from the payable amount.

Lien waiver status: Has the sub or vendor provided a lien waiver for this billing period? In many jurisdictions, payment should not be released without a conditional lien waiver, and unconditional waivers are required at project close.

Change order reference: Is this invoice billing for base contract work or an approved change order? Change order invoices need to be tied to the corresponding approved change order number.

Certified payroll: For public works projects, subcontractors may be required to submit certified payroll with each invoice. Tracking whether it was submitted is part of invoice approval.


Retention / Retainage: How to Handle It in the Books

Retainage is the percentage withheld from subcontractor and supplier payments until project completion (or a contractually defined milestone). It's one of the most mishandled items in construction AP.

How it appears on invoices: The G702 shows the gross amount earned, the retention withheld (as a percentage and dollar amount), and the net amount currently due. A subcontractor might bill $10,000 earned with $1,000 (10%) retention held, resulting in $9,000 due now.

How to record it in QBO/Xero:

  • Enter the full $10,000 as the bill amount (the full earned value)
  • Code $9,000 to the appropriate job cost account (the payment portion)
  • Code $1,000 to a Retention Payable liability account (not an expense)
  • When retention is released at project close, pay the Retention Payable balance

If you enter only the $9,000 and ignore retention, the job cost records are understated and you'll have unreconciled payables at project close.

Tracking retention aging: Create a retention aging report — who is owed retention, on which projects, and for how long. Subs have legal rights to retention release timelines in most states, and GCs can face penalties for holding it beyond contract terms.


Change Orders: What to Watch For

A change order is an approved modification to the original subcontract scope and price. Change orders are common on construction projects — a mid-size project might have 20–50 before close.

On invoices, change orders typically appear as:

  • A separate line item or schedule on the G703 (separate from base contract)
  • A separate invoice entirely, referencing the change order number
  • Rolled into a lump-sum progress billing with a change order schedule attached

What to verify before posting:

  • Is the change order number on the invoice referenced in the project's approved change order log?
  • Is the billed amount within the approved change order value?
  • Is the change order marked "approved" (not "pending" or "disputed")?

Pending change orders should not be posted as approved payables. Flag them for PM review.


Lien Waivers: The AP Hold Mechanism

A lien waiver is the sub or vendor's waiver of their right to place a mechanic's lien on the property, in exchange for payment. There are two types:

Conditional lien waiver: Waives lien rights conditioned on receipt of payment. Provided before payment is released. This is the standard document to require before paying a progress billing.

Unconditional lien waiver: Waives lien rights permanently. Provided after payment is confirmed received. Required at project closeout.

How to track in AP workflow:

  • Create a lien waiver tracking column on your invoice register (or use a field in your construction accounting system)
  • Don't process payment for any subcontractor invoice until the conditional lien waiver for that billing period is in hand
  • At project close, collect and file unconditional waivers for all subs and suppliers before releasing final retention

Job Costing in QBO and Xero

Both QBO and Xero support job cost tracking, though they implement it differently.

QBO: Uses Customers/Projects as the job dimension, and Classes for cost categories. Set up each construction project as a Customer or sub-customer (for a GC with multiple active projects). When entering bills, assign the Customer:Job and Class to each line item.

Xero: Uses Tracking Categories for job/cost code allocation. Set up one tracking category for Job Number and another for Cost Code, then assign them on each bill line item at entry.

Neither is as sophisticated as dedicated construction accounting software (Sage 100 Contractor, Foundation, Procore), but both work adequately for smaller GCs and subcontractors if the chart of accounts is structured correctly.


Processing Tips for High Invoice Volume

Batch by project/phase. Sort your invoice stack by job number before entering. All invoices for Project 24-07 get entered together, with the same Customer:Job coding. This reduces context-switching and makes it easier to spot if an invoice is coded to the wrong job.

Cross-reference against contract amounts. For each subcontractor, maintain a running total of what's been billed to date vs. the contract amount (including approved change orders). Any invoice that would push billing over contract should be flagged before entry, not after.

Validate job numbers before posting. If an invoice has a job number on it, verify that job number exists in your system and is still active. Invoices billing to closed jobs are a common error.

Use a staging register. Before posting anything to QBO/Xero, maintain a spreadsheet register of all invoices in the current batch: vendor, invoice number, job, amount, lien waiver status. This gives you a complete view of the batch, makes duplicate checking easy, and provides an audit trail if a dispute arises later.


How AI Extraction Handles Construction Invoice Variety

Construction invoices are some of the hardest for extraction tools to handle — AIA format, multi-page G703 continuation sheets, T&M summaries with attached backup. Standard OCR tools built for simple commercial invoices often fail on these formats.

SkipEntry handles construction invoice variety by processing the full document regardless of format or page count. On AIA G702/G703 invoices, it extracts the scheduled value, work completed, retention, and net amount due from the G702 summary, and captures line-level detail from the G703. For T&M invoices, it extracts hours, rates, and materials separately. Custom fields (job number, cost code, change order reference) can be extracted into dedicated columns in the output CSV, which maps directly to QBO/Xero import fields.

For a construction bookkeeper processing 200+ invoices per month across multiple projects, this means spending review time on the fields that require judgment (account coding, change order verification, lien waiver status) rather than on transcription.


Month-End Close for Construction AP

Construction month-end has a few additional steps beyond standard AP close:

AP aging by project: Run AP aging segmented by job. Any significantly overdue bills may indicate disputes or invoice routing delays that need to be resolved before the period closes.

Retention aging: Separate aging report for the Retention Payable balance. Flag any retention owed to subs where the contractual release date has passed.

Lien waiver reconciliation: Verify that conditional lien waivers on file correspond to all payments made in the period. Missing waivers on paid invoices represent potential lien exposure.

Contract vs. billed reconciliation: For each active subcontract, confirm that the total billed to date doesn't exceed the contract value + approved change orders. Any overbilling should be investigated before the month closes.

WIP schedule: For GCs, the Work in Progress schedule ties together what's been billed (by the GC to the owner) and what's been spent (AP) per project. A clean AP close feeds an accurate WIP, which is what lenders, bonding companies, and owners actually look at.

Try SkipEntry free

50 pages free. No credit card required. See how AI extraction works on your own invoices.

Start free trial