Initial school setup checklist
After signing in for the first time, follow this checklist to configure your school for full operation. The system provides a Setup Progress assistant that tracks your completion status.
Overview
Makronexus Education requires several foundational elements before you can run day-to-day operations like enrolling students, recording attendance, or collecting payments. This guide covers the recommended setup sequence.
Setup progress dashboard
The system includes a guided setup assistant that tracks your progress:
Navigation: Foundation → Schools → Setup Progress
Or for a specific school: foundation/schools/{schoolId}/setup
Setup stages
The assistant organizes setup into categories:
| Stage | Steps included | Estimated time |
|---|---|---|
| Basic Info | School profile, Address | 15 minutes |
| Academic Setup | Academic year, Terms, Grade levels, Subjects, Classes | 45 minutes |
| Personnel | Departments, Staff & Teachers | 40 minutes |
| Students | Student enrollment | 45+ minutes |
| Financial | Fee structure | 20 minutes |
| Portal | Portal setup (optional) | 10 minutes |
Step dependencies
Some steps require others to be completed first:
Basic Info
└── Address
└── Academic Year
└── Terms
└── Grade Levels
└── Subjects
└── Classes
└── Staff & Teachers
└── Students
Setup checklist
Phase 1: School identity
1.1 Complete school profile
Navigation: Foundation → Schools → Directory → Select school → Edit
| Field | Required | Description |
|---|---|---|
| School name | ✅ | Official registered name |
| Display name | Optional | Short name for UI (e.g., "St. Mary's" instead of "St. Mary's Girls High School") |
| School type | ✅ | Primary, Secondary, Combined, etc. |
| Education level | ✅ | ECD, Primary, Secondary, Tertiary |
| School code | Optional | Ministry registration code |
| Contact email | ✅ | Main school email for communications |
| Phone number | Recommended | Primary contact number |
| Website | Optional | School website URL |
1.2 Add school address
Navigation: Foundation → Schools → Directory → Select school → Address tab
| Field | Required | Description |
|---|---|---|
| Physical address | ✅ | Street address, city, province |
| Postal address | Optional | P.O. Box if different from physical |
| GPS coordinates | Optional | Latitude/longitude for mapping |
If you're using the Setup Progress dashboard, click the Start or Continue button next to each step to jump directly to the relevant page with the form pre-opened.
Phase 2: Academic structure
2.1 Create academic year
Navigation: Foundation → Schools → Academic Years
- Click Create academic year
- Enter:
- Name: e.g., "2026 Academic Year"
- Start date: First day of the academic year
- End date: Last day of the academic year
- Save the academic year
- Click the Set as current action to make it the active year
Without a current academic year, most academic and enrollment features will not function. Always mark one year as "current."
2.2 Add terms to the academic year
Navigation: Foundation → Schools → Academic Years → Select year → Terms tab
For each term (typically 3 per year in Zimbabwe):
- Click Add term
- Enter:
- Name: e.g., "Term 1", "First Term"
- Start date: First day of term
- End date: Last day of term (excluding holidays)
- Mark one term as the current term
- 3-term system
- 2-semester system
| Term | Typical dates |
|---|---|
| Term 1 | January – April |
| Term 2 | May – August |
| Term 3 | September – December |
| Semester | Typical dates |
|---|---|
| Semester 1 | January – June |
| Semester 2 | July – December |
2.3 Configure grade levels
Navigation: Academics → Class Structure → Grade Levels
Grade levels define the academic cohorts your school offers. For a secondary school:
- Click Add grade level or use Seed grade levels for bulk creation
- For each grade level, configure:
- Name: e.g., "Form 1", "Grade 8"
- Short name: e.g., "F1", "G8"
- Level type: Junior, Senior, etc.
- Order: Numeric sequence (1, 2, 3...)
- Enrollment cap: Maximum students (optional)
- Is exam grade: Whether this grade has national exams
- Graduation grade: Whether completing this grade results in graduation
Using the Seed feature:
If your school follows a standard Zimbabwe structure:
- Click Seed grade levels
- Select the school level (Primary, Secondary, etc.)
- The system creates the appropriate grade levels automatically
- You can then customize individual grades
2.4 Configure streams (optional)
Navigation: Academics → Class Structure → Streams
Streams are academic tracks within a grade level (e.g., Sciences, Arts, Commercials):
- Click Add stream
- Enter:
- Name: e.g., "Sciences", "Arts"
- Code: e.g., "SCI", "ARTS"
- Grade level: Which grade this stream applies to
- Capacity: Maximum students
Streams are useful when students in the same grade follow different curricula based on their academic track. If all students take the same subjects, you may not need streams.
2.5 Create class divisions
Navigation: Academics → Class Structure → Class Divisions
Class divisions are the actual classroom groups where students are enrolled:
- Click Add class division
- Enter:
- Name: e.g., "Form 1A", "Form 1B"
- Grade level: The grade this class belongs to
- Stream: (If using streams) The academic track
- Class teacher: Assign a teacher (if staff added)
- Capacity: Maximum students
- Room: Physical classroom (optional)
Phase 3: Personnel
3.1 Create departments (optional)
Navigation: Foundation → Schools → Departments
Departments organize staff and subjects:
- Click Add department
- Enter:
- Name: e.g., "Mathematics", "Sciences", "Languages"
- Head of department: Assign a staff member (after adding staff)
- Budget code: For financial tracking (optional)
3.2 Add staff and teachers
Navigation: People → Staff or People → Teachers
- Add manually
- Bulk import
- Click Add staff or Add teacher
- Enter personal details:
- Full name
- Email address (creates user account)
- Phone number
- Employee ID (optional)
- Assign to school and department
- Set employment details (start date, contract type)
- Save
- Go to People → Import People
- Download the CSV template
- Fill in staff details following the template format
- Upload the completed CSV
- Review the import preview
- Confirm the import
When you add staff with an email address, the system can automatically create a user account for them. They'll receive an activation email to set their password.
Phase 4: Students
4.1 Add students
Navigation: People → Students
- Add manually
- Bulk import
- Via admissions
- Click Add student
- Enter:
- Basic info: First name, surname, date of birth, gender
- Identity: National ID or birth certificate number
- Contact: Phone, email (for older students)
- Class assignment: Grade level and class division
- Save the student record
- Go to People → Import People
- Select Students as the import type
- Download the CSV template
- Required columns:
firstName,surnamedateOfBirth(YYYY-MM-DD)gender(MALE/FEMALE)gradeLevelCodeorgradeLevelNameclassDivisionCodeorclassDivisionName
- Upload and preview the import
- Resolve any validation errors
- Confirm import
If using the full admissions workflow:
- Go to Admissions → Applications
- Create applications for new students
- Move through the pipeline: Application → Decision → Offer → Acceptance
- Convert accepted students to enrolled status
- Assign to class divisions
See the Admit a student guide for details.
Phase 5: Finance
5.1 Configure fee structure
Navigation: Finance → Fees
- Click Add fee
- Enter:
- Name: e.g., "Tuition Fee", "Registration Fee"
- Fee type: Tuition, Registration, Exam, Activity, etc.
- Amount: Fee amount
- Currency: ZWL, USD, etc.
- Frequency: Per term, per year, once-off
- Applies to: Which grade levels or streams
- Create fees for each category your school charges
Common fee structure:
| Fee name | Type | Frequency | Notes |
|---|---|---|---|
| Tuition | Tuition | Per term | Main school fee |
| Registration | Registration | Once-off | New students only |
| Exam levy | Exam | Per term | For exam grades |
| Sports levy | Activity | Per term | Optional |
| Computer levy | Activity | Per term | Optional |
5.2 Test the billing flow
- Go to Finance → Billing Runs
- Create a test billing run for a small group of students
- Verify invoices are generated correctly
- Check Finance → Invoices to see the created invoices
5.3 Set up payment recording
Navigation: Finance → Payments
- Familiarize yourself with the Record payment workflow
- Test recording a payment against a student invoice
- Verify the receipt is generated in Finance → Receipts
- Check the student's balance updates correctly
Verification checklist
After completing setup, verify each area works:
| Area | Test | Expected result |
|---|---|---|
| Dashboard | Open Executive → Dashboard | See metrics and charts |
| Students | Open People → Students | See student list with class assignments |
| Classes | Open Academics → Class Divisions | See classes with enrolled students |
| Teachers | Open People → Teachers | See teacher list with assignments |
| Fees | Open Finance → Fees | See configured fee items |
| Invoices | Run a test billing | Invoices generated for students |
| Payments | Record a test payment | Payment appears, balance updates |
| Receipts | View Finance → Receipts | Receipt generated for payment |
Setup completion
When all required steps are complete:
- The Setup Progress dashboard shows 100% completion
- The setup stage changes to Completed
- You can begin normal school operations
Once setup is complete, your school can:
- Enroll and manage students
- Record attendance
- Process payments and issue receipts
- Generate reports
- Send communications
If modules are missing
Some modules appear only when:
- School is selected — Use the school switcher in the top bar
- Permission is granted — Contact your administrator
- Feature is enabled — Some features are tenant-level configurations
Common permission requirements:
| Module | Required permission |
|---|---|
| Finance | finance:view or payments:view |
| Attendance | attendance:view |
| Academics | academics:view |
| People | students:view, teachers:view, staff:view |
| Foundation | Usually requires admin or exec role |
Related topics
- Onboard a school — Detailed school onboarding guide
- Bulk import students — CSV import workflow
- Fee setup and invoicing — Complete finance setup
- Create academic year and term — Detailed academic year guide