<img height="1" width="1" style="display:none;" alt="" src="https://px.ads.linkedin.com/collect/?pid=3960532&amp;fmt=gif">
PredictAP Blog

What Is GL Coding in Real Estate Accounts Payable?

IN THIS GUIDE

β€Ί Direct answer: what GL coding means in real estate

β€Ί What is a GL code, exactly?

β€Ί Why is GL coding different in real estate?

β€Ί How do GL codes work in real estate accounting systems?

β€Ί What are sub-ledgers and control accounts?

β€Ί What are memo accounts?

β€Ί How does the general ledger get updated?

β€Ί What are books, and why do real estate ledgers run more than one?

β€Ί How do REIT requirements shape the general ledger?

β€Ί What actually drives real estate GL design?

β€Ί What happens when GL coding goes wrong?

β€Ί Who decides the GL code on an invoice?

β€Ί How do real estate teams handle GL coding at scale?

β€Ί FAQ

The same $6,000 invoice can be two different numbers.

An HVAC contractor bills $6,000 for compressor work. At one property, that lands in repairs and maintenance, an operating expense that hits this year's income statement and flows into the tenants' CAM pool. At another property in the same portfolio, the identical line item is a capital improvement, a balance-sheet asset depreciated over years and often outside current-year CAM recovery, unless the lease says otherwise. Same vendor, same invoice description, same dollar amount. Different GL code, because the facts behind the invoice differ, and the difference changes who pays, when it hits the books, and what the property's net operating income looks like.

That choice is GL coding, and in real estate it is one of the most consequential decisions in accounts payable.

Direct answer: what GL coding means in real estate

GL coding is the process of assigning each expense on a vendor invoice to the correct general ledger account, the category in a company's chart of accounts that determines how the cost is recorded, reported, and treated. In real estate accounts payable, GL coding goes further than picking a category: the same expense can code differently by property, by legal entity, and by lease terms, because the GL account drives whether a cost is operating or capital, whether it is recoverable from tenants, and where it lands in owner reporting and net operating income. Generic accounting treats GL coding as a lookup. Real estate makes it a judgment call.

Definition: A GL (general ledger) code is the account number from an organization's chart of accounts assigned to a transaction so it is recorded in the right category, such as repairs and maintenance, utilities, insurance, or a capital account. GL coding is the act of assigning those codes, and in real estate AP it is decided per invoice line, per property, and per entity.

 

Related reading: for the full decision process an invoice goes through after the GL code, see How to Code Real Estate Invoices: A 9-Step Guide for AP Teams.

This guide runs deep by design. It moves from the definition, to why real estate makes GL coding harder, to the architecture underneath (systems, sub-ledgers, memo accounts, books), to the compliance layer (GAAP treatment and REIT tests), and ends with how teams handle coding at scale. Read it straight through, or jump to the section that answers your question.

What is a GL code, exactly?

Every organization keeps a general ledger, the master record of its financial transactions, organized by a chart of accounts. The chart of accounts is a numbered list of categories: assets, liabilities, equity, revenue, and expenses. A GL code is the number that identifies one of those categories.

The numbering is rarely arbitrary. A conventional chart of accounts follows the structure of the financial statements: balance sheet accounts first, assets, then liabilities, then owners' equity, followed by the income statement, revenue and then expenses. Within assets, accounts typically run from most liquid to least liquid, so cash leads, receivables follow, and long-lived assets like buildings and improvements come last. A simplified real estate chart of accounts might look like this (the numbers are illustrative; every organization designs its own):

Code

Account

1010

Cash, operating

1210

Accounts receivable, tenant

1450

Capital improvements (a balance-sheet asset, not an expense)

1510

Construction in progress

2010

Accounts payable

2310

Intercompany payable

3010

Owners' equity

4010

Rental income

5210

Repairs and maintenance, recoverable

5215

Repairs and maintenance, non-recoverable

5300

