Sub bills and payments, two-way with QuickBooks

A $10,000 sub bill paid $6,000 in QuickBooks shows $4,000 owed here — partial payments, voids, reversals and vendor credits kept the same on both sides, with recorded and actually sent kept apart.

The operating system built exclusively for post-frame and barndominium builders.

Part of The Money Trail
What it is

Outside subcontractor bills on the Accounting tab: one bill or several per subcontract PO (progress billing, optional retainage), each with its payments. Enter a bill here or in QuickBooks and the other side gets it, matched by its QuickBooks id so nothing is entered twice. A payment made in QuickBooks lands here within minutes; one marked sent here becomes a QuickBooks bill payment. Record payment never sends money — it writes a payment down, and only Mark sent tells QuickBooks the cash has gone. Built exclusively for post-frame and barndominium builders, and off until an account turns it on.

Also called: vendor bills · accounts payable · sub invoices · bill payments · partial payments · QuickBooks bill sync · paid in QuickBooks · outstanding balance

See it, piece by piece
01

One balance, whichever side paid it

Try it

Every bill and payment is matched by its QuickBooks id. Valley Plumbing's $10,000 bill was paid $6,000 in QuickBooks — the payment comes back marked from QuickBooks, already sent, read from the line that pays this bill — so it reads $4,000 owed and 9 days late. Above the list: what's outstanding, how late it is by due date, what's recorded but not sent, and retainage held. Bills can start from a subcontract PO, and progress bills on one PO can't pass its total.

Accounting — Bills

Outside subcontractor bills and what’s been paid on them — the same here and in QuickBooks, whichever side the payment was made on.

Outstanding
$14,300
3 open · 2 late
Over 30 days late
$0
Recorded, not sent
$800
written down — money hasn’t left
Retainage held
$750
due when the work is done
How late, by due date
Not due yet
$2,800
1–30 days late
$11,500
31–60
$0
61–90
$0
Over 90
$0
$4,000.00
owed of $10,000.00
Sent
$6,000.00
Recorded, not sent
$0.00

Rough-in plumbing, progress bill 1

  • $6,000.00Oct 3, 2026 · Check 5521Sentfrom QuickBooks
$2,800.00
owed of $4,800.00
$7,500.00
owed of $7,500.00
QuickBooks: $7,000.00
Open a bill for its payments; Show voided brings back the one voided with its reason. Real screen · sample data.
Without it

The sub was paid in QuickBooks, but the job still showed the whole bill owed.

Why we built it

The project manager and the bookkeeper stop arguing from two different balances — there is only one.

Sound familiar?“paid the sub in QuickBooks but the job still shows it owed”
02

Recorded is not sent

Try it

Record payment (does not send money) writes a payment down: approved, counted against the bill, money not gone. It's been sent — or Mark sent later — says the check or ACH actually left, and only then does QuickBooks get a bill payment. Leads 2 Build never moves money. A sub whose insurance has expired can't be paid either way unless an admin overrides with a reason.

Payment to Valley Plumbing & Drain

Payment to Valley Plumbing & Drain

$4,000.00 still owed.

Only a payment marked sent becomes a QuickBooks bill payment. Leads 2 Build never moves money.

Date
Oct 10, 2026
How
Pick Record only or It's been sent and save — the payment line says which it was. Real screen · sample data.
Without it

A payment was marked paid on the job, but the check never went out.

Why we built it

"Paid" means one thing to everyone, and the ledger never hears about money that hasn't moved.

Sound familiar?“partial payments don't sync”
03

When the two disagree, it lands on Needs a look

Try it

Accounting → QuickBooks says who posts what, so nothing is entered twice, shows when the last pull, push and hourly sweep ran, and lists every disagreement with its fix. Ridgeback Framing's bill reads $7,000 owed in QuickBooks and $7,500 here — a vendor credit entered there — and Match QuickBooks records it as a credit applied, never as paid.

Accounting — QuickBooks

Who posts what

