Chapter 13.2

Importing a rental portfolio

A building you buy comes with people already living in it. This chapter brings a seller's rent roll into the books in one sitting: the property, its units, the tenants, the running leases, a parking charge and the money owed, paid ahead and held as deposits on the day of the import. Every file is checked first by a dry run, one refused row is corrected, and the result is checked on the rent roll and the Deposits page.

Level Intermediate Time about 20 minutes to read; 30 minutes for a small portfolio You need Chapter 13.1 (the module on and set up); the Property settings edit right; the seller's rent roll Edition November 2026 (revised 6 November 2026)
Learning objectives

When you finish this chapter you will be able to:

  1. Explain the six import types and why they must be imported in order.
  2. Fill an import template from a seller's rent roll.
  3. Read a dry run, download its error file and correct a refused row.
  4. Choose the as-of day and the opening balance account for opening balances.
  5. Check what a commit made: the leases, their move-in gates, the ledger entries and the deposits.
SECTION 1

What the importer does

Entering a building by hand means one property form, a unit grid, a contact per tenant, a lease wizard per lease and an opening entry per balance. For one house that is fine. For a fourplex it is an afternoon, and for forty units it is a week. The importer does the same work from six spreadsheets, and it does it with the same rules as the hand-entry screens: a row the lease wizard would refuse, the importer refuses too.

Open Settings → Property Management → Data → Import: the Data tab of the module's settings has two sub-tabs, Import and Custom fields, and the Settings sub-menu has an Import entry that goes straight there. The page shows one card per import type, numbered in the order you must use them, because each step needs the one before it: units need their property, leases need their unit and their tenant, charges and balances need their lease.1

Settings, Property Management, Data tab with its Import sub-tab selected, before anything was imported: breadcrumb Settings / Property Management, the tabs General, Fees and bills, Leasing, Tasks and inspections, Documents and messages and Data, the sub-tabs Import and Custom fields; the line Import in this order, each step needs the one before it, every file is checked by a dry run first and nothing is written until you commit a clean dry run; cards 1 Properties, 2 Units, 3 Tenants and 4 Leases, each with its purpose, a Needs line, Template .xlsx and .csv links, a file box and an Upload and dry run button; the Leases card also has a Match tenants by picker set to E-mail
Figure 1. The Import tab before anything was imported. 5 the Data tab, with Import chosen below it. 1 the rule of the page: import in order, and nothing is written until a clean dry run is committed. 2 every card offers its template, as .xlsx or .csv. 3 choose the file and Upload and dry run. 4 leases (and opening balances) find their tenants by e-mail or by full name. Cards 5 and 6 and the Runs history sit below.
CardWhat one row makesNeeds
1. PropertiesA property with its address, and its chart accounts, as for a property added by handNothing
2. UnitsA unit: number, class, beds, baths, size, market rent, statusIts property
3. TenantsA customer marked tenant, with address and forwarding addressNothing
4. LeasesA running lease with its rent and due day; the tenant is moved in. No deposit invoice is madeIts unit and its tenant
5. Recurring chargesA repeating charge of a lease: parking, pet rent, storageIts lease (unit and start day)
6. Opening balancesPer lease: one opening invoice, one credit and one deposit entry, as of a chosen dayIts lease

Each upload is a dry run first. The importer reads every row, checks it with the target screen's own rules, looks up what the row names (the property by name, the unit by property and number, the tenant by e-mail or name, the account by number or name) and marks the row OK, Failed with the reasons, or Already there. Nothing is written but the record of the run itself. Only a dry run with no failed row can be committed, and only within 24 hours.2 A committed import has no undo: corrections are ordinary voids and reversals, as for any entry.

SECTION 2

From the seller's rent roll to six files

Start with the source. The seller's rent roll for Riverside, as of November 5, reads:

UnitSizeMarket rentTenantLease
12 bd, 1 ba, 860 sq ft$1,350.00Priya RamanFixed, 01/01/2026 to 12/31/2026
22 bd, 1 ba, 860 sq ft$1,350.00Marcus BellFixed, 07/01/2025 to 06/30/2027
31 bd, 1 ba, 640 sq ft$1,250.00Noah BrandtMonth to month since 03/01/2024
42 bd, 1.5 ba, 920 sq ft$1,400.00Vacant
UnitMonthly rentDeposit heldOwesPaid ahead
1 Priya Raman$1,325.00$1,325.00--$1,325.00
2 Marcus Bell$1,350.00$1,350.00----
3 Noah Brandt$1,195.00 + parking $50.00$1,100.00$1,195.00--
Totals$3,870.00 + $50.00$3,775.00$1,195.00$1,325.00