Utilities

5520

Insurance

6110

Management fees

 

Notice the pair at 5210 and 5215. Real estate charts of accounts often carry two accounts for the same expense type, one recoverable and one non-recoverable, because CAM recovery is decided by which account the cost lands in. The lease determines whether a repair can be billed back to tenants; the chart of accounts has to give the coder somewhere to put each answer. That pairing, repeated across expense categories, is one reason a real estate COA runs longer than a generic business's.

In practice, the recovery logic runs deeper than one pair. Commercial leases distinguish controllable from non-controllable expenses, split taxes and insurance from general operating costs, set base years and expense stops, exclude specific costs from recovery, allow certain capital expenditures to be recovered over time, and define how management or administrative fees and gross-ups are treated. A well-designed real estate chart of accounts mirrors that recovery logic, so each distinction the leases draw has an account, or an account-plus-segment, to land in. The COA is, in a real sense, the leases translated into accounting structure.

The revenue side is just as real-estate-specific, even though this article focuses on the payable side. A property's income accounts typically separate base rent, percentage rent, CAM recoveries, tax and insurance recoveries, parking, amenity and other ancillary income, late fees, and tenant service income, and BOMA's Functional Accounting Guide and Chart of Accounts, the industry's reference COA, supports this logic, segregating income by type and expenses by functional cause. Keeping recovery income and service income in their own accounts is not fussiness; it is what makes CAM reconciliations, owner statements, and, as discussed below, REIT income testing readable straight from the ledger.

When an invoice arrives, someone, or some system, assigns each line to a code. A $900 recoverable plumbing repair goes to 5210. The monthly water bill goes to 5300. That assignment is what makes financial statements possible: without consistent GL coding, there is no reliable income statement, no budget-versus-actual, and no defensible audit trail.

Up to this point, every generic finance explainer says roughly the same thing, and it is all true. What those explainers miss is what happens when the ledger belongs to a real estate portfolio.

Why is GL coding different in real estate?

In most businesses, a GL code answers one question: what kind of expense is this? In real estate, the GL code sits inside a set of decisions that generic accounting never faces, because the books are organized around properties, entities, and leases.

 

GL coding in a typical business

GL coding in real estate AP

What the code decides

Expense category

Category, plus operating-vs-capital treatment, recoverability, and reporting line

How many ledgers

One set

One per legal entity, often one per property

Same expense, same code?

Usually

The same line item can code differently at each property

What the answer depends on

The chart of accounts

The chart of accounts, plus leases, ownership structure, and accounting policy

Downstream impact

Financial statements

Financial statements, plus CAM pools, owner statements, NOI, and audits

 

Six things make the real estate version harder.

The code depends on the property, not just the expense. Real estate portfolios book costs at the property level, and each property can sit in a different legal entity with its own books. The same "HVAC repair" line can be an operating expense at one building and a capital item at another, depending on the scope of work and the accounting policy that governs that property. The invoice never says which. Someone has to know.

The code decides who ultimately pays. In commercial leases, operating expenses coded to recoverable accounts flow into the CAM (common area maintenance) pool that tenants reimburse, which is why real estate charts of accounts often carry recoverable and non-recoverable versions of the same expense account. The coder is not just categorizing the cost, they are routing it: put a recoverable repair in the non-recoverable account and the landlord absorbs an expense the leases say tenants share; put a non-recoverable cost into the CAM pool and tenants are overbilled. Either way, the error is invisible until reconciliation season, and the record at scale is not reassuring: real estate cost-consulting analyses report that roughly 40 percent of CAM reconciliations across U.S. retail centers contain material errors, and that nearly 28 percent of tenants find discrepancies in their annual reconciliations even without hiring an auditor, figures attributed to 2023 Tango Analytics and JLL research.

