Bulk student import

When migrating from a previous system or onboarding a whole intake, importing from a spreadsheet beats typing hundreds of records. EduPrime's import maps your columns to student fields, validates every row, and can be re-run safely without creating duplicates.

Where to find it — App drawer → EduPrime → Health Records → Student Health.
Bulk student import
Bulk student import in EduPrime.

Prepare the spreadsheet

  1. From the Students list, choose Import and download the template.
  2. The template carries one column per field: admission number, first name, surname, gender, date of birth, class, stream, boarding/day, guardian name, guardian phone, tags.
  3. Fill one student per row. Keep dates in one consistent format (e.g. YYYY-MM-DD).
  4. Give every student an admission number – this is the key EduPrime uses to detect duplicates on re-run.
Tip — Start with a 5-row test file before importing thousands. Confirm the mapping and validation behave, then run the full file once you trust it.

Map columns & validate

Upload the file. EduPrime auto-matches column headers to fields; correct any it could not match using the mapping dropdowns. It then validates every row and reports problems before writing anything:

ValidationWhat it catches
Required field emptyMissing name, DOB or class.
Unknown class/streamA class that does not exist yet – create it first.
Bad date formatDOB EduPrime cannot parse.
Duplicate admission numberTwo rows, or a row matching an existing student.

Fixing errors & re-running

If validation fails, EduPrime lists the offending rows and the reason. Fix them in your spreadsheet and re-upload – nothing is written until the file is clean (or you choose to import only the valid rows). Because matching is keyed on admission number, re-running an import updates existing students rather than duplicating them, so a corrected re-run is safe.

Important — The admission number is the dedup key. If your sheet reuses a number, or leaves it blank and relies on auto-generation, a re-run can create duplicates. Always give every row a unique, stable admission number before importing.

After import

Once imported, spot-check a handful of records: confirm class placement, guardian linkage and that fee structures attach correctly (imports may not attach fee structures automatically – verify against the next invoice run). Then group the list by class to confirm the counts match your source register.

Was this page helpful?