Rent is due on the 1st. Noah has not paid November. Priya paid December's rent early. The seller's roll also says, for every lease, next due: 12/01/2026 for Priya and Marcus, and 11/01/2026 for Noah, because the November rent is still open. Remember that last figure.

Download each template from its card. The .xlsx has two sheets: Template, a header row and one example row, and Instructions, which lists every column, whether it is required, an example and what it takes. Delete the example row, keep the header row as it is, and add your own rows. Summit copied the rent roll into the six templates and saved each as a .csv file:

FileRowsWhat Summit typed
riverside-properties.csv1name Riverside Fourplex, type 2 (Multi-family), addr1, city Bend, state_code OR, zip 97703
riverside-units.csv4units 1 to 4: class residential, beds, baths, sq_ft, market_rent_amount, status occupied (4: vacant)
riverside-tenants.csv3first and last name, e-mail (priya.raman@example.com and so on), phone, address in the building
riverside-leases.csv3unit, primary_tenant_email, type (fixed or at_will), start_on, due_day 1, rent_amount, rent_next_due_on, end_on, deposit_required_amount, signature_status signed
riverside-recurring-charges.csv1unit 3, lease_start_on 2024-03-01, kind parking, account Revenue:Riverside Fourplex:Late & Other Tenant Fees, 50.00, monthly, next_due_on 2026-12-01, memo Carport 3
riverside-opening-balances.csv3unit, lease_start_on, balance_due_amount, prepaid_amount, deposit_held_amount
Pro tip: write dates the way the template does

Dates are YYYY-MM-DD or MM/DD/YYYY and amounts are plain numbers (1325.00) with no currency sign. Columns may come in any order, but an extra column is refused, so delete the seller's own columns (lease notes, phone extensions) before you upload. A column named cf:<field name> fills a custom field of the record (Chapter 13.1).

PROCEDURE A

Import the property, the units and the tenants

  1. 1

    On card 1, choose riverside-properties.csv and click Upload and dry run

    The upload opens the run's own page. Read it top to bottom before you commit.

Properties import dry run page for riverside-properties.csv: green banner Dry run done, 1 row, 1 OK, 0 failed, 0 already there; State Ready to commit, the file name, the first characters of its SHA-256, template version 1, run 11/05/2026 4:26 PM by Alex Morgan; the Commit card saying 1 property will be made, the no-undo warning, the Commit button and Cancel this dry run; the Rows card with row 1 OK
Figure 2. A clean dry run, photographed before it was committed, on a release that laid the settings out as one long row of tabs (once committed, the same page shows the state Committed and a link, Open the commit, instead of the Commit card). 1 Ready to commit. 2 the first characters of the file's SHA-256 fingerprint: the commit sends this same file again, byte for byte. 3 what the commit will do, "1 property will be made." 4 Commit. 5 Cancel this dry run if you change your mind. 6 one row, OK.
  1. 2

    Click Commit and wait for Done

    The commit runs in the background. The page reads "Committing: n of n rows" and refreshes itself every few seconds; you may leave it. The property is made with its chart accounts, exactly as Chapter 13.1 makes them by hand: Revenue:Riverside Fourplex:Rents (45310), Late & Other Tenant Fees (45320), Liabilities:Security Deposits Held:Riverside Fourplex (22530) and the rest.

  2. 3

    Back on the Import tab, do the same for units (card 2) and tenants (card 3)

    The units dry run answers "4 units will be made", the tenants dry run three rows OK. Commit each. Tenants become ordinary customers marked tenant (Chapter 2.6); a contact already in the books with the same e-mail is the same person and is not made twice.

Caution: a name is not a person

Leases find their tenant by e-mail unless you choose Full name. Matching by name is risky in books that already hold many customers and vendors: two different people can share a name, and the lease would go to whichever contact the importer finds. Give every tenant an e-mail address in the file, even a placeholder you replace later, and keep matching by e-mail.

