An invite emails the tenant a sign-in link tied to a specific unit. The unit's property needs a state set first — that's what determines the lease addendum, deposit cap, and late-fee rules — so a unit whose property is missing its state will be locked until you fix it on the Properties screen.
Pick a vacant unit from the list.
Enter the tenant's email and, optionally, a short personal note.
Send the invitation. The tenant gets an email with a sign-in link that expires in 14 days.
If email is slow, copy the invite link from the confirmation card and share it directly.
Add a tenant who's already in place
If a renter is already living there, use Tenants → Add an existing tenant instead. This creates an active lease directly — no invite email and no application step. You set the lease dates, rent, deposit, and late-fee terms, and if they're behind you can record an opening balance so the unpaid period shows up right away.
No email is sent in this flow: the tenant's account is created now and they claim it later using "Forgot password" with that email.
To bring in a whole portfolio at once, use the bulk tenant import (landlord-only). Paste a CSV, validate it with a dry run, then import.
Required columns are email, property_name, and unit_label; optional columns carry the lease term, deposit, and any open balance (monthly_rent, start_date, lease_end, security_deposit, opening_balance, balance_as_of). There's an "Insert sample" button that drops in a correctly-formatted example to start from.
Go to Tenants → Bulk import.
Paste your CSV (or insert the sample and edit it).
Run a dry run — it validates every row and flags anything that would be skipped or error before any invite goes out.
When the dry run is clean, click Import to send the invites.