User Management

Bulk Import (CSV)

When you need to add many users at once — such as an entire batch of students or a full teaching staff — the bulk import feature lets you upload a CSV file instead of creating users one by one.

CSV Column Reference

Your CSV file must use these exact column headers. Column order does not matter, but header names are case-sensitive:

FieldRequiredTypeDescription

firstName

Required

text

User's first/given name. Minimum 2 characters.

lastName

Required

text

User's last/family name. Minimum 2 characters.

email

Required

email

Valid email address. Must be unique — duplicates will be flagged as errors.

password

Required

text

Initial password. Minimum 8 characters. Users can change it after first login.

role

Required

text

One of: org_admin, branch_admin, instructor, learner, guardian, student, teacher, staff.

phone

Optional

text

Phone number with country code (e.g., +919876543210).

branchId

Optional

text

UUID of the branch to assign the user to. Leave blank for default branch.

status

Optional

text

active, inactive, or suspended. Defaults to "active" if omitted.

Example CSV

Here is an example of a properly formatted CSV:

firstName,lastName,email,password,role,phone,status
Priya,Sharma,priya.sharma@school.edu,Welcome@123,learner,+919876543210,active
Rahul,Verma,rahul.verma@school.edu,Welcome@123,learner,,active
Anita,Gupta,anita.gupta@school.edu,Teach@2024,instructor,+919876543211,active

Step-by-Step Import Process

1

Download the CSV Template

Navigate to Users → Import and click the Download Template button. This gives you a CSV file with the correct column headers pre-filled.

The template includes example rows showing the expected format for each column.

2

Fill in User Data

Open the template in Excel, Google Sheets, or any spreadsheet editor. Add one row per user. Make sure to:

• Keep column headers exactly as they are (case-sensitive) • Use valid email addresses that don't already exist in the system • Use recognized role values (e.g., "learner", "instructor") • Save the file as CSV (Comma Separated Values) format

3

Upload the CSV File

Go to Users → Import, click the upload area or drag and drop your CSV file. The system will read the file and show a preview of the data before processing.

4

Review the Preview

Before importing, the system validates each row and shows a preview. Rows with errors are highlighted in red with a description of the issue. Fix errors in your spreadsheet and re-upload, or proceed with the valid rows.

5

Confirm and Import

Click Import Users to begin processing. The system creates accounts for each valid row. This may take a few moments for large files.

6

Review the Import Report

After import completes, you'll see a summary report showing:

Successfully created — number of users added Failed — number of rows that could not be imported Error details — for each failed row: the row number, the error reason, and the data that caused it

Common Import Errors

Here are the most frequent issues and how to fix them:

  • Duplicate email — The email already exists in the system. Use a different email or update the existing user instead.
  • Invalid role — The role value doesn't match a recognized role. Use exact values like learner, instructor, or branch_admin.
  • Missing required field — First name, last name, email, password, or role is empty. Every row needs these columns filled.
  • Password too short — Password must be at least 8 characters. Update the password in your spreadsheet and re-upload.
  • Invalid email format — The email address is malformed (e.g., missing @ symbol). Correct the email in your spreadsheet.