PROCEDURE B

Import the leases, and correct the refused row

A lease row names its unit, its primary tenant, the type, the first day, the due day, the rent in force and the next rent due date. A lease that started before today is saved and moved in at once, so that rent simply posts on its next due day. That is why the next due date matters so much.

  1. 1

    On card 4, leave Match tenants by at E-mail, choose riverside-leases.csv and upload it

    The dry run comes back red. Right after the upload a banner reads "Dry run done: 3 rows, 2 OK, 1 failed, 0 already there."; the same count stays in the Rows card when you come back to the run later.

Leases import dry run page of riverside-leases.csv, under the Data and Import tabs with an All imports button: State Has errors, the file, the first characters of its SHA-256, template version 1, run 11/05/2026 4:28 PM by Alex Morgan; the Commit card says fix the failed rows and upload the file again, only a dry run without a failed row can be committed, with the Commit button greyed out; the Rows card, 3 rows: 2 OK, 1 failed, 0 already there, with Download errors, rows 1 and 2 OK and row 3 Failed with the message: The next rent due date 11/01/2026 is on or before today, 11/05/2026: the schedule would post it at once as a catch-up. What was owed before it belongs in the opening balance; give a later due date, or the opening balances' as-of day
Figure 3. The mistake the dry run caught. 1 Has errors; the tabs above show where the run lives, Data → Import, and All imports goes back to the list. 2 Commit is greyed out: only a dry run without a failed row can be committed. 3 Download errors gives the failed rows back as a file. 4 row 3, Noah Brandt's lease, failed. 5 the reason, in full.

The message reads: "The next rent due date 11/01/2026 is on or before today, 11/05/2026: the schedule would post it at once as a catch-up. What was owed before it belongs in the opening balance; give a later due date, or the opening balances' as-of day."