WhatWho posts itDirection
Client invoices Leads 2 BuildL2B → QuickBooks
Outside subcontractor bills Whichever side enters itBoth ways
Outside sub payments Whichever side pays itBoth ways
Division actual costs The division's own channelQuickBooks → L2B (read only)
Internal commitments (a division's agreed price) Never postedStays in L2B
Field-service app invoices for internal jobs Never — turn invoicing off for them—
Class transfer journal entry (optional) The CFO's choice — off by defaultL2B → QuickBooks
  • Client invoices
    Leads 2 Build · L2B → QuickBooks
    The client's invoice is the company's real revenue. It is sent from here and lands in QuickBooks once; payments made in QuickBooks come back here.
  • Outside subcontractor bills
    Whichever side enters it · Both ways
    Enter the bill here or in QuickBooks — the other side gets a copy, matched by its QuickBooks id, so it's never entered twice.
  • Outside sub payments
    Whichever side pays it · Both ways
    A payment marked sent here becomes a QuickBooks bill payment; one made in QuickBooks shows up here. Partial payments, voids and reversals follow.
  • Division actual costs
    The division's own channel · QuickBooks → L2B (read only)
    Payroll, card purchases and the division's own supplier bills already reach QuickBooks with the division's Class. Leads 2 Build reads them for the division's margin and never posts them again.
  • Internal commitments (a division's agreed price)
    Never posted · Stays in L2B
    One division's sale is the other's cost — inside one company they cancel. Posting it would add a fake expense and fake revenue.
  • Field-service app invoices for internal jobs
    Never — turn invoicing off for them · —
    Field-service apps such as Workiz and FieldPulse push their invoices into QuickBooks. A division invoicing the builder for an internal job would post fake revenue, so internal jobs use a job type or customer that never invoices.
  • Class transfer journal entry (optional)
    The CFO's choice — off by default · L2B → QuickBooks
    One zero-sum journal entry per accepted internal package, both lines on one cost account: the builder's Class carries the agreed price, the division's Class is credited the same. Company totals don't change; Class reports then match the division margins here.

Sync health

Last pull
4 min ago
Last push
1 hr ago
Last sweep
22 min ago
Errors, 7 days
0

Needs a look

CheckRidgeback Framing #RF-310: QuickBooks says $7,000.00 owed, here $7,500.00QuickBooks has $500.00 more paid or credited (a vendor credit or a payment we haven't seen). QuickBooks' balance is the one that counts.
Press Match QuickBooks and the mismatch clears. Real screen · sample data.
Without it

A vendor credit in QuickBooks never reached the job, and nobody knew why the numbers were $500 apart.

Why we built it

A difference is a button with the reason beside it, not an afternoon of comparing two screens.

Sound familiar?“a voided check still shows as paid”
04

Voids and reversals — never deletes

A bill is voided with a reason and a payment reversed with a reason; both stay in the history with who did it. A payment voided or deleted in QuickBooks is reversed here as Voided in QuickBooks, and a bill deleted there is voided here and never re-created by the next sync. Everything sits on the Accounting tab, off until an account turns it on.

Without it

A bill deleted in QuickBooks came back on the next sync, and a voided check still showed as paid.

Why we built it

Corrections leave a trail instead of a hole, and a bill removed on purpose stays removed.

How it works
  1. 1New bill — project, sub, bill number, dates, amount, optional retainage; or start from a subcontract PO, and bills on it can't pass the PO total.
  2. 2Record payment (does not send money) writes it down; Mark sent is when the check or ACH has actually left — only then does it go to QuickBooks.
  3. 3A payment made in QuickBooks comes back as already sent, with the amount read from the line that pays this bill — not the payment's total.
  4. 4Voided or deleted in QuickBooks? The payment is reversed here with the reason Voided in QuickBooks; a bill deleted there is voided here and never re-created.
  5. 5Nothing is ever deleted: a bill is voided with a reason, a payment reversed with a reason, and both stay in the history.
  6. 6A vendor credit shows as credit applied, not paid; when QuickBooks shows a different balance it lands on Needs a look with a one-click fix.
  7. 7A sub whose insurance has expired can't be paid unless an admin overrides with a reason.
  8. 8An hourly sweep catches anything a QuickBooks notification missed; aging groups what's owed by how late it is.
Why we built it

Project staff and the bookkeeper keep two copies of what each sub is owed, and the copies drift: a payment made in QuickBooks never shows on the job, a voided check stays "paid", a bill deleted on purpose comes back on the next sync. Then everyone argues from different balances. So every bill and payment is matched by its QuickBooks id, read from QuickBooks' own balance, and kept in step both ways — including partial payments, voids and credits. Writing a payment down and actually sending the money are two different moments, so the screen keeps them apart and only the second one reaches the ledger.

The problem
  • Sub balances that differ between the job and QuickBooks.
  • Partial payments and vendor credits lost between systems.
  • Voided or deleted QuickBooks payments still counted.
  • Deleted bills re-created by the next sync.
  • "Paid" meaning approved to some people and sent to others.
What you get
One balance per bill, the same in both places.
Pay from whichever side you like.
Recorded and sent kept apart.
A full history — nothing deleted.
ACCOUNTING

See sub bills and payments, two-way with QuickBooks
on one of your own jobs.

Thirty minutes with Keith — your building, your numbers. Bring the job where “paid the sub in QuickBooks but the job still shows it owed” — we will show you exactly where that stops.

leads2build.com
Overhead doors on a finished building
Accounting — Bills

Outside subcontractor bills and what’s been paid on them — the same here and in QuickBooks, whichever side the payment was made on.

Outstanding
$14,300
3 open · 2 late
Over 30 days late
$0
Recorded, not sent
$800
written down — money hasn’t left
Retainage held
$750
due when the work is done
How late, by due date
Not due yet
$2,800
1–30 days late
$11,500
31–60
$0
61–90
$0
Over 90
$0
$4,000.00
owed of $10,000.00
Sent
$6,000.00
Recorded, not sent
$0.00

Rough-in plumbing, progress bill 1

  • $6,000.00Oct 3, 2026 · Check 5521Sentfrom QuickBooks
$2,800.00
owed of $4,800.00
$7,500.00
owed of $7,500.00
QuickBooks: $7,000.00
Sub bills and payments, two-way with QuickBooks — Leads2Build