The code decides when the cost hits the books. The operating-versus-capital call is made at coding time, and it is not a style preference, it is a GAAP judgment. Under ASC 360-10, the cost of an asset includes the costs "necessarily incurred to bring it to the condition and location necessary for its intended use," and ASC 970 layers real-estate-specific guidance on top, governing which project and development costs are capitalized and when capitalization starts and stops; both PwC and EY publish extensive guides on applying these standards to real estate. The coder deciding between a repairs account and a capital account is applying that framework, one invoice line at a time. Expense it, and it reduces this year's net operating income. Capitalize it, and it becomes an asset depreciated over years. For an owner, that single coding decision moves NOI, and NOI moves valuation.

Ownership structure multiplies the ledger. Real estate is owned through layered structures: LLCs, joint ventures, funds, and management entities, often one per property or per deal. Each entity keeps its own books, and when one entity pays a cost on behalf of another, the transaction has to be recorded on both sides through intercompany accounts, the due-to and due-from pairs that let each entity's books stand alone. At the portfolio level, those entities consolidate: intercompany balances must eliminate against each other, and the chart of accounts has to carry the accounts that make the consolidation work. The result is that a real estate GL is bigger and more interconnected than a comparable operating business's, and a coding decision made at one entity can create a required entry at another.

Debt lives at the property level. Many commercial properties carry property-level debt, and the loan usually sits on the property's own entity, not the parent. That structure pulls a whole family of accounts into each entity's ledger: the loan payable, accrued interest, and the escrow and reserve accounts lenders require for taxes, insurance, and capital expenditures. Restricted cash needs its own structure too: tenant security deposits are the tenant's money and are tracked as liabilities, and where law, lease terms, or policy require segregation, they are matched with restricted-cash accounts, alongside tax and insurance escrows and replacement reserves that cannot be treated as free operating cash. It also creates a reporting obligation: lenders want property-level financial statements and covenant calculations built from that entity's books. A GL that cannot cleanly produce one property's standalone financials, with its debt, deposits, and reserves intact, fails a test that most operating businesses never face.

The code is only one field among several. In real estate systems, the GL account works alongside the entity, the property, and often a department, unit, or job code. Getting the account right but the property wrong still books the cost to the wrong building and the wrong owner. This is why real estate teams talk about invoice coding as a broader discipline, of which the GL code is one decision among nine or so; the full sequence is covered in the coding guide linked above.

How do GL codes work in real estate accounting systems?

The mechanics depend on the system underneath, and the specifics vary by how each system is configured. Both Yardi and MRI treat each property or fund as its own accounting entity, but they organize the coding dimensions differently. It is also widely considered best practice to set up a distinct property record for each actual property rather than combining them, because commingling multiple properties' activity in one ledger record is nearly impossible to unwind later, the same principle that governs the rest of GL design: consolidating clean data is easy, pulling apart commingled data is not. In Yardi, property, entity, account, and department are handled as accounting dimensions and reporting structures, and in many implementations segment, department, or branch values are carried alongside or appended to the account. In MRI, each posting is built from a root account number with a class or branch code that can be appended as a prefix or a suffix, while entity and department are carried as separate fields.

Most real estate ERPs also support some form of user-defined segments: additional dimensions attached to the account that break activity down further, by department, by location, by a unique deal identifier, or even down to an individual unit in a multifamily complex.

A concrete example makes the layers visible. An appliance supplier bills $10,000 to a multifamily property at 123 Main Street. At the property level, the general ledger shows one line: appliances, $10,000. Add a unit segment and the same account tells a finer story, $2,000 to unit 100, $5,000 to unit 200, and $3,000 to unit 300, without a single new account in the chart. And underneath both views, the AP sub-ledger holds the invoice itself: three lines, a stove for unit 100, a refrigerator and a stove for unit 200, and a stove and a microwave for unit 300, along with the vendor, the terms, and the dates. Each layer answers a different question. The GL answers what was spent. The segment answers where. The sub-ledger answers on what, exactly, and holds the proof.