Think about what would have happened without the check. A lease's rent schedule posts every due date from its next due date onward, the backlog included (Chapter 14.1). With 11/01/2026, the schedule would post November's $1,195.00 the moment the lease existed. Procedure D brings in the same $1,195.00 as Noah's opening balance. Noah would owe November twice: $2,390.00 on a $1,195.00 debt. The seller's "next due" was right for the seller's ledger, where November was already billed; in Summit's books November is history, and history belongs in the opening balance.

  1. 2

    Download the errors and read them

    The file, leases-errors-b8ab7697.csv, holds the failed rows only, with their original columns and two more: row (the row's number among the data rows, not counting the header) and errors.

ColumnValue in the error file
property_name, unit_noRiverside Fourplex, 3
primary_tenant_emailnoah.brandt@example.com
type, start_on, due_dayat_will, 2024-03-01, 1
rent_amount, rent_next_due_on1195.00, 2026-11-01
deposit_required_amount, signature_status1100.00, signed
row3
errorsThe next rent due date 11/01/2026 is on or before today, 11/05/2026: the schedule would post it at once as a catch-up. What was owed before it belongs in the opening balance; give a later due date, or the opening balances' as-of day.

The file is one header row and one data row; it is shown here turned on its side. The empty columns (primary_tenant_name, end_on, cosigner_email) are left out.

  1. 3

    Correct the source file, not the error file

    In riverside-leases.csv change Noah's rent_next_due_on to 2026-12-01 and save it as riverside-leases-fixed.csv. Correct the whole file rather than uploading the error file alone: the two good rows have not been written yet either, because nothing is written until a commit.

  2. 4

    Upload it from the run page's Upload a fixed file card

    The card at the bottom of the failed run takes the same kind of file and checks it with a new dry run. (Its Options card, Dry run again, re-checks the same file with other options, which does not help when the file itself is wrong.) The new dry run reads 3 rows, 3 OK, and its summary says "3 leases will be made, all 3 activated at once." That is three leases, each moved in at once because each started before today.

  3. 5

    Commit

    The page reads "Done: 3 leases (all activated at once) made."

Leases import commit page for riverside-leases-fixed.csv: State Done, the file, hash, template, time and a link The dry run this commit follows; the Done card reading Done: 3 leases (all activated at once) made, with a link Open Rent roll and the note that each record notes Imported in run followed by the run number in its activity; the Rows card, 3 rows: 3 OK, with rows 1 to 3 OK, each with an Open the lease link in the Record column
Figure 4. The committed leases. 1 Done. 2 a commit links back to the dry run it follows. 3 "Done: 3 leases (all activated at once) made." with a shortcut to the rent roll. 4 each record notes the run number in its activity, so you can always find where it came from. 5 the Record column: each row opens its lease.
Pro tip: import one lease per unit at a time

A file with two leases for the same unit is refused ("import one lease per unit at a time"), and so is a lease that overlaps one already in the books. If the seller's roll shows a renewal that starts next month, import the running lease now and enter the renewal on the lease afterwards (Chapter 13.7).

PROCEDURE C

Import the parking charge

Rent comes with the lease; anything else that repeats is a recurring charge. Noah rents carport 3 for $50.00 a month. The row finds its lease by the unit and the lease's start day, takes the income account by number or full name, and needs a next due date after today, for the same reason as the rent.

  1. 1

    On card 5, upload riverside-recurring-charges.csv

    The dry run answers "1 recurring charge will be made."

  2. 2

    Commit

    Noah's lease now carries a second schedule, Parking 50.00 monthly, next due 12/01/2026, shown on its Charges tab. From December 1 the lease's monthly charges are $1,195.00 + $50.00 = $1,245.00.

PROCEDURE D

Import the opening balances

The leases know their future. The opening balances bring in their past, as one figure each on one day: what the tenant owed, what the tenant had paid ahead, and the deposit held. Each non-zero amount becomes one entry:

ColumnBecomesRiverside
balance_due_amountOne invoice dated the as-of day, its line on the opening balance accountUnit 3: $1,195.00
prepaid_amountOne customer credit on the tenant's account, to be used on an invoice by handUnit 1: $1,325.00
deposit_held_amountOne journal entry from the opening balance account to the property's deposit liability, and its deposit ledger rowUnits 1, 2, 3: $1,325.00 + $1,350.00 + $1,100.00 = $3,775.00
  1. 1

    On card 6, set Balances as of to 11/05/2026

    The day may be today at the latest, and not inside closed books. Rent due after this day posts as usual. The leases and recurring charges cards have no as-of field: their next due dates must be after today, whichever as-of day you choose here, and anything that fell due before today belongs in the opening balances. In this story the two days are the same.

  2. 2

    Choose the Opening balance account

    The list holds the equity accounts first, then the income accounts. Summit's bookkeeper was tempted by Revenue:Riverside Fourplex:Rents, since Noah's $1,195.00 is November rent. The card objects at once.

The 6. Opening balances card of the Import tab: Balances as of 11/05/2026 with the help text Today at the latest, and not inside closed books, rent due after this day posts as usual; Opening balance account set for the moment to Revenue:Riverside Fourplex:Rents, with the red warning This counts the balance as income again; Match tenants by E-mail; the file box and the Upload and dry run button
Figure 5. The opening balances card. 1 the as-of day. 2 an income account chosen. 3 the warning, "This counts the balance as income again." 4 the template. 5 Upload and dry run.

The warning is written for the usual case, moving books from older software, where the old system already counted the rent as income. Here there is a second reason to refuse: one account serves all three columns, and the three deposits would be debited to Rents too, turning $3,775.00 of money held for tenants into negative rent. Summit chose the default, Equity:Opening Balances, and leaves the allocation of the purchase to its accountant.3

  1. 3

    Upload riverside-opening-balances.csv and read the summary

Opening balances import dry run of riverside-opening-balances.csv: State Ready to commit, As of 11/05/2026, Opening account 3900 Equity:Opening Balances; the Commit card summary 3 leases, 1 prepaid credit 1,325.00, 3 deposits 3,775.00, 1 opening invoice 1,195.00 will be posted as of 2026-11-05, and the Commit button; the Rows card with three rows OK
Figure 6. The opening balances dry run, before its commit (photographed on the same earlier release as the properties dry run). 1 as of 11/05/2026. 2 the opening account, 3900 Equity:Opening Balances. 3 the summary adds the file up for you: "3 leases, 1 prepaid credit 1,325.00, 3 deposits 3,775.00, 1 opening invoice 1,195.00 will be posted as of 11/05/2026." (the earlier release in the picture printed the day as 2026-11-05). 4 Commit.

Compare the summary with the seller's totals before you commit: $1,195.00 owed, $1,325.00 paid ahead, $3,775.00 held. All three agree.

  1. 4

    Commit

    The page reads "Done: 1 prepaid credit, 3 deposits, 1 opening invoice posted on 3 leases." Noah's opening invoice is number 1250 (numbers are shared with every other invoice of the books, so yours will differ), Priya's credit is OB-CAE706, and the three deposit journals are entries 201, 202 and 203.

Caution: a lease can take its opening balance only once

A second opening balances run for the same lease answers Already there, and the dry run refuses a lease whose schedules already posted a charge on or before the as-of day ("its opening balance is in the books already"). If you got a figure wrong, correct the entry itself: void the invoice, or adjust the credit or the deposit on the lease.

PROCEDURE E

Check what the commit posted

An import is only as good as its entries. Open Accounts → Chart of Accounts, search for Opening Balances and click its name to open its register (Chapter 4.2). Read the lines dated November 5.

EntryDebitCreditAmount
Invoice 1250, Noah's opening balanceAccounts ReceivableEquity:Opening Balances$1,195.00
Credit OB-CAE706, Priya's prepaid rentEquity:Opening BalancesLiabilities:Customer Credits$1,325.00
Journal entries 201, 202, 203, the deposits heldEquity:Opening BalancesLiabilities:Security Deposits Held:Riverside Fourplex$3,775.00

Every line sits where the card promised: the opening balance account takes the other side of the invoice, the credit and the deposits. The prepaid amount in particular is money the seller collected before Summit owned the building, so it is not Summit's expense; the credit is posted from Equity:Opening Balances to the tenant's credit on the Customer Credits liability, which is what Summit owes Priya in rent.4 The importer cannot judge the figures themselves, because nothing is wrong with any row; only reading the entries against the seller's roll does that.

  1. 1

    Note the credit for the first invoice

    The credit itself stays where it is: $1,325.00 on Priya's customer account. Nothing applies it to rent by itself, so put a reminder in the December rent day: when the December rent invoice posts on 12/01/2026, use the credit on it (Chapter 2.5, Procedure B). Otherwise the tenant is billed for a month they already paid.

The import's effect on the opening balance account is easy to state:

Equity:Opening BalancesDebitCredit
Deposits held (201-203)$3,775.00
Prepaid rent (credit OB-CAE706)$1,325.00
Noah's November rent (invoice 1250)$1,195.00
Net$3,905.00

$3,775.00 + $1,325.00 − $1,195.00 = $3,905.00. That debit is not an error; it is a clearing balance that waits for the purchase entry, the one that books the closing statement of the sale.

SECTION 3

The result

The Runs card at the bottom of the Import tab keeps every dry run and commit of the books, newest first. It is the audit trail of the import.

The Runs card of the Import tab after the import, newest first, with filters Type, State, From and To: thirteen runs on 11/05/2026 by Alex Morgan, from the Properties dry run and commit at 4:26 PM through Units, Tenants, the Leases dry run of riverside-leases.csv with state Has errors (3 rows, 2 OK, 1 failed), the Leases dry run and commit of riverside-leases-fixed.csv, Recurring charges, and the Opening balances dry run and commit at 4:29 PM; every commit shows Done and every dry run that was committed shows Committed
Figure 7. Thirteen runs in four minutes. 1 filter by type, state or dates. 2 each commit, Done. 3 the refused leases file, Has errors: 3 rows, 2 OK, 1 failed. 4 a dry run that was committed reads Committed; opening it links to its commit.

Next, open Property Management → Properties and people → Properties → Riverside Fourplex.

Riverside Fourplex property Summary tab, photographed later in the month: chips Active and 4 units beside the name, Edit property at the right; Summit Outfitters Inc., Multi-family, 1185 NW Riverside Blvd, Bend OR 97703; Units card 4 total, 3 occupied, 1 vacant, 0 notice, 0 down, 1 open task; Money card deposits held in and rent banked in the books' default, reserve $0.00; People and place with manager not set, kind Multi-family, state OR; Groups card with Bend portfolio; Tasks with one task and Inspections with none; Recent activity listing leases added on units 2, 4, 1, 3 and 2, newest first
Figure 8. The imported property, photographed later in the month, when Chapters 13.4 and 13.7 had added leases of their own. 1 Multi-family, at the address from the file. 2 4 units: 3 occupied, 1 vacant. Unit 4 is listed for rent in Chapter 13.3. 3 deposits and rent use the books' default banks, because the file named none (Chapter 13.1 shows how to set a property's own). 4 Summit's Bend portfolio group (Chapter 13.1). 5 the activity lists the latest records made, newest first (on the day of the import, the three imported leases and the units); All activity shows every unit and lease. 6 status and unit count, beside the name.

