OWNER WORKFLOW GUIDE

Commercial Property Management Accounting Workflow Explained

How a single paid work order becomes a CAM allocation and a QuickBooks GL line — the accounting workflow for owner-operators running 5-15 properties.

9 min readUpdated September 24, 2026

The accounting side of managing commercial property breaks down at the handoffs — the moment an operational event like a paid work order has to become a CAM allocation and, separately, a dated general ledger entry. The workflow holds together when one expense only has to be decided on once, and that decision flows to both places from there.

SEE THE REAL INTEGRATION

This isn’t theoretical—it’s a real, one-directional push to QuickBooks.

See exactly what syncs, how the one-time setup works, and why the push only ever goes one direction.

See the QuickBooks integration →

1. The gap a bank feed alone can't close

TenantPoint's Banking screen connects a real operating account through Plaid once, and after that every transaction syncs in automatically. That connection is genuinely useful — it removes manual statement entry and gives you a live feed of what actually happened in the account. But a bank feed, on its own, only ever tells you what left the account and when. It has no idea what any of it means to your leases.

You own a strip center. Georgia Power hits the bank for $1,422. QuickBooks knows you spent $1,422. TenantPoint knows: the property, the expense category, whether it belongs in CAM, which period it belongs to, and possibly which operating event caused it. That gap — between 'a transaction happened' and 'here's what it means for this lease's CAM pool and this month's GL' — is the entire accounting workflow this guide walks through.

  • A bank feed sees an amount and a payee, not a lease, a CAM pool, or a period
  • TenantPoint matches synced transactions to tenants, vendors, work orders, and CAM eligibility automatically where the match is unambiguous
  • An unmatched or ambiguous transaction sits for a person to resolve rather than getting guessed at
  • None of this replaces QuickBooks — it decides what QuickBooks should be told, and when

2. One paid work order, three separate jobs

A tenant's HVAC unit fails in month 3 of the lease year. You dispatch a vendor, the repair gets done, and you pay the vendor $1,850 out of the operating account, tagged to that work order. From where you're sitting, that's one transaction. It is not one job — it's three, and they run on different timelines.

The bank reconciliation is finished the moment the transaction is tagged to the work order. What's still open is whether the $1,850 belongs in this lease year's CAM pool, and separately, whether and how it posts to QuickBooks as a dated line on the P&L. Those two questions follow different rules and, in a lot of shops, get decided by different people — skip either one and you end up with a CAM true-up that's quietly understated or a P&L that's missing $1,850 of real spend.

  • Bank reconciliation: the transaction is matched to the vendor and the work order — done as soon as it's tagged
  • CAM eligibility: does this $1,850 belong in the pool tenants get billed against at year-end true-up, and for which lease year
  • GL posting: does this need to land in QuickBooks as a dated Purchase so the P&L reflects it, tied to the right property and expense account

3. From work order to CAM bucket

CAM eligibility isn't a property-level default — it's set lease by lease. A repair like this HVAC call usually qualifies as a recoverable operating expense, but that's a fact about this specific lease's CAM definition, not a general rule about HVAC repairs. Before the $1,850 goes anywhere near a tenant's true-up, it has to clear the category test: is 'HVAC repair' mapped to a CAM-eligible expense type for this property, or does this lease's CAM clause carve out mechanical repairs, cap them, or treat anything over a dollar threshold as capital and therefore excluded?

Assuming it clears that test, the $1,850 doesn't just get added to a running total — it gets attributed to the lease year the repair period actually falls in, which isn't automatically the same as the date the vendor got paid if the invoice lagged the work. It then sits in that property's CAM pool alongside every other eligible expense for the year, waiting to be compared against what tenants were already billed in estimated CAM payments when the true-up runs.

  • Confirm the work order's category maps to a CAM-eligible expense type for this specific lease, not a portfolio-wide default
  • Attribute the expense to the lease year the work was performed in, not necessarily the date it was paid
  • Add it to the property's running CAM pool for that year rather than treating it as a one-off
  • Keep the work order and vendor invoice attached as the source document — a tenant or their auditor can ask for it at true-up
  • Watch for a lease that excludes capital items or caps a single repair category — this is a lease-by-lease fact, not a rule of thumb

4. From CAM bucket to the QuickBooks ledger

Once the $1,850 has a category and a CAM answer, it still has to become a real accounting entry — QuickBooks doesn't know about work orders or CAM pools, only debits, credits, and classes. TenantPoint pushes the transaction as a QuickBooks Purchase, not a Bill, because the money already left the account; there's no unpaid vendor obligation to track, so a Bill-plus-BillPayment pair would just be modeling a state that never existed. The Purchase carries the property tag — Class or Location, depending on how tracking was set up during connection — but here's the detail that trips people up building this themselves: if that tag is Class, it only lives on the line item on a Purchase, never the header, unlike an Invoice or a Payment, which both carry Class at the top of the transaction. Location behaves consistently at the header on all three transaction types, which is one reason Location is often the steadier choice for property tracking. Get the Class case backwards and every expense Purchase in QuickBooks looks unassigned at the header level even though the data is there on the line.

