OWNER WORKFLOW GUIDE
How to Record Security Deposits in QuickBooks for Commercial Tenants
How to record a commercial tenant's security deposit in QuickBooks as a liability, then net an unpaid CAM true-up against it before refunding what's left.
Security deposits create a strange gap in QuickBooks: look up how to record one and you'll find genuinely contradictory advice, because QuickBooks has no purpose-built deposit feature and two different bookkeeping methods both technically work. The gap gets sharper at lease-end on a commercial property, when an unpaid CAM true-up has to come out of the deposit before anything gets refunded — a scenario almost no published guide actually walks through.
1. Choose a method before you record the first deposit
Search for this exact question and you'll land in the middle of a real, unresolved disagreement. One camp records the deposit into a liability account through a bank deposit or journal entry, with no income posting until the landlord actually keeps some or all of it. The other camp runs it through Accounts Receivable — invoicing the deposit like a charge, applying a payment against it, then reversing that with a refund receipt or check when the tenant moves out. Neither method is a mistake on its own terms, which is exactly why the threads never converge.
For a commercial deposit specifically, the liability account is the sounder default. A security deposit isn't earned revenue at the moment you receive it — it's refundable, contingent on the tenant's performance over the whole lease term, and stays a landlord obligation on your books until something specific (an unpaid CAM balance, damage, a holdover) actually entitles you to keep part of it. Routing it through A/R and an invoice works, but it borrows machinery built for billing a charge you've earned, which is exactly the distinction a commercial property — already tracking real invoiced CAM and rent — needs to keep clean.
- Liability method: deposit posts to an Other Current Liability account via a bank deposit or journal entry; no revenue is recognized until the landlord is entitled to keep money
- A/R method: deposit is invoiced and paid like a charge, then unwound with a refund when the tenant leaves — functional, but it puts a non-revenue event through revenue-recognition mechanics
- The liability balance should always equal what you're currently holding for tenants who haven't moved out yet — that's the test for whether your method is working
- Pick one method for the portfolio and stay with it; switching mid-lease is what actually produces the reconciliation headaches in most of these forum threads, not either method itself
2. Set up the liability account and record the deposit you receive
Create the account once: Chart of Accounts → New → Other Current Liabilities, named something specific like "Tenant Security Deposits Held" rather than a generic "Deposits" that could get confused with a bank account. Record the actual receipt with a Bank Deposit (or a Journal Entry if the funds arrived bundled with something else), with the deposit line pointed at this liability account — not an income account, and not directly to Accounts Receivable unless you've deliberately chosen the A/R method above.
If you're already reconciling your operating account through a connected bank feed, the incoming transfer will show up there matched to the tenant before you ever touch QuickBooks — but that match only tells you money arrived, not which account it belongs in. Recording it into the liability account is a decision you still have to make explicitly; nothing does it for you by default, and QuickBooks' own bank-feed matching will just as happily suggest an income category if you let it.
- Deposited to: your operating bank account
- Category on the deposit line: the liability account, not income
- Received from: the tenant's Customer record, not a generic "cash" line
- Memo: tenant name, unit or suite, lease start date — the details you'll need to find this entry again in three years
3. Track the deposit at the tenant level, not just the property level
One liability account lumps every tenant's deposit together, which is fine until you need to answer "how much am I actually holding for this one tenant" without recalculating it by hand. QuickBooks lets you add a Name to a journal entry or deposit line even on a non-A/R, non-A/P account like this one — tag every deposit-related line with the tenant's Customer record, and it will show up on that customer's own transaction list alongside their rent and CAM history.
Pair that with whatever property tag you already use elsewhere in your books — the same Location-for-property convention you'd use on an invoice or a Purchase keeps the liability entry consistent with everything else on that property, rather than inventing a separate tagging scheme just for deposits.
- Pull a register or report on the liability account filtered by Customer at each lease turnover, before assuming the deposit figure in the lease file still matches QuickBooks
- Reconcile the account's total balance against the sum of every currently-held deposit at least quarterly — a mismatch almost always means a refund posted to the wrong account or the wrong tenant's line, not a lost transaction
- Tag the property's Location the same way you do on every other transaction type, so the liability entries don't become the one exception in your chart of accounts
4. Net an unpaid CAM true-up against the deposit at lease-end
Here's the scenario that almost no published guide covers, because it's specific to commercial leases with CAM: a tenant's lease ends, and that year's CAM reconciliation shows a $2,000 balance still owed from the true-up. The landlord wants to net it against the $5,000 security deposit and refund the remaining $3,000. Before recording anything, confirm the lease actually grants this right — most commercial leases let a landlord deduct unpaid rent or CAM from the deposit before returning it, but some limit deductions to physical damage only, so check the specific clause rather than assuming.
QuickBooks has no button for "deduct from deposit," and it has no concept of a CAM true-up at all — so you're combining two entries QuickBooks already understands for other reasons. Some guidance calls this deduction a credit memo. That's not quite right here: a credit memo reduces income you already recognized, and if the $2,000 was already invoiced as part of normal CAM billing, that income is real — the tenant genuinely owed it. Issuing a credit memo against it would erase legitimate revenue, not reverse a billing error. What actually accomplishes the deduction is a journal entry that debits the liability account $2,000 and credits Accounts Receivable for that tenant, referencing the specific CAM true-up invoice, applied against that open invoice from the Receive Payment screen exactly the way you'd apply a check. The invoice closes, the liability account drops by $2,000, and the CAM income stays exactly as originally reported.
If the true-up was never actually invoiced — the $2,000 only surfaced when you ran the final reconciliation — create that invoice first, dated to the reconciliation period and referencing the specific lease year it covers, then follow the same journal-entry-and-apply-payment step. The invoice is what gives the deduction a home in the chart of accounts and a document trail; the reconciliation math itself lives outside QuickBooks, in whatever system produced the $2,000 figure, and the invoice is what pulls that number in.
- Security deposit held: $5,000.00
- CAM true-up invoice, final lease year, unpaid balance: $2,000.00
- Journal entry: debit Tenant Security Deposits Held $2,000.00 / credit Accounts Receivable (tenant) $2,000.00, applied to the true-up invoice
- Refund due to tenant at lease-end: $3,000.00
- Attach the actual reconciliation summary — the document that produced the $2,000 figure — to the invoice or journal entry as a source file, and name the exact reconciliation period in the memo. If that reconciliation was run in a property system rather than a spreadsheet, pull the period label and figure straight from that record rather than retyping it from memory later
5. Refund what's left and close out the tenant's record
Write the refund for the remaining $3,000 from the same liability account — a check or expense with the liability account as the category, not an expense account, since none of this money was ever the landlord's income to spend. That keeps the deduction and the refund both flowing through the same account the original deposit sat in, so the liability balance for that tenant nets cleanly to zero.
Send the tenant the same closing statement you used to work out the netting: deposit held, the CAM deduction and its reconciliation period, and the refund amount. An itemized breakdown is what protects the deduction if it's ever questioned, and many leases require some form of written accounting alongside the returned funds anyway — confirm what the specific lease requires before the check goes out.
- Refund via check or expense, category = the liability account, not an expense account
- Reference the same reconciliation period and invoice number used in the deduction entry, so the refund and the deduction read as one closed-out event
- Re-run the per-tenant liability report immediately after to confirm the balance actually zeroed out — not just that a check was written
- Retain the closing statement and the underlying reconciliation documentation with the lease file, not only inside QuickBooks
Frequently asked questions
Should a security deposit ever post to an income account?
No, not while you're simply holding it. A security deposit isn't earned revenue when it's received — it's refundable, and stays a landlord obligation until a specific event, like unpaid CAM or damage, actually entitles you to keep some or all of it. Until that happens, it belongs in a liability account, not on the P&L.
Can I deduct an unpaid CAM true-up from a deposit without the tenant's sign-off?
This is set by the lease, not by general bookkeeping practice. Many commercial leases explicitly authorize deducting unpaid CAM or rent balances from the deposit before refunding what remains, but some limit deductions to physical damage or specific named categories. Confirm the exact clause before netting anything.
How long do I have to refund a commercial tenant's security deposit?
Commercial leases generally fall outside the state security-deposit-return statutes written for residential landlords, so there's no general rule to fall back on here — check the specific lease for a stated return window (30 and 60 days after lease-end and possession are both common) rather than assuming a standard timeframe applies.
Does QuickBooks track which reconciliation period a deposit deduction came from?
No. QuickBooks has no concept of a CAM true-up or a reconciliation period — it just sees a journal entry and a dollar amount. That connection only survives if you put it there yourself: a memo that names the exact period, an attached source document, or a consistent Class or Location tag.
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.