Then Money → Rent roll, with the property filter set to Riverside Fourplex. On the day of the import it lists the three imported leases: Priya Raman (unit 1), Marcus Bell (unit 2) and Noah Brandt (unit 3), every one next due 12/01/2026.

Rent roll filtered to Riverside Fourplex, Current, sorted by tenant: the bar Pick leases, then choose an action with Receive payments, Statements, Letter and a More button; Unit 1 Priya Raman, Active and Renewal: Renewed, fixed, rent $1,325.00, next due 12/01/2026, balance $13.02, deposit held $1,325.00, 01/01/2026 to 12/31/2026, signed; Unit 1 Priya Raman, Future renewal lease from 01/01/2027; Unit 3 Noah Brandt, Active and Eviction pending, month to month, $1,195.00, next due 12/01/2026, balance $1,195.00 in red, deposit $1,100.00, from 03/01/2024, open end; Unit 4 Casey Lindqvist, Future, from 12/01/2026; each row ends in a Receive payment button and a More button
Figure 9. The rent roll, photographed later in the month and sorted by tenant: by then Priya had a renewal waiting (Chapter 13.7), Marcus Bell had moved out (Chapter 13.7) and Casey Lindqvist had signed for unit 4 (Chapter 13.4); a newer lease on unit 2 is below the picture. 1 the property filter. 2 the running leases next due 12/01/2026, including Noah's corrected date. 3 Noah's balance, $1,195.00: November, from the opening invoice. 4 Priya's imported lease ends 12/31/2026; Noah's is open, month to month. 5 Receive payment on every row, 6 with the row's other actions in its More menu (···). 7 tick rows, then choose an action for all of them.

