Import from CSV

Upload a CSV for one entity at a time. Every row is validated and shown as an editable card — fix anything in the UI before committing.

What are you importing?

Pick the entity. Each one has its own column list — see template.

Already have your data in another system (e.g. Re-Leased)? Export their building list to CSV, rename headers to match our template, and upload.

Upload & map columns

Drop your CSV. We'll detect headers and let you map any that don't match our template names.

📎 Drop CSV here or click to pick a file
Demo: pretend you uploaded buildings.csv (8 rows)

Column mapping

Detected 8 columns. Adjust any that don't auto-match.

Header in your CSVMaps toSample value
external_idexternal_id (key)BLD-001
namenameGrace House
streetaddress.street47 Phillip St
suburbaddress.suburbSydney
postcodeaddress.postcode2000
typetypeCommercial multi-tenant tower
verifyverification_methodipad_dynamic_qr
floorstotal_floors11

Review rows

Every row is an editable card. Fix issues, skip rows you don't want, and continue when ready.

7 valid 1 warning 1 error 0 skipped
1
Will update existing building BLD-001 (matched by external_id).
2
⚠ Missing total_floors — will default to 1. Adjust if needed.
3
external_id is required and must be unique within the file. Fix above, or skip this row.
4
✓ New building — will be created.

+ 5 more rows (all valid)

Commit

Final summary. Errors are blocking; warnings will go through with defaults applied.

Filebuildings.csv (8 rows)
EntityBuildings
Will create7 new buildings
Will update1 existing (matched by external_id)
Skipped1 (row 3 — missing external_id)

Imports are idempotent — re-running this file with the same external_ids will update, not duplicate.

Cancel