Segments exist to solve a problem worth understanding, sometimes called ledger creep. Suppose a fund wants to track investment activity by deal. Without segments, the only tool is the account itself: create a new account per deal. Do a hundred deals and you have a hundred new investment accounts. Now track expenses by deal, and revenue by deal, and fees by deal, and each new deal adds dozens of accounts across the chart. And because a deal can span many properties, the property and entity dimensions cannot carry the distinction on their own. Within a few years the chart of accounts is tens of thousands of lines long, most of them near-duplicates, and every coder has to pick the right needle from that haystack on every invoice. A segment makes the problem go away: one core account, "investment," "asset management fee revenue," sub-segmented by deal, so the ledger stays compact while the reporting stays granular.

The related design principle: granularity is good in the core GL, because combining is easy and splitting is not. Accounts that were kept separate can always be grouped later, most systems do this with a reporting template or an account tree, which rolls detailed accounts up into headings and subtotals for readable statements. But a single blended account can never be split after the fact; the detail was never captured. Real estate controllers therefore tend to err toward more accounts and more segments than today's reports strictly need, and let the account tree do the summarizing.

 

To make the dimensions concrete, here is what one line of that $6,000 HVAC invoice might look like as a fully coded posting, using the illustrative accounts from earlier:

Whether those dimensions render as one segmented account string or as separate fields depends on the system, but every one of them is a decision someone made, and only the amount appeared anywhere on the invoice.

The practical consequence is the same everywhere: the correct account string is not a universal answer, it is a function of how that specific portfolio's chart of accounts was designed. Two organizations running the same system can code the identical expense to differently structured accounts, and both can be right. That is also why coding knowledge does not transfer cleanly between portfolios: the judgment lives in each organization's own history, not in the software.

What are sub-ledgers and control accounts?

The general ledger does not carry the full story of any transaction, and it is not supposed to. The GL records that accounts payable went up by $6,000. The detail behind that number, which vendor, which invoice, the invoice date, the due date, the payment terms, the line descriptions, whether and when it was paid, lives in a sub-ledger: a detailed subsidiary record that supports a single GL account.

Real estate accounting runs on several of them:

  • Accounts payable β€” every vendor invoice with its dates, terms, approval history, and payment status. The AP sub-ledger is where an AP team actually works; the GL just carries the total.
  • Accounts receivable β€” tenant by tenant, charge by charge: rent, CAM billings, late fees, and what has been collected against each.
  • Leases β€” in real estate the lease itself is complicated enough to warrant a full module: terms, escalations, concessions, options, and recovery clauses all live there, and the module's job, from the ledger's point of view, is to generate the charges that flow into revenue and accounts receivable. The GL sees rental income and a receivable; the lease sub-ledger holds the machinery that produced them.
  • Construction in progress (CIP) β€” capital project costs accumulated by job and cost code until the project completes and the balance moves to a fixed-asset account.
  • Intercompany β€” the due-to and due-from detail between entities, so each side of every cross-entity transaction can be traced and, at consolidation, eliminated.

The sub-ledger structure is also a control. The GL accounts that sub-ledgers support, cash, AP, AR, intercompany, CIP, are typically set up as control accounts: accounts that cannot be posted to directly. You cannot write a manual journal entry against the AP control account; the only thing that moves it is the AP function itself, posting an invoice or a payment through the module. The system writes the summary to the GL line, and because nothing else touches that line, the sub-ledger total and the GL balance tie by design. One caveat every controller knows: this protection is only as good as the system's permissions. If security is configured loosely, a user may be able to post a journal entry directly against a control account, and the tie quietly breaks. That is why well-run close processes include a standing reconciliation control: verify at each period end that every sub-ledger balance still ties to its GL control account. When it does, the detail is trustworthy: when an auditor asks what is inside the $2.4 million payable balance, the AP sub-ledger is the answer, invoice by invoice, and it reconciles to the ledger.

