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:
| Field | Required | Type | Description |
|---|---|---|---|
firstName | Required | text | User's first/given name. Minimum 2 characters. |
lastName | Required | text | User's last/family name. Minimum 2 characters. |
Required | 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, orbranch_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.