Intelligent RosterIntelligent Roster®

How to Bulk Import Staff from CSV

Bulk Importing Staff

For initial go-live, or any large staff intake, use Bulk Import instead of adding staff one-by-one.

Where to find it

Sidebar → Clinician StaffBulk Import (top-right).

Prerequisites (do these first)

  1. Streams created (chapter 5 of Admin Setup Guide)
  2. Craft Groups created (chapter 6)
  3. Scope of Practice catalogue created (chapter 7)

Without these, the import has nothing to map your CSV columns to.

Step-by-step

  1. Open Bulk Import.
  2. Click Download Template — this gives you a CSV with the exact column headers the importer expects.
  3. Fill the template with your staff data:
    • Required columns: first_name, last_name, email, craft_group, employment_type, min_hours, max_hours
    • Optional columns: scopes (comma-separated), streams (comma-separated), hire_date
  4. Save as CSV (UTF-8 encoded).
  5. Back in the importer, click Choose File, pick your CSV, and click Validate.
  6. The validator runs and shows:
    • Rows OK
    • Rows with warnings (e.g. unrecognised scope — will skip the scope but import the staff)
    • Rows with errors (will not import)
  7. Fix errors in your CSV, re-validate.
  8. When the report is clean, click Import.
  9. Welcome emails go out to every imported staff member with a 7-day link.

Common errors and fixes

ErrorCauseFix
Unknown craft group "RN1"Typo or not in your catalogueMatch exactly to a Craft Group name (case-sensitive)
Unknown scope "Trauma1"Same as aboveMatch exactly to a scope name
Duplicate emailEmail already exists in your orgEither remove from CSV or update the existing record
No slots remainingSubscription user-cap hitDeactivate inactive accounts to free slots, or upgrade plan
Invalid email formatMissing @ or domainFix the typo

Tips & common mistakes

  • Always validate first. The import is irreversible (you can deactivate, but not undo).
  • Use lowercase emails — the import doesn't deduplicate case-insensitively. Sarah@x.com and sarah@x.com are treated as different records.
  • Stage the import in batches for orgs > 200 staff — easier to spot problems.
  • Don't include scope columns until your scope catalogue is complete — otherwise every row generates "unknown scope" warnings.

New to Intelligent Roster?

Try everything in this guide with your own team.

Start your free trial