For GL coding, the takeaway is that the code on an invoice is doing double duty. It has to land the cost in the right expense or asset account, and it has to flow through the right sub-ledger so the detail, vendor, timing, description, payment, stays attached and auditable.

What are memo accounts?

At the far end of many real estate charts of accounts sits a special group: memo accounts, sometimes called statistical accounts. They exist because financial reports often need numbers that are not financial. Occupancy percentage. Square footage. Unit count. Lease renewal rates. Kilowatt-hours of energy used, increasingly tracked for ESG reporting. None of these is an asset, a liability, equity, revenue, or an expense, but owners and lenders want them on the same reports as the financials, and the reporting engine reads from the ledger.

Memo accounts are the workaround. They hold statistical values inside the ledger's structure so reports can pull occupancy or energy use right alongside NOI, but they are walled off from the money: memo accounts never hit the financial statements. Because a general ledger is double-entry and every posting needs an offset, statistical entries are typically balanced against a designated offset account, a "dump" account that exists purely to absorb the other side and is likewise excluded from the financials. Square footage deserves special mention among these statistics: rentable area drives pro-rata allocations, tenants' CAM shares, benchmarking, and owner reporting, which is why the industry maintains formal BOMA measurement standards just to make area figures consistent and comparable. The result is a ledger that can report a property's occupancy trend and its expense trend from the same source, without a spreadsheet stapled to the side.

Memo accounts rarely involve AP coding directly, but they matter to anyone learning how a real estate GL is designed: they are the clearest evidence that the chart of accounts is a reporting instrument, not just a filing system.

How does the general ledger get updated?

Two ways, and the distinction is the control model in miniature. Most activity reaches the GL through functions: the AP module posts an invoice, the AR module posts a tenant charge, the CIP module posts a draw, and each function writes to its control account with the full sub-ledger detail behind it. The rest arrives through journal entries: manual, deliberate postings used for accruals, corrections, reclassifications, allocations, and period-end adjustments. Journal entries are powerful precisely because they bypass the modules, which is why well-controlled ledgers restrict them, they cannot touch control accounts, they carry approvals, and they leave an audit trail explaining why someone moved the number by hand.

An AP coding error, once posted, gets fixed through that second path: someone writes a reclass entry, months later, with the invoice long paid. Which is the quiet argument for getting the code right the first time.

What are books, and why do real estate ledgers run more than one?

Real estate reporting rarely gets away with a single version of the truth. The same property may need accrual-basis statements for GAAP reporting, cash-basis statements for an owner who thinks in distributions, and fair-value statements for a fund reporting to investors. Briefly: accrual records revenue when earned and expenses when incurred, regardless of when cash moves; cash records only when money actually changes hands; fair value carries assets at current market value rather than historical cost, common in fund and investment reporting; and step-up reflects the revalued basis of assets after an acquisition or ownership change.

Naively, that would mean keeping three or four parallel ledgers and entering every transaction three or four times. Books are how real estate systems avoid that. Think of an architect's drawing set: one base plan of the building, with transparent overlays for the electrical, the plumbing, the fire protection. Nobody redraws the walls on every sheet; each overlay adds only what is different, and you read the combination.

A ledger with books works the same way. Core activity, every invoice, every rent charge, every payment, posts once, to a single base book, typically accrual. The other books hold only adjustments: a cash book carries the entries that convert accrual results to cash basis; a fair-value book carries the mark-to-market adjustments. When it is time to report, the system reads the base book plus the relevant adjustment book, accrual plus cash adjustments yields cash-basis statements, accrual plus fair-value adjustments yields fund reporting. One set of activity, several bases of accounting, no duplicated work.

For GL coding, books are mostly invisible, the invoice posts once to the base book, but they explain something about why the coding has to be right: that one posting feeds every basis of reporting the organization runs. There is no second version to catch the error.

How do REIT requirements shape the general ledger?

