Import properties, units and tenants from a spreadsheet
Load your whole portfolio from two spreadsheets: fill in the templates, check the summary, and import.
Before you start
Only Owners and Administrators can import. You can import while your organization is still in setup mode, and later once it is live.
An import uses two spreadsheets, and you can upload either one or both:
- The Properties file lists your buildings and every unit in them, rented or vacant, one row per unit. Skip it if your buildings are already in OneView.
- The Tenants file lists who lives in which unit and what they pay, one row per rented unit.
Both files write the property and unit names the same way. That is how a tenant is matched to a unit. A tenants file on its own can use units you added earlier, and when you send both, the properties are imported first.
The import does not copy old invoices or receipts. For each tenant you give where they stand today: the last month their rent is paid for, and anything else they owe.
1. Open the import page
In the menu, select Import data. While your organization is in setup mode, the banner at the top also has an Import your data link.
2. Download the templates
Under Your files, each file has two download buttons: Template (English) and Modèle (français). They open in Excel or any spreadsheet app. Save your work as .xlsx or .csv. Replace the example lines with your own: any you leave are imported like real data.
3. Fill in the properties file
Write one row per unit. The columns are:
property_group(optional): the group the building belongs to. A building can only be in one group, so use the same group on every one of its rows.property(required): the building's name, repeated on each of its unit rows.property_location(optional): the neighbourhood and town.unit(required): the unit's name. It must be different for each unit in the same building.
Units arrive as Vacant.
4. Fill in the tenants file
Write one row per rented unit. The columns are:
propertyandunit(required): exactly as written in the properties file, or as the unit already exists in OneView.tenant_name(required), and at least one oftenant_whatsapportenant_email.monthly_rentandrent_starts(required): the rent, and the date the lease started. For an old lease, use the last renewal date.rent_period_months(optional): months between payments. Leave it empty for monthly.caution(optional): the refundable caution you hold. It is recorded for the end of the lease and never billed.paid_through(required): the last month the rent is fully paid for, as month/year, for example 10/2026. Rent keeps the lease's own cycle: the same day of the month asrent_starts, every rent period. So on a quarterly lease,paid_throughis the last month of the last paid quarter, for example 03/2026 when January to March is paid. If the tenant has paid nothing since the lease began, use the month beforerent_starts. Billing continues with the next period, and a period that has already started is billed when the lease goes live. Before you import, the summary shows the last paid period it read from each row, so you can check it.rent_partly_paid(optional): what the tenant has already paid toward that next period, if they paid part of it. Only the rest is billed.amount_due(optional): anything else the tenant owes today, such as water or a repair. Not rent: unpaid rent comes frompaid_through.amount_dueand a shortdue_reasongo together, and appear on the first invoice as one line.
Dates are day/month/year, for example 25/09/2025, and paid_through is month/year. Amounts are whole francs with no currency sign. A Cameroon phone number is written as it is, and a number from another country starts with its country code. Open Column reference on the import page for every column with an example.
5. Upload and check your files
For each file, select Choose file and pick it, then select Check my files. Nothing is imported at this step. OneView reads the files and either lists the problems or shows you a summary. If it lists problems, see Fix import errors.
6. Review the summary
The page Check before importing shows what will be created: Groups, Properties, Units and Tenants & leases. If something looks odd, the Worth a look box says which row and why. Warnings do not block the import.
Under Tenants and billing, check each tenant's rent, Next rent due and Other dues. This is your chance to catch a wrong date before anything is saved.
To change the files, select Choose other files. Otherwise select Import now. The summary stays valid for a few hours, then you choose your files again.
7. Wait for the import to finish
A progress page opens and updates by itself. When it ends you see "Import finished" with the number of groups, properties, units, tenants and leases created. Rows that already exist are skipped and listed, so running the same files twice does not create duplicates.
Setup mode and live organizations
In setup mode (the banner reads Setup mode:), nothing is billed and no tenant is contacted. Imported leases wait as drafts. After the import, select Go-live review to see every first invoice before you go live. Imported the wrong file? See I imported the wrong data.
In a live organization, imported leases are also created as drafts, and each one bills rent from the period after its paid_through month once you activate it. The import asks for one more confirmation (Yes, import now), because imported data can't be removed in bulk afterwards. After the import, select Review and activate leases to activate the leases.
What happens next
Imported tenants are created without a password and are not emailed. Invite them from Tenants in the menu when you want them to reach the tenant portal. A unit with an imported lease is marked occupied, and reads Reserved until the lease is active.
Common problems
I don't see the import menu
Only Owners and Administrators have it. Ask one of them to import, or ask an Owner to change your role.
My file was refused
Accepted files are CSV and Excel (.xlsx). If you see "Choose at least one file first.", you pressed the button without choosing a file. A file over the size limit shows "That file is over 2 MB. A portfolio spreadsheet should be far smaller." For anything else, see Fix import errors.
The summary says the upload expired
You see "That upload has expired. Please choose the files again." when you wait too long on the summary. Choose the files again.
The import failed or seems stuck
The page says "The import failed" or asks you to reload. Select Try again and upload the same files. Rows that already landed are skipped, so nothing is duplicated.
I imported the wrong data
In setup mode, select Remove imported data on the import page. It removes everything imports created (groups, properties, units, tenants and draft leases) and keeps what you added by hand, so you can import corrected files. The button only exists in setup mode: once your organization is live, imported records have to be deleted one by one.
Will importing twice create duplicates?
No. Properties, units and groups are matched by name, ignoring capital letters, and a unit that already has a lease is skipped.