A monthly landlord invoice for an NNN tenant is not one line. NNN means the tenant pays building costs on top of rent. The bill packs three to five charges together. You get base rent, CAM estimates, tax estimates, and insurance estimates. CAM means common area maintenance, the shared building cost the landlord bills back. Some bills add utility or parking items too. For more, see the chart of accounts for rent, CAM, taxes, and insurance.
Most books dump it all into one "rent" account. That is the common shortcut. It is also the one that causes the most trouble later. This guide shows you how to split the charges. It shows which accounts to use in QuickBooks and Xero. It shows how to handle the yearly true-up when it lands.
NNN (triple-net) lease: A NNN lease, also called a triple-net lease, is a commercial lease structure in which the tenant pays base rent plus three categories of operating expenses: property taxes, building insurance, and maintenance or CAM charges. These costs are passed through from the landlord to the tenant in addition to rent. In a NNN lease, the tenant bears the variable risk of operating cost increases, which is why accurate coding and annual reconciliation review matter.
Why one rent account breaks the books
A landlord invoice for a dental practice might look like this:
- Base rent: $6,500
- CAM estimate: $1,200
- Real estate tax estimate: $620
- Insurance estimate: $180
- Total due: $8,500
Say all $8,500 goes to "Rent Expense 6000." The books then show a rent cost. But three of those four lines are not rent. They are building costs the landlord changes each year. Then the landlord sends the yearly reconciliation. A reconciliation is the year-end true-up of estimated charges against real costs. Say the CAM true-up is $3,400. Now the books cannot tell you where the jump came from. Was it CAM, taxes, or insurance? The client cannot see cost by piece. Year-over-year numbers turn into noise.
Separate accounts fix this. They also set up the books for the reconciliation work each Q1.
The account setup to use
Account numbers depend on the chart of accounts the firm uses. But keep the categories apart:
| Account | What Goes Here |
|---|---|
| Base Rent Expense | Fixed monthly rent per the lease |
| CAM Expense | Monthly CAM estimates, annual true-up adjustments |
| Property Tax Expense (Pass-through) | Tax estimates billed by landlord, annual tax true-up |
| Building Insurance Expense (Pass-through) | Insurance estimates billed by landlord |
| Occupancy Other | Parking, signage fees, utility reimbursements, misc landlord charges |
For a client with many sites, add a class, location, or department tag to each account. A 3-location retailer needs costs by site to compare profit.
Coding the monthly invoice in QuickBooks
In QuickBooks Online, enter the landlord invoice as a bill. Most firms set up the landlord as a vendor. When the monthly bill arrives, split the total across the right accounts:
- Open the bill and add the vendor (property manager or landlord entity).
- Add line 1: CAM Expense account, $1,200, memo "CAM estimate Jan 2026."
- Add line 2: Base Rent Expense, $6,500, memo "Base rent Jan 2026."
- Add line 3: Property Tax Expense (Pass-through), $620, memo "Tax estimate Jan 2026."
- Add line 4: Building Insurance Expense (Pass-through), $180, memo "Insurance estimate Jan 2026."
- Save and approve. The total matches the invoice amount.
Say the landlord sends one total with no line breakdown. Ask the property manager for the split before you code. Most NNN landlords can send a monthly breakdown if you ask. Many print it on the bill. If you code a lump sum blind, the piece accounts will never be right.
Coding the monthly invoice in Xero
In Xero, the same invoice becomes a bill with many line items. The steps work the same way:
- Create a new bill, select the landlord contact.
- Add each component as a separate line item against the relevant account code.
- Apply the correct tracking category (location, department) if the client uses tracking.
- Confirm the total matches the invoice and approve.
Xero bank rules can automate some of this. They help when a client pays the same vendor by direct debit each month. One rule splits the landlord payment across the four account codes. That cuts manual work on routine bills. Update the rule whenever the landlord changes the monthly estimates.
How to code the yearly CAM true-up
The true-up bill is a once-a-year charge. It differs from the monthly bills in two ways. It settles a past-period debt. It is often much bigger than any monthly estimate.
Scenario A: Accrual basis with a prior-year CAM accrual
Say the bookkeeper tracked the gap between estimated and likely actual CAM all year and built an accrual. An accrual records a cost before you pay it. The true-up payment then settles it:
- Debit: CAM Accrual (liability account), $3,400
- Credit: Cash or Accounts Payable, $3,400
No new expense hits the income statement. You booked the expense when you built the accrual. The payment only moves the balance sheet.
Scenario B: Cash basis or no prior-year accrual
Say you kept no accrual. Then the true-up is a current-period expense:
- Debit: CAM Expense, $3,400
- Credit: Cash or Accounts Payable, $3,400
Add a memo that names the year you are reconciling: "CAM true-up for calendar year 2025, per reconciliation statement dated 2026-02-15." This helps when the client asks why Q1 costs are high.
The statement date in the memo matters. The lease audit right clock starts on the date the landlord delivered the statement. Log that date so you can find it.
Handling the CAM estimate reset
Each January, the landlord sends a notice. It sets the monthly CAM estimate for the new year. Say the dental practice owed a $3,400 true-up. The landlord may then reset the monthly estimate from $1,200 to $1,500. This cuts the landlord's future true-up risk.
When the estimate changes:
- Update the QuickBooks or Xero recurring bill or bank rule to the new monthly amount.
- Tell the client. A $300/month rise is $3,600 more per year in building cost. Clients do not always read landlord notices.
- Check that the new estimate is fair. A jump from $1,200 to $1,950 in one year on a small space is odd. Call the property manager.
Coding for many locations
A 3-location retailer has its own lease, landlord, and bill at each site. The account codes stay the same. The class or location tag keeps them apart in reports.
The pattern is:
- CAM Expense / Location: Downtown / $1,100
- CAM Expense / Location: Eastside / $890
- CAM Expense / Location: Northgate / $750
In reconciliation season, each site may get a true-up on its own date from its own landlord. Build a Q1 close checklist. List all three expected reconciliations and their likely dates. That keeps one from sitting in the inbox for two weeks while you work on other things.
Coding errors to avoid
Coding the true-up to base rent. The true-up is not rent. It inflates the rent account. It makes fixed rent look variable.
Using one month as the "period" for a true-up. The true-up covers a full past year. Note the period in the description. Do not let the billing date (say, February 28, 2026) tell the whole story.
Forgetting to reverse an overpayment credit. A CAM credit lowers the bill total. Code the credit as a negative CAM expense line. Do not code it as income.
Leaving off the landlord entity. Always code to the right vendor. Landlord entities change often when management companies switch. Vendor history is the only record of who got the payments if an audit comes.
Good GL coding does not need real estate skill. It needs the same care you give every AP task. Match the bill to the contract. Split by piece. Note the period. Flag anything that does not reconcile.