REITs are everywhere in real estate, and for good reason: the structure carries significant tax advantages for real estate investment. Keeping that status, though, comes with red-line requirements, and among them, the ones most relevant to GL design are the income and asset tests. A REIT must pass gross income tests every year, at least 75 percent of gross income from real-estate sources like rents and mortgage interest, and at least 95 percent from those sources plus other passive income such as dividends and interest, along with a quarterly asset test requiring at least 75 percent of assets in real estate, cash, and government securities, and it must distribute at least 90 percent of its taxable income to shareholders, under IRC Section 856 and the related rules summarized by Nareit. These are lines a REIT does not want to cross, and the practical question for the accounting team is how hard it is to prove, every quarter and every year, which side of the line the numbers sit on. The answer depends heavily on how the general ledger was set up.

The detail that reaches all the way down to the chart of accounts is impermissible tenant service income (ITSI): income from non-customary services a REIT provides to tenants. ITSI is non-qualifying for both income tests, and it carries a taint rule, if ITSI exceeds 1 percent of a property's gross income, all income from that property becomes non-qualifying. One percent, measured property by property.

A ledger designed with the tests in mind makes compliance a report instead of a project. The common accounting-design controls are straightforward in concept: keep separate revenue accounts for qualifying rents and for tenant services, so ITSI is never blended into a rent line; carry service income at property-level granularity, because the 1 percent taint is tested per property; and segregate activity routed through a taxable REIT subsidiary in its own entity and accounts. Do that, and the quarterly and annual tests read straight off the ledger. Skip it, and every testing season becomes a forensic exercise in decomposing blended accounts, exactly the kind of after-the-fact splitting a GL cannot do. It is the compliance version of the granularity principle: the distinctions you will need must be captured at coding time, because they cannot be reconstructed later.

What actually drives real estate GL design?

Everything above converges on one principle: a general ledger is designed backward from its reporting requirements. What makes real estate unusual is how many masters the same chart of accounts has to serve at once. Four, at minimum: property operations (NOI, budget variance, CAM, owner statements), legal ownership (entity books, joint ventures, intercompany, consolidations), lease economics (recoverability, exclusions, caps, base years, gross-ups, tenant service income), and capital and investor reporting (capex and CIP, debt and reserves, covenants, fair value, fund statements). Institutional portfolios add a fifth constraint on top: their numbers must roll into industry reporting conventions such as the NCREIF PREA Reporting Standards, which exist precisely to make real estate reporting consistent and comparable across managers and funds.

A generic business can often design its COA around department and expense type. A real estate portfolio has to preserve distinctions by property, entity, lease recovery treatment, capital project, reserve, debt structure, and reporting basis, because someone downstream will ask along every one of those lines. How granular do the owners, lenders, auditors, and tax tests need the answers to be? Which bases of accounting will be reported? Which distinctions, recoverable versus non-recoverable, qualifying versus non-qualifying, deal by deal, property by property, must exist in the data? Those answers, not accounting theory, determine how many accounts, which segments, which books, and which sub-ledgers a portfolio's GL carries. The chart of accounts is not just an accounting list; it is the operating map that lets the same transaction roll into NOI, CAM, lender statements, owner reports, tax testing, and fund reporting without being rebuilt later. A chart of accounts is a bet about what questions will be asked of it, and the cost of losing the bet is paid at coding time, one invoice at a time, or at reporting time, one forensic reconstruction at a time.

What happens when GL coding goes wrong?

A GL coding error rarely stays in accounts payable. It flows downstream into every report built on the ledger:

  • CAM reconciliations overbill or underbill tenants, and the dispute arrives months later, after the books are closed.
  • Owner statements misreport property performance, which erodes trust with investors and fund clients.
  • Capital-versus-expense misclassification distorts NOI in the current year and depreciation in every year after.
  • 1099 reporting misses or misclassifies vendor payments.
  • Audits take longer and cost more, because every exception has to be traced back and reclassified.

