People

Importing from a spreadsheet

Bring a whole school in from Excel — templates, every column explained, and how errors are shown.

Written for School admin
On this page

This page has no sections.

Schools already keep their people in spreadsheets. Alviyora reads those spreadsheets rather than asking you to retype them, and it checks every row and shows you the problems before it writes anything.

There are five imports:

ImportWhereWhat it creates
LearnersLearners → Bulk UploadLearners, and optionally their guardians, linked
GuardiansLearners → Bulk Upload GuardiansGuardians, linked to learners who already exist
StaffStaff → Bulk UploadStaff with roles, and their teaching subjects
Teacher assignmentsAcademics → Teacher Assignments → Bulk UploadWhich teacher takes which subject in which grade
TimetablesTimetable → Class / ExamA class’s week, or an exam schedule

Who can do this

Manage Users for people; Manage Academics Settings for teacher assignments; Manage Timetable for timetables.

How every import works

Every import looks like this. Take the template, fill it in, drop it back.

Download the template

Download Template gives you an Excel file with the exact column headings, in the right order, already formatted. Starting from it removes the whole class of problems where a heading is spelled slightly differently.

Fill it in — one person per row

Row 1 is the headings. Row 2 onward is your data.

Drop the file back

.xlsx, .xls and .csv all work.

Read the preview

Alviyora parses the whole file and shows you what it found: how many rows are valid, and exactly which rows are not, with the reason against each — “Row 14: Grade is required”, “Row 22: Phone Number is not a valid number”.

Nothing has been saved at this point.

Fix and re-upload, or import the good rows

Fix the flagged rows in your spreadsheet and drop it again, or import the valid rows and deal with the rest by hand.

Grade and section names must match exactly

The Grade and Section columns are matched against the grades and classes you already created. Grade 1 matches; Gr 1 and Grade1 do not. Set your grades up first, then export or copy the names from Academics Settings → Grades.

The learner template

Five columns are required. The rest are optional, and the Guardian block is the one worth filling in — it creates the parent account and links it in the same pass.

ColumnRequiredNotes
First NameYes
Last NameYes
Date of BirthYesYYYY-MM-DD is safest
GenderYesMale, Female or Other
GradeYesMust match a grade you created
SectionThe class within the grade. Leave blank if the grade has none
EmailLeave blank and a username is issued instead
ID Number
Phone Number
Home Language
Guardian First NameRequired if any guardian column is filled
Guardian Last NameRequired if any guardian column is filled
Guardian ID NumberHow siblings are matched — see below
Guardian PhoneThe number SMS goes to
Guardian Email
Guardian Relationshipmother, father, guardian, stepmother, stepfather, grandparent, other
Emergency Contact Name
Emergency Contact PhoneUsed for SMS if no guardian number exists
Home Address
Previous School
Medical Aid Number
Allergies

Siblings share one guardian account

Give two learners the same Guardian ID Number and they are linked to one guardian account, not two. That parent then signs in once and sees both children.

Get this column right and the parents portal works properly from day one. Leave it blank and you get a separate guardian record per child.

The staff template

ColumnRequiredNotes
First NameYes
Last NameYes
EmailYesStaff always need an email — it is their login
Phone NumberYes
RolesYesOne or more, separated by ; or , — e.g. Teacher or Admin; Teacher
TitleMr, Mrs, Ms, Dr
ID NumberRequired when the row includes the Teacher role
Date of BirthRequired when the row includes the Teacher role
GenderRequired when the row includes the Teacher role
Employee Number
Qualification
SubjectsSubjects they teach, separated by ; or ,
Emergency Contact Name
Emergency Contact Phone
Home Address
Start Date

Role names must match your school’s roles — including any custom ones. Teacher, Admin, Principal, Bursar, whatever you have created.

The guardian template

Use this when the learners are already in the system and you are adding parents afterwards.

ColumnRequiredNotes
First NameYes
Last NameYes
EmailYes
Phone NumberYes
ID NumberYes
Learner ID NumbersOne or more learner ID numbers, separated by ; or , — this is what links them
Relationshipmother, father, guardian, stepmother, stepfather, grandparent, other
Title
Gender
Date of Birth
Occupation
Work Phone
Home Address

Learner ID Numbers is how a guardian reaches their children, so the learners must already have ID numbers on file. If they do not, import the guardians through the learner template instead.

Phone numbers

Numbers are normalised as they are read, against your school’s country. A local number typed the way people say it — 071 123 4567 — is understood. A number that cannot be parsed at all is flagged on its row rather than saved, because a broken number costs money at the SMS gateway and delivers nothing.

What happens on import

  • Accounts are created with temporary passwords, or usernames where there is no email address.
  • Existing people are matched, not duplicated. A guardian ID number already in the system links to that guardian rather than making a second one.
  • The whole import is one entry in the Activity Log — one line reading “imported 340 learners”, not 340 lines.