On the day of the import Priya's balance read $0.00, not −$1,325.00 (the $13.02 in the picture comes from the later chapters). The imported prepaid amount is a customer credit, and nothing applies it by itself: December's rent will post as a full $1,325.00 invoice on December 1, and the credit stays on the tenant's account until someone uses it on that invoice (Chapter 2.5, Procedure B). Until then the tenant's account shows December both paid ahead and billed.5 Open Noah's lease and its Move-in tab to see how an imported lease became active without passing every move-in gate of Chapter 13.4 by hand.

Move-in tab of the Unit 3 lease, Noah Brandt, with chips Active, Signed and Eviction pending and the tools Statement, Edit lease, a More button and Receive payment: the Move-in gates card with Activated 11/05/2026 4:28 PM; Signed lease on file Overridden with the reason imported: in possession before the module and the time, and an Upload signed lease button; Deposit received Passed: $1,100.00 of $1,100.00 received ($1,100.00 held from the opening balance); Move-in checklist completed Overridden with the same reason, no run started
Figure 10. The move-in gates of an imported lease. 1 activated 11/05/2026 4:28 PM. 2 two gates, the signed lease and the move-in checklist, overridden by the import, 3 with the reason "imported: in possession before the module" and the time. 4 the deposit gate passes on its own: the imported deposit counts, "$1,100.00 of $1,100.00 received ($1,100.00 held from the opening balance)." 5 Upload signed lease: the signed lease can still be added for the file. 6 the lease's tools: Statement, Edit lease, the More menu (letter, renewal, move-out) and Receive payment. The Eviction pending chip comes from Chapter 13.6.

The Financials tab shows the money side of the same lease. Above the ledger it also carries the lease's holds, late fees and collections cards (Chapters 13.5 and 13.6), and between the ledger and the deposits a Credits and concessions card for credits given from the lease itself; for an imported lease it starts empty, because the imported prepaid credit belongs to the tenant's account, not to the lease's concessions.

