Why class management at scale matters
When you’re coordinating dozens of classes across multiple year groups — say, a Nairobi primary school with 800 learners split across Grades 1 through 8 — keeping your KiddyCash class list clean and structured is what separates a smooth rollout from a support nightmare. Classes are the unit of organisation that ties student wallets, badge campaigns, and allowance schedules together. If your class data is inconsistent, everything downstream breaks: students miss campaigns, parents receive incorrect transaction codes, and your finance reporting becomes unreliable.
This article assumes you already know how to create a school class and how to view a school class. Here we go deeper — into bulk operations, conflict resolution, and the edge cases that trip up administrators at scale.
Accessing your full class list
Navigate directly to your class management dashboard at https://schools.kiddy.cash/school/:school_id/class, replacing :school_id with your school’s unique identifier (visible in your portal URL or under School Settings → General).
This view renders every class registered under your school account, with columns for class name, assigned teacher, student count, active status, and linked wallet activity. You can sort and filter by any column. For schools with 30+ classes, use the search bar with partial name matching — searching "G4" will surface Grade 4A, Grade 4B, and Grade 4C simultaneously.
Bulk enrolment and CSV imports
For large cohorts, avoid adding students one by one. Use the Import Students function within each class to upload a CSV. The required columns are: student_first_name, student_last_name, guardian_phone, and date_of_birth. The guardian_phone field must be a valid mobile number — for Kenyan families, ensure numbers are in the format 2547XXXXXXXX. M-Pesa-linked numbers will be auto-suggested during the KYC verification step that follows import.
Common import failures:
- Duplicate phone numbers across rows (one guardian, multiple children) — the system will flag this; resolve by using the same guardian record and linking multiple student profiles to it.
- Date of birth format mismatches — use
YYYY-MM-DDstrictly. - Special characters in names — strip apostrophes or hyphens before upload if the validator rejects the row.
Managing class status and archiving
At the end of a term, classes should be archived rather than deleted. Archiving preserves the wallet transaction history and badge records tied to students in that class — deletion is irreversible and will orphan those records. To archive, open the class, go to Settings → Class Status, and toggle to Archived.
Archived classes are hidden from the active class list by default. Toggle Show Archived in the filter panel to retrieve them for reporting or to re-enrol a student who was mistakenly placed in the wrong group.
Handling duplicate or misassigned students
If a student appears in two active classes — common after a mid-term transfer — their wallet remains singular, but badge eligibility and allowance rules will reflect whichever class was most recently assigned. Resolve this by removing the student from the incorrect class via Class → Students → Remove. The student’s wallet history is unaffected.
Connecting class activity to broader financial learning
Well-structured classes make it easier to run targeted financial literacy campaigns — you can push badge challenges or savings goals to a specific class. For ideas on age-appropriate concepts to pair with these features, see why investing is a concept kids can learn younger than you think and how to explain investing to a child without the jargon.