Skip to content

Bulk importing members

For organizations with more than a handful of members, importing a CSV is much faster than inviting people one at a time.

  • Initial setup — migrating from a spreadsheet or another leave system.
  • Annual intake — onboarding a cohort of new hires in one sitting.

For day-to-day additions of a single joiner, the Add member form is usually quicker.

Go to Settings → Team → Import. Download the template to see the exact column order and example rows. At a minimum you’ll need:

ColumnRequiredNotes
nameyesFull name.
emailyesMust be unique across the organization.
roleyesadmin, manager, or employee.
departmentnoMust match an existing department name. Leave blank for no department.
job_titlenoFree text.
employee_idnoYour HR system’s internal identifier, for matching later.
start_datenoYYYY-MM-DD. Used for anniversary-based leave year calculations.
allowanceyesNumeric. Days or hours, see next column.
allowance_unityesdays or hours.
approver_emailnoMust match another row in the same import or an existing member.

Save as UTF-8 CSV (Excel, Google Sheets, Numbers all handle this).

  1. Click Upload CSV.
  2. Deckchair shows a preview table with the rows it parsed. Any problems — malformed emails, unknown departments, approvers that can’t be resolved — are highlighted in red with the specific error.
  3. Fix issues in your CSV and re-upload, or tick Skip rows with errors to import just the valid ones.
  4. Confirm. Deckchair creates the accounts and sends invitation emails to every new member.

Each invited member gets a 7-day link to set their password, exactly like the single-member invite flow.

The import resolves approvers in two passes:

  1. First pass creates all accounts with no approver set.
  2. Second pass matches approver_email values to the newly-created members and links them.

This means you don’t need to order your CSV with managers first — just make sure every referenced approver email is either already a member or present somewhere in the same CSV.

To keep the CSV manageable, bulk import uses org defaults for:

  • Work schedule — everyone inherits the org default. Adjust part-time schedules individually after import.
  • Leave year start — everyone inherits the org default.
  • Public holidays off — defaults to the org setting.

If you have a lot of part-time or unusual schedules, do the bulk import first, then edit those members individually.

If you realise an import was wrong, you can’t undo it in one click. Options:

  1. Deactivate every affected member (if they haven’t accepted invites yet, they’re just dormant invites — no harm done).
  2. Re-import with a corrected CSV.

Alternatively, reach out to support before anyone accepts their invite — we can roll back unused invitations.