The push only happens once the vendor and category are unambiguous. If this work order had two vendors tied to it, or the expense category had never been mapped to a QuickBooks account, the push doesn't guess — it holds the transaction in a Needs Mapping queue for a person to resolve. And every push is keyed to that specific work-order expense's row before any call to QuickBooks happens, so a retried or interrupted sync can't post the $1,850 twice.

  • A reconciled, work-order-linked expense pushes to QuickBooks as a Purchase — because it's already paid, not owed
  • Class tracking on a Purchase applies at the line level, unlike Invoice and Payment, which carry it at the header — Location stays header-level on a Purchase too
  • An unmapped vendor or category, or a work order split across more than one vendor, is held for a person to resolve, never guessed
  • Each push is tied to that specific row before the QuickBooks call goes out, so a retried sync doesn't create a duplicate
  • If an accountant later edits that Purchase directly in QuickBooks, the change is detected and flagged as a conflict for someone to review — it's never silently overwritten

5. A realistic month-end close checklist at 5-15 properties

At this scale you're usually not running a controller function — it's an owner doing the books themselves or one bookkeeper covering several owners' portfolios. The close doesn't need to be elaborate, but it does need to force every paid work order through the same three questions the HVAC example walks through, every month, before the books get called closed.

  • Every bank transaction for the period is matched to a tenant, vendor, or work order — nothing sits unmatched into the next month
  • Every work-order-linked expense has a CAM eligibility answer, not a 'figure it out at true-up' deferral
  • Everything eligible is attributed to the correct lease year, especially repairs done near a lease-year boundary
  • Every eligible expense that should be in QuickBooks has actually posted — check the Needs Mapping queue, not just the bank balance
  • Any conflict between what's in TenantPoint and what an accountant touched directly in QuickBooks is resolved, not left open

6. Why this needs to be one system, not three

Run this process with a spreadsheet and QuickBooks alone and the seams show immediately. QuickBooks will happily record that $1,850 left the account, but it has no concept of a work order or a CAM pool, so someone has to remember — every month, for every property — to also update a separate CAM tracking sheet. Miss that step once and the true-up runs short, and the shortfall usually isn't caught until a tenant disputes it or the reconciliation is already months old.

The reverse gap is just as real: a spreadsheet can track CAM eligibility fine, but it doesn't post anything to a general ledger, so the P&L an accountant works from is missing real spend until someone manually re-enters it. Tying the work order, the CAM pool, and the GL line to the same underlying event is what keeps those two records from drifting apart — not by merging accounting into the operations tool, but by making sure one paid expense only has to be decided on once, correctly, and then flows to both places from that single decision.

  • A bank feed alone can tell you what happened, not what it means for CAM or the GL
  • A spreadsheet alone can track CAM but doesn't post anything to QuickBooks
  • One decision on the work order — category, CAM eligibility, period — should be the source for both the true-up and the GL entry

Frequently asked questions

Does a capital expense, like replacing the whole HVAC unit instead of repairing it, follow this same path?

Usually not the same way. Most leases treat a full unit replacement as a capital expense and exclude it from CAM, while a repair to the existing unit is recoverable. That split is set by the lease language, not by a general accounting rule, so it has to be checked lease by lease rather than assumed from the dollar amount alone.

What happens if a work order has two vendors on it — say a diagnostic company and the actual repair contractor?

It gets held for a person to pick, not guessed. As soon as more than one vendor is tied to the same work order, there's no longer a single obvious answer for who the expense belongs to on the QuickBooks side, so it sits in the Needs Mapping queue until someone resolves it.

If the CAM allocation on this expense gets corrected later, does the QuickBooks entry update automatically?

No. What's already been pushed to QuickBooks is frozen at the moment it synced — a later correction doesn't retroactively rewrite a Purchase that's already posted. If the correction changes what the accounting record should show, it needs its own follow-up entry rather than a silent edit to the original.

Can a tenant pay their share of an expense like this directly inside TenantPoint?

Not today. TenantPoint generates and tracks the invoice and the CAM allocation; rent and CAM collection still runs through the owner's existing payment process outside the platform.

This educational material is not legal, accounting, tax, or investment advice. Review controlling lease language and consult qualified professionals when appropriate.

USE THIS WITH ONE REAL PROPERTY

Stop rebuilding the operating record every month.

Start a 15-day trial, add one property, and bring the lease, rent, CAM, and tenant communication into the same workspace.

Start free for 15 days →See the product demo