Bulk import contacts
For onboarding a portfolio, importing contacts from CSV is far quicker than entering them one by one.
Before you start
Have your source data ready. Most managing agents migrate from a previous system that exports a CSV with rows for every leaseholder, tenant, freeholder and director.
PropLink's importer accepts:
- One row per contact.
- Standard columns (see below).
- UTF-8 encoding.
- A maximum of 10,000 rows per file.
Run the import
- Open Contacts → Import.
- Download the CSV template.
- Fill the template with your data, or map your existing CSV against the template's column names.
- Upload the file.
- PropLink validates each row and shows a preview: rows to be created, rows to be updated (matched on email), rows with errors.
- Fix errors in the source file and re-upload, or skip them.
- Click Confirm import.
Imports are atomic. If something goes wrong mid-import, the whole batch rolls back.
Standard columns
| Column | Required | Notes |
|---|---|---|
first_name | Yes | |
last_name | Yes | |
email | Recommended | Used for matching against existing contacts |
phone | No | UK or international format |
address_line_1 | No | |
address_line_2 | No | |
city | No | |
postcode | No | UK postcode format validated |
country | No | Defaults to United Kingdom |
types | No | Pipe-separated list, e.g. leaseholder|director |
tags | No | Pipe-separated list |
unit_reference | No | Site reference + unit reference, e.g. GC-001:Flat-1 |
unit_role | No | If unit_reference is set, the role at that unit |
is_primary_billable | No | true or false |
notes | No | Free text |
A complete column reference is in CSV import templates.
Linking contacts to units in the same import
Include unit_reference and unit_role in your CSV to link each contact to a unit. PropLink looks up the unit using the site reference and unit reference combined.
If the unit does not exist, the row fails validation. Run the bulk import sites and units before importing contacts that link to them.
Validation rules
PropLink validates each row before commit:
- Names cannot be empty.
- Emails must be valid format. Duplicates are allowed (one person can have multiple contacts in the directory if intentional).
- Postcodes are validated against UK format if
countryis United Kingdom. typesvalues must match the configured contact types.unit_referencemust resolve to an existing unit.
The preview screen lists every error row with the row number, the column and a clear message.
After the import
PropLink writes one audit log entry per row created or updated, attributed to the importing user. The bulk import is recorded as a single batch with a unique reference, viewable under Settings → Data import → History.
Related
Last reviewed 10 May 2026.