Financials tab of the Unit 3 lease: the Ledger with one line dated 11/05/2026, Invoice 1250, Charge, memo Opening balance as of 11/05/2026, $1,195.00, totals charge $1,195.00, payment $0.00, balance $1,195.00; the Credits and concessions card with a Give a credit button and No credit given from this lease; the Deposits card, held $1,100.00, with one line 11/05/2026 Deposit $1,100.00 Opening deposit held (imported) and a Journal entry link, held total $1,100.00 on Riverside Fourplex
Figure 11. Noah's ledger and deposit. 1 invoice 1250, "Opening balance as of 11/05/2026". 2 balance $1,195.00. 3 the deposit row, $1,100.00, "Opening deposit held (imported)", 4 with its journal entry. 5 held on the Riverside Fourplex deposit liability. 6 Credits and concessions, empty.

Last, Money → Deposits compares the deposits the leases hold with the bank they sit in.

Deposits page, photographed later in the month: the Money Market Savings card for deposits of Galveston Building and Riverside Fourplex, marked Over, bank balance $385,976.49, held $6,425.00, difference +$379,551.49, and the line $1,400.00 of what is held is charged but not yet paid by the tenants, so it is not in the bank yet; the Tenant Deposit Trust card for Juniper Cottage agreeing at $2,100.00; the table of six leases with deposits held, Only leases with deposits held ticked, including Riverside units 1, 3 and 4 for Priya Raman $1,325.00, Noah Brandt $1,100.00 and Casey Lindqvist $1,400.00 ($1,400.00 unpaid), totals $8,525.00
Figure 12. Deposits, photographed later in the month. 1 Riverside shares the books' default deposit bank, Money Market Savings, with the Galveston Building. 2 held. 3 difference. 4 still Over. 5 the Riverside deposits are listed per lease. 6 total held for all leases. 7 the part of what is held that tenants have been charged but not yet paid.

The arithmetic on the day of the import: Galveston's $2,600.00 + Riverside's $3,775.00 = $6,375.00 held. The bank balance did not move, $387,151.49, because the import records what is owed to tenants, not the cash. So the difference fell by exactly the new deposits: $384,551.49 − $3,775.00 = $380,776.49. Chapter 13.5 explains why this bank always reads Over: it also holds the store's savings.

The picture, taken later, reads differently because later chapters moved deposits: Marcus Bell's $1,350.00 was settled at his move-out (Chapter 13.7), and Casey Lindqvist's $1,400.00 for unit 4 was charged (Chapter 13.4). Held is now $2,600.00 + $1,325.00 + $1,100.00 + $1,400.00 = $6,425.00. Casey's deposit is charged but not yet paid, and the card says so in a line of its own: that $1,400.00 counts as held but is not in the bank yet.

Pro tip: follow the deposit money

When a building is sold, the seller hands over the tenants' deposits, in cash or as a credit on the closing statement. Either way the money must end up where the books say deposits are held. With a dedicated deposit account, this page would now show a shortfall of $3,775.00 until that money is recorded there (Chapter 4.6 for a deposit, Chapter 4.7 for a transfer between banks), which is exactly the reminder you want.

CHECKLIST

Importing a portfolio

  • [x] The seller's rent roll totals written down before you start: rent, deposits, owed, prepaid.
  • [x] Every tenant has an e-mail in the file; leases matched by e-mail.
  • [x] Every next due date (rent and recurring charges) after today (and after the as-of day); what was owed before it in the opening balances.
  • [x] Imported in order: properties, units, tenants, leases, recurring charges, opening balances; each dry run read before its commit.
  • [x] Failed rows corrected in the source file and re-uploaded with Upload a fixed file.
  • [x] Opening balance account is an equity account; the dry run summary matches the seller's totals.
  • [x] The entries read in the registers: invoice, credit and deposits each against the opening balance account.
  • [x] Rent roll, move-in gates, lease ledgers and Deposits page checked.
  • [x] A reminder set to use each imported prepaid credit on the tenant's first invoice (Chapter 2.5), so the rent is not collected twice.
SECTION 4

Check your understanding