There is also a quieter cost: rework. Invoices flagged for coding errors, missing information, or mismatches are exceptions, and exceptions are where AP labor concentrates. Ardent Partners' AP Metrics That Matter in 2025 reports an invoice exception rate of 22 percent for all others versus 9 percent for best-in-class teams, and a cost gap between them of nearly five to one, $12.88 versus $2.78 per invoice. In real estate, where a mid-sized portfolio can process tens of thousands of invoices a year, coding quality is a line item.

Who decides the GL code on an invoice?

On paper, the chart of accounts decides. In practice, a person does, and the knowledge that person applies is rarely written down. An experienced real estate AP coder reads a $6,000 HVAC line and asks: which property was this for, what entity owns that property, does the scope make it a repair or an improvement, is it recoverable under those leases, and how did we code this vendor's work last time? None of those answers is on the invoice. They come from the portfolio's structure, its leases, its accounting policy, and its history.

That last source, history, matters more than any manual. Historical coding is the best available guide to how an organization actually treats each kind of expense, though it is not a perfect answer key, because different coders have coded similar invoices differently over the years. Consistency is itself part of the job.

How do real estate teams handle GL coding at scale?

Small portfolios can code by hand. As invoices, vendors, entities, and properties multiply, manual GL coding becomes the bottleneck, and the coder's knowledge becomes the constraint: it lives in a few people's heads, it does not scale, and it leaves when they do.

The approach that fits the problem is a system that learns from a portfolio's own historical coding and predicts the fields that never appear on the invoice, the GL account, the entity, the property, the allocation, then routes only the low-confidence cases to a person for review. Purpose-built systems for real estate AP already work this way in practice: PredictAP, for example, applies this learn-from-history approach across real estate portfolios, so invoices arrive coded for review rather than coded from scratch. The goal is not to remove the accountant. It is to let experienced staff spend their judgment on the invoices that genuinely need it.

Whatever tool a team evaluates, the test is the same: ask how it predicts the fields that are not printed on the invoice, how it handles the same expense coding differently across properties, and how it adapts when the chart of accounts or the coding practices change.

FAQ

What is a GL code in simple terms?

A GL code is the account number from a company's chart of accounts assigned to a transaction so it is recorded in the right category, such as repairs, utilities, or insurance. It is how a business's ledger stays organized and how its financial statements get built.

Is GL coding the same as invoice coding?

No. GL coding assigns the general ledger account. Invoice coding in real estate is the broader decision process that also assigns the legal entity, the property, any allocation across properties, recoverability and capital treatment, and the approval path. The GL code is one decision inside invoice coding.

Why can the same expense have different GL codes at different properties?

Because in real estate, the treatment of a cost depends on the property's accounting policy, its leases, and the scope of the work, none of which appear on the invoice. An HVAC repair can be an operating expense at one building and a capital improvement at another, and both codings can be correct.

What is the difference between an operating expense code and a capital account?

An operating expense code records a cost on the income statement in the current period, reducing that year's net operating income; in commercial properties it may also flow into the recoverable CAM pool. A capital account records the cost on the balance sheet as an asset, depreciated over time, and typically outside current-year CAM recovery unless the lease allows capital costs to be recovered, often through amortization. The choice between them is made at GL coding time.

Who sets up the chart of accounts in a real estate organization?

Typically the controller or head of accounting designs the chart of accounts, often standardizing it across the portfolio while allowing entity- or property-level variations where ownership structures require them. Once set, the chart of accounts becomes the framework every GL coding decision maps into.

What is a control account?

A control account is a general ledger account that is not posted to directly, such as cash, accounts payable, accounts receivable, intercompany, or construction in progress. When configured properly, it can only be updated by the system function that owns it, for example the AP module posting an invoice, which keeps the sub-ledger detail and the GL balance tied. Because loose permissions can allow direct journal entries against these accounts, teams typically verify at each period end that every sub-ledger still ties to its control account.

