Background
This discussion highlights a simple approach for handling tenant reimbursements to landlord for transaction privilege tax (TPT) in Arizona using the Yardi Breeze property management software platform. We'll capitalize on the strengths of the system to automate our workflow where possible. And, we'll attempt to produce an accounting process that best reflects the economic reality while working within the constraints of the system.
The Problem
In Arizona, landlords pay a tax to the Arizona Department of Revenue (ADOR) on rents. This is the obligation of the landlord, not the tenant. However, landlords often write into their leases reimbursements for this tax. A reimbursement structure might include a receivables accrual alongside the basic rental accrual and a reduction of the receivable when payment is collected.
Rent Tax Reimbursement Example
Receivable Accrued (time t)
Accounts Receivable | 100 | |
Rent Tax Reimbursement Revenue | 100 |
Cash Collected (time t + 1)
Cash | 100 | |
Accounts Receivable | 100 |
The distinction is the reimbursements are revenue whereas a typical sales tax is neither a revenue nor an expense. Instead, it's a liability. It's an obligation of the customer rather than vendor. Therefore, amounts collected by the vendor go directly to the balance sheet as a liability.
Sales Tax Collection Example
Point of Sales (time t)
Cash | 100 | |
Sales Tax Payable | 100 |
Remittance to Tax Authority (time t + 1)
Sales Tax Payable | 100 | |
Cash | 100 |
For a more detailed discussion on the differences between Arizona TPT rent tax and sales tax, see my article Accounting Differences Between Arizona Rent Tax and Sales Tax.
As I've alluded, we want the former example on our books instead of the latter sales tax example. The problem is Yardi was built for the sales tax approach. Rather than fight the system, I suggest using it to get us 90% of the way there and then re-classing the activity at the end of the period to suit our needs.
Accrue Sales Tax
The first step is to configure the system to handle sales tax. My article How To Set Up Automatic Sales Tax In Yardi Breeze explores in detail how to set up Yardi to automatically accrue sales tax when charges are created. Refer to this article if sales tax hasn't already been implemented in your system.
At a high level, we want to:
- Create a sales tax record for a given locale and rate,
- Associate relevant properties to that tax record, and
- Create a charge code marked taxable.
With your system configured, Yardi will accrue sales tax with each taxable charge created throughout the period. This will primarily be the monthly rent accrual at the beginning of the period. However, you'll likely encounter situations where adjustments and credits occur mid-period affecting the ending sales tax number.
We'll wait until the period soft closes before re-classing sales tax so we know we have a final number.
Re-class Sales Tax
At the end of the period, we'll have the net effect of sales tax accrued from all taxable charges created throughout the period reflected on the balance sheet. The account will probably be named something like "Sales Tax Collected." If you inspect the general ledger for this account, you'll likely see a large number of transactions. This is because Yardi creates an individual sales tax accrual for each and every charge. We'll re-class the sum of all these charges with a single journal entry.
For this example, we'll continue with the running assumption of $100.00 for the "Sales Tax Collected" accrual.
To create the journal entry, we'll navigate to Accounting > General Ledger > Journals > Add New.
Step 1
Navigate to the "General Ledger" dashboard.
Step 2
Select "Journals."
Step 3
Select "Add New."
Step 4
Click through the create new "Journal Batch" window by selecting "Save."
Step 5
Click "Add Journal" from the batch detail view to start producing a new journal entry.
Step 6
Enter "Journal Entry" details.
Our liability account "Sales Tax Collected" has a normal credit balance and has an accumulated credit of $100.00 consistent with the example. To back out this amount, we need to debit the liability account. The offsetting credit will be to our revenue account for "Rent Tax." The transaction is dated as of the end of the period so that way it captures any sales tax activity that might have occurred during the month.
Click "Save" and we'll return to the journal batch detail view.
Step 7
The last step is to "post" the entry so our journal entry will be applied to our books for the property.
With our journal entry posted, we've now effectively converted the accumulated sales tax generated automatically to a revenue.
Other Considerations
What's the point of re-classing this activity as a revenue again?
The reimbursement is more similar in nature to Common Area Maintenance (CAM) reimbursements. It's generally an "Other Revenue" activity. If the reimbursement obligation is absent from the lease, the landlord has no right to collect it just as if a lease didn't have expense recapture provisions.
While common, not every lease has this performance obligation of the tenant baked in. Additionally, rental from certain tenants is exempt from TPT. Therefore, simply moving amounts into and out of the liability account when reimbursements are accrued and the actual expense is paid will lead to problems. It's possible that the liability account trends in a direction and accumulates a persistent balance through time rather than netting to zero.
Treating the activities of reimbursements paid by tenant to landlord and the landlord's obligation to the tax authority as distinct activities will improve the reporting quality of the financials and avoid these pitfalls.
Final Thoughts
Rent tax reimbursements for TPT are a common provision in Arizona commercial leases. The Yardi Breeze system get's you close to representing this activity with its sales tax functionality. However, this leaves a little to be desired to best represent the activity that's occurred.
Using the methods described here will allow you to lean on the automation that exists within Yardi Breeze to speed up workflows while still ending up in a place that reflects the underlying economic realities.