1. Why can the leases file not be imported before the tenants file?

Answer

Each lease row names its primary tenant, and the dry run looks that tenant up in the books. Until the tenants are committed, the row fails with "The tenant ... is not in the books: import the tenants first."

2. Noah's lease was refused with a next due date of 11/01/2026. What would have gone wrong if it had been accepted?

Answer

The rent schedule would have posted November's $1,195.00 at once as a catch-up, and the opening balance would have brought in the same $1,195.00 again: November owed twice. The fix is a next due date of 12/01/2026, with November in the opening balance.

3. Two rows of the first leases file were OK. Were those two leases in the books after the failed dry run?

Answer

No. A dry run writes nothing but its own run record, and a dry run with a failed row cannot be committed. All three leases were made by the commit of the corrected file.

4. Why is an income account a poor choice of opening balance account for this import?

Answer

One account takes the other side of all three columns. The deposits held would be debited to that income account, and in books converted from older software the balance due would count as income a second time.

5. The Deposits page "Held" rose by $3,775.00 but the bank balance did not. Is money missing?

Answer

Not necessarily. The import records the deposits owed to the tenants; the seller's deposit money is recorded separately, as cash into the deposit bank or through the purchase entry.

6. After the commit, Priya's $1,325.00 prepaid credit sits on her customer account. What still has to be done by hand, and why?

Answer

The credit must be used on the December rent invoice when it posts on 12/01/2026 (Chapter 2.5, Procedure B). Nothing applies an imported customer credit by itself, so without that step the tenant would be billed for a month they already paid.

Notes

  1. The Units list (Properties and people → Units) has an Import button that opens this tab at card 2. Owners and owner opening balances for managed properties (Chapter 13.11) have templates in the module's programming interface but no card on this tab; enter them by hand. ↑
  2. The commit sends the kept original of the dry run's file again and is refused unless a clean dry run of the same file, type, template version and options ran in the last 24 hours. A file is read up to 5,000 rows; for an .xlsx file only the first sheet is read. Importing the same file twice is harmless: rows already in the books are reported as Already there. ↑
  3. How a purchase is booked (allocation of the price between land, building and the tenant items on the closing statement) is a question for your accountant. This chapter is not tax or accounting advice. Noah's November rent, for example, belongs to Summit, which owned the building on November 1, so the accountant may move it from the opening account to Rents when the purchase is booked. ↑
  4. Imports committed before this fix reached the books (6 November 2026 on the hosted service) posted the prepaid amount against the books' Customer Credits expense account instead of the opening balance account. Summit's own books, imported before that day, carry a one-line journal entry (entry 204) that moves the $1,325.00 from Expenses:Customer Credits to Equity:Opening Balances; books imported in that period need the same entry. Credits given by hand on a customer's account (Chapter 2.5) still post against the expense account, as before. ↑
  5. The module knows two kinds of money paid ahead. A prepayment is a payment received on a lease that is larger than what is open; the lease policy applies it to the next charge when that charge posts, and the Prepayments Held report (Chapter 13.15) lists it. The importer makes a customer credit instead, the same object as Chapter 2.5, so the report listed no lease on the day of this chapter and the ledger shows the credit as "$1,325.00 (credit)" while its running balance stays $0.00. ↑

Volume 13: Property Management

  1. 13.1Setting up properties and units
  2. 13.2Importing a rental portfolio
  3. 13.3Listings, prospects and applicants
  4. 13.4Leases, move-in and the rent roll
  5. 13.5Rent, payments and late fees
  6. 13.6Collections, notices and payment plans
  7. 13.7Renewals, rent increases and move-out
  8. 13.8Work orders, vendors and bill approvals
  9. 13.9Inspections, meters and unit equipment
  10. 13.10Today, tasks and notifications
  11. 13.11Managed properties and owners
  12. 13.12Management fees, trust reconciliation, owner statements and the close (coming soon)
  13. 13.13Announcements, documents and the portals
  14. 13.14Leasing and occupancy reports
  15. 13.15Tenant charges, payments and notices reports
  16. 13.16Owner and trust reports (coming soon)
  17. 13.17Maintenance and vendor reports
  18. 13.18Report packs and the lender package (coming soon)

All volumes and chapters