What is a memo or statistical account?

A memo account is a non-financial account in the ledger used to hold statistics like occupancy, square footage, renewal percentage, or energy usage so they can appear on reports alongside financial results. Memo accounts sit outside assets, liabilities, and equity, never hit the financial statements, and are balanced against a designated offset account rather than against real money.

What are books in real estate accounting?

Books let one ledger report under multiple bases of accounting without duplicating activity. Core transactions post once to a base book, typically accrual, and separate books hold only the adjustments for other bases, such as cash or fair value. Reports combine the base book with an adjustment book to produce statements on the desired basis.

What is the difference between a GL code, a cost code, a job code, and a segment?

A GL code is the account from the chart of accounts that determines a cost's financial-statement category. A job code identifies a specific capital or construction project, and a cost code breaks that job into cost categories, like site work or electrical, within the construction-in-progress sub-ledger. A segment is an additional dimension attached to the GL account, such as a department, location, deal, or unit, that adds reporting granularity without adding new accounts. One invoice line can carry all four: a GL account, a job and cost code if it belongs to a project, and segments for reporting.


About the author: David Stifter is Co-Founder and CEO of PredictAP, founded in 2020 and based in Boston, which builds AI invoice capture and coding software for real estate accounts payable. He works with real estate finance and AP teams automating invoice capture, coding, and approval across large property portfolios.

This article is an accounting-architecture explanation, not tax or accounting advice. Leases, governing documents, accounting policy, and your advisors control the final treatment of any specific cost.

 

Sources

  • PwC Viewpoint, "Property, Plant and Equipment and Other Assets" guide, Chapter 1: Capitalization of costs (ASC 360-10; ASC 970 real estate project costs): https://viewpoint.pwc.com/dt/us/en/pwc/accounting_guides/property_plant_equip/property_plant_equip_US/chapter_1_capitaliza_US/12_accounting_for_ca_US.html
  • EY, "Financial Reporting Developments: Real estate project costs" (ASC 970 capitalization guidance): https://www.ey.com/content/dam/ey-unified-site/ey-com/en-us/technical/accountinglink/documents/ey-frdbb1883-05-01-2025.pdf
  • BOMA International, "Functional Accounting Guide and Chart of Accounts" (the industry reference COA: income segregated by type, expenses by functional cause): https://boma.org/resources-publications/
  • BOMA International, floor measurement standards (standardized rentable-area measurement underpinning allocations and CAM shares): https://boma.org/boma-standards/
  • NCREIF, "NCREIF PREA Reporting Standards" (institutional real estate reporting consistency): https://ncreif.org/about/standards/
  • Nareit, "How to Form a REIT" (summary of REIT income, asset, and distribution requirements): https://www.reit.com/what-reit/how-form-reit
  • RSM US, "Navigating REIT income tests" (IRC Β§856 75%/95% gross income tests; impermissible tenant service income and the 1% property-level threshold): https://rsmus.com/insights/industries/real-estate/navigating-reit-income-tests.html
  • Ardent Partners, "Accounts Payable Metrics That Matter in 2025" (based on State of ePayables 2024, 212 respondents; best-in-class $2.78 vs all others $12.88 per invoice; exception rate 9% vs 22%): https://ardentpartners.com/ap-metrics-that-matter-in-2025/
  • CAM reconciliation error rates (40% material errors, ~28% tenant-found discrepancies), attributed to 2023 Tango Analytics and JLL research, as reported by Springbord, "How CAM Audits Help Tenants Control Real Estate Expenses": https://www.springbord.com/blog/how-cam-audits-help-tenants-control-real-estate-expenses/
  • PredictAP, "How to Code Real Estate Invoices: A 9-Step Guide for AP Teams (2026)": https://blog.predictap.com/how-to-code-real-estate-invoices