Import houses, tenants and tenancies from CSV
Bring in an existing rent roll with a dry run first, then import the rows that pass.
The Data import page brings in existing data in three CSV file types: houses and rooms, tenants, and tenancies. Nothing is written before you run a dry run and read the list of changes. The plan is recalculated from scratch every time, so a corrected file will never be imported against an old plan.
Steps
- Open Import, then choose the file type in the What is in the file picker.
- Check the sample header row shown. Houses need name (house name), unit_no (room name) and monthly_rent. Tenants need name, email and phone. Tenancies need unit, tenant_email, start_date, end_date and monthly_rent.
- Choose the CSV file. If a required column is missing, the system names that column and blocks the dry run.
- Read the Preview table. Each row is marked Valid or with its list of errors. Only the first 50 rows are shown.
- Press Dry run. The system shows how many rows will be created, updated, skipped and how many have problems.
- Press the Import button to write only the rows that can be written.
- Read the Result section. Failed rows are listed with their row numbers. Fix the file, then run the dry run again.
Accepted formats
Dates can be written as YYYY-MM-DD or DD/MM/YYYY. Amounts can be written as 1200 or 1,200.50, with or without RM in front. The rent payment day must be a whole number from 1 to 28. Alternative column names are accepted, for example building for name, or rent for monthly_rent.
What it does not do
- Only CSV files are accepted on this page. Excel files are not read here.
- Tenancy import does not create rooms or tenants. Both must already exist, so import houses and tenants first.
- Tenant emails and phone numbers that already exist are skipped, not overwritten.
- There is no undo button after an import. Rows that have gone in must be corrected manually.
- Import does not bring in photos, amenities, guides or payment proofs.
- Import does not calculate tax or any levy. Check your record-keeping requirements with LHDN or your local authority separately.