Skip to main content

Step 5: Add Staff and Teachers

Before uploading staff, review: Username Policy (Detailed)

Goal

Add teachers and staff quickly with consistent usernames, valid contact details, and the right account setup for your organization.

Why this step matters

  • Staff accounts are the starting point for classes, attendance, markbooks, communication, report cards, and daily school operations.
  • A clean staff upload gives everyone a predictable login identity from day one.
  • Directory account setup, username policy, default roles, and invitation emails all meet in this one step.

Before you upload

  1. Review your teacher username policy.
  2. Confirm the organization's default email domain is correct.
  3. Confirm the default staff role template is ready.
  4. Make sure your staff account has the Upload Teachers permission.
  5. If you plan to create directory accounts, confirm the directory provider is connected and working.

If your username policy or default domain changes, download a fresh template before importing staff.

Where to go

  1. Open Organization Onboarding.
  2. Select Staff.
  3. In Staff Management, use Upload Staff.

The upload flow

  1. Click Download Template.
  2. Replace or delete the sample row in the CSV.
  3. Fill in one row per staff member.
  4. Keep the header row exactly as downloaded.
  5. Upload the completed .csv file.
  6. Review the result message.
  7. If an error file downloads, fix those rows and upload them again.

What the template includes

The staff upload template includes the columns BassemLabs needs to create teacher accounts.

Columns:

  • First Name: required.
  • Last Name: required.
  • Gender (M/F): required. Use uppercase M or F.
  • Phone Number: required. Include a country code, for example +14165551234.
  • Date of Birth (YYYY-MM-DD): required. Use YYYY-MM-DD, for example 1980-01-20. MM/DD/YYYY is also accepted, but the template format is recommended.
  • Teacher Username (optional): leave blank to let BassemLabs generate it.
  • Personal Email: required and unique. This is the invitation email and the staff member's unique personal identifier.
  • Create Directory Account (Yes/No): use Yes to create the account in your connected directory provider.

Username and email behavior

  • If Teacher Username (optional) is blank, the username is generated from your teacher username policy.
  • If the teacher username policy uses {birth_year}, the date of birth must be present and valid.
  • Manual usernames are trimmed, lowercased, checked for allowed characters, and checked for uniqueness.
  • Usernames may contain lowercase letters, numbers, ., _, and -.
  • Usernames can be up to 64 characters.
  • The teacher's school email is generated from the username and the organization's default domain.
  • The CSV does not include a separate school email column.

Example:

  • Username: jane.smith
  • Default domain: school.edu
  • Teacher school email: [email protected]

Directory account behavior

The Create Directory Account (Yes/No) column controls whether BassemLabs also provisions the teacher in your connected directory provider.

  • Use Yes when you want a directory account created.
  • Use No or leave the value blank when you only want the teacher profile created in BassemLabs.
  • Directory accounts use the generated school email and the organization's default domain.
  • Directory accounts are created under the teacher/staff directory area for your provider.

Roles after upload

The CSV creates teacher accounts, but it does not assign custom role templates row by row.

  • Uploaded staff members are assigned the organization's default teacher role template.
  • After upload, review staff permissions from Staff Roles.
  • Move staff into another role template when someone needs additional access.

Invitations

After a staff member is created, BassemLabs sends an invitation email to the Personal Email address in the CSV.

The invitation includes the staff member's login details, including their generated school email and temporary password.

If some rows fail

Uploads can be partially successful. Successful rows are kept, and failed rows are returned in an error CSV.

The error CSV includes:

  • the original row data
  • an Error column with the reason the row failed

You can fix the downloaded error CSV and upload it again. The extra Error column is accepted, so you do not need to remove it.

Common reasons rows fail:

  • The header was changed.
  • A required field is missing.
  • Gender is not exactly M or F.
  • Date of birth is not a valid date.
  • Phone number is missing a valid country code.
  • Personal email is already used by another teacher.
  • Username is invalid or already used.
  • The default teacher role template is missing.
  • Directory account creation failed.

Important notes

  • The upload file must be a .csv.
  • Do not leave the sample John Doe row in the file unless you actually want to create that account.
  • Keep the header row exactly as downloaded, even when a column is optional.
  • Yes is the value that turns on directory account creation.
  • Personal email should be a real inbox because invitations are sent there.
  • For a small first run, upload a few rows, review the result, then upload the rest.