--- title: CAM pools description: Tag commercial spend into CAM and operating-expense pools per property, and total it by pool and month for your year-end true-up. section: Guides order: 43 navLabel: CAM pools updated: 2026-09-25 --- # CAM pools On a commercial building, part of what you spend is recoverable from the tenants: common area maintenance, real estate tax, insurance. The lease says which costs, and each tenant's share is worked out once a year. inletAP helps with the first half of that work. Tags recoverable expenses into your CAM pools and totals them. A pool is a tag on how a cost is coded. It adds no bill line, and the bill in your ledger does not change. CAM pools are on every plan, including Free. ## What a pool is A pool is a named group of recoverable costs at one property. Use the names your leases use, such as "CAM", "Real estate tax", "Insurance" or "Utilities - common". Leases often recover these separately, with separate caps, which is why a pool has a name and is not just a yes or no. Each pool has: - **A name**, unique at that property. - **Default GL codes.** A cost coded to one of these GL codes at that property goes into the pool by default. A GL code can default into only one active pool per property, so the default never has to guess. - **Active or retired.** A retired pool keeps its history, is no longer offered, and is never picked as a default. Pools are offered for properties whose type is Commercial or Mixed use. On any other property, including one whose type is not set, creating a pool asks you to confirm first, so a CAM pool on a residential building is a decision and not a slip. A property can hold up to 20 active pools. Retired pools do not count, and reactivating one checks the limit again. A pool that was never used can be deleted. A pool with tagged spend can only be retired, because deleting it would quietly shrink past totals. Admin and Controller Approver create, edit, retire and delete pools. AP Specialists can read them and tag spend into them. ## Tag spend on the split Each row of the split on the invoice screen carries a pool. See [splitting an invoice](/docs/splitting-invoices) for the split itself. The pool picker on a row shows one of three things: - **Default: CAM (GL 6100).** The row follows the default: the active pool at that building whose default GL codes include the row's GL code. If no pool takes that code, it says "Default: not recoverable". - **A pool a person picked.** Pick another pool of the same building. A pool must belong to the building the row is coded to. - **Not recoverable (set by a person).** Pick this to keep the row out of every pool on purpose. How the choice is kept: - **A person's choice is kept** when the split is saved again, as long as the row keeps its line, building, unit and GL code. To undo it, pick the "Default" option again. That is the only way back to the default. - **A row that follows the default keeps following it.** When a pool is created or reactivated, or a GL code is added to it, inletAP applies the new default to those rows on invoices at that building that are not yet exported, approved ones included. Retiring a pool or removing a GL code changes only invoices that are not yet approved; approved and exported invoices keep the pool they had. The pools screen says how many rows and invoices changed, and how many on approved invoices kept their pool. None of this sends an invoice back to review, because it changes no amount and no account. - **A change you make on the split is saved with the split.** It is audited like any coding edit. Like any change to the split, it sends an approved invoice back to review, and it cannot be made once the bill has been exported. A pool is a tag on a row of the split. An invoice coded to one building with no split rows counts in that building's spend, but it cannot be in a pool until it has a split row. **The bill in the ledger does not change.** The amount, the account, the class or tracking and the number of bill lines are all the same with or without a pool. ## The CAM report The CAM report totals the tagged spend by property, pool and month. - **What it counts.** Pre-tax spend on approved or exported invoices, by the month the invoice was received, on split rows tagged with a pool. An invoice still in review is not counted yet. - **The window.** The last twelve months by default. One report covers at most 24 months. - **Drill down.** Open any total to see the invoices behind it, for that pool and that month. - **CSV.** Download the report as a CSV with one row per property, pool and month, and a recoverable share line per property. The CSV export can also carry the pool on each split row. See the `allocation_recovery_pool` column source in the [exports reference](/docs/exports-reference). ## Recoverable share The recoverable share of a property is the pre-tax spend tagged to a pool at that property, divided by all pre-tax spend coded to that property, on approved or exported invoices received in the window. When a property had no spend in the window, the share is left empty rather than shown as zero. It is the part of the building's spend that your leases may let you recover, as tagged. It is not what any tenant owes. ## What inletAP does not do inletAP does not do the year-end true-up your lease administrator or CAM tool does. Pro-rata shares, base years, expense stops, caps, gross-up, exclusions, admin fees and the true-up against estimates are all lease terms, and inletAP does not hold your leases. What inletAP hands to that work is the input: correctly tagged, evidence-backed totals, with every total traceable to the invoices behind it. ## Where to go next - [Cost recovery](/docs/cost-recovery) — the part of a single bill a resident or unit owner owes back. - [Splitting an invoice across properties](/docs/splitting-invoices) — the split rows a pool is tagged on. - [Exports reference](/docs/exports-reference) — CSV column sources, including the pool.