SchoolPro User Handbook

SchoolPro home v6.0 · 2025/2026
Start here

Your first 10 minutes in SchoolPro

Use this route on a new installation. It establishes the school identity, calendar, people, academics, fees and backup baseline in the safest order.

Login screen

Enter the username and PIN assigned by an administrator, then select Sign In. The landing page is role-aware: administrators and bursars open on the Dashboard, teachers and secretaries on Students, attendance officers on Attendance, and librarians on Library.

SchoolPRO login screen with username and PIN fields
Figure 1 · Sign in. Every staff member should use a personal account. Never share the administrator credentials for daily work.
Ready-to-operate test Register one test pupil, charge a test fee, enter one result, mark attendance, generate one report card, print one receipt, and take a backup. If each output looks correct, the foundation is ready for real data.
Chapter 1

System Overview

SchoolPro is a local-first school management system built for Nigerian nursery, primary and secondary schools. Core daily operations run on the school computer and local network; optional cloud backup, online AI providers, licensing checks and updates may require internet.

Welcome to SchoolPro

Congratulations on choosing SchoolPro as your school's management system. This handbook is your comprehensive guide to every feature, every workflow, and every procedure you will need. Whether you run a nursery, primary or secondary school—and whether you are an administrator, bursar, secretary, teacher, attendance officer or librarian—this document shows how to complete the work accurately. Core records, fee collection, results, attendance, receipts and reports remain available on the local installation without a continuous internet connection. Provider-backed Academic AI, Google Drive backup, licensing checks and software updates are the main exceptions. Use the left navigation or search button to jump directly to the page or task you need.

What SchoolPro Does

SchoolPro digitises every administrative process in your school. From the moment a student is admitted to the day they graduate or transfer, every interaction is recorded, tracked, and reportable. Fee payments, academic results, attendance, staff salaries, books, uniforms, expenses — everything flows through a single, unified system.

The system is organised into seven sidebar domains plus two dedicated student/phone portals. Each contains specialised modules that share the same records and permissions. When a student pays fees, the Ledger updates automatically. When results are entered, report cards become available. When a term ends, promotions use the configured class progression.

👥 People Management

Students, staff, guardians, and alumni — complete biographical data, photos, medical records, and relationships. Bulk import via CSV for rapid onboarding.

🎓 Academic Engine

Classes, subjects, continuous assessment scores, exam results, automatic grading, broadsheet generation, beautiful PDF report cards with rankings, and student promotions.

💻 Exams / CBT

Computer-Based Testing with multiple question types, auto-grading, timed exams, a student portal, and analytics. Scores feed directly into the results system.

🗓️ Timetable

Visual weekly timetable builder with period management, teacher allocation, conflict detection, and print-ready PDF export for classrooms.

💰 Financial Suite

Fee structures, fee collection with receipt printing, expenses tracking, staff salary payments, books and uniform sales, cashbook, ledger, debtors, and full accounting.

📊 Operations & Welfare

Daily attendance marking, AI face-recognition attendance via phone camera, behavioral notes, health records, school events calendar, and a full library system.

🪪 ID Card Engine

Generate premium CR-80 student and staff ID cards with holographic security, watermarks, ghost photos, and HMAC-signed serial numbers. Export as PNG or PDF.

🛡️ Security & Control

Six user roles with granular permissions, complete audit trail, automatic session timeout, encrypted license system, transfer certificates, and data backup and restore.

Key Design Principles

SchoolPro was designed around three principles that matter most to Nigerian primary and secondary schools. First, it works completely offline — once installed, your school runs without any internet dependency. Second, it follows the Nigerian academic calendar precisely, with sessions spanning September to July and three terms per session. Third, all financial figures are in Naira by default, with support for twelve African and international currencies.

Every module uses the same consistent interface: a page header showing where you are, a search or filter bar to find records quickly, action buttons to create or modify data, and card-based or table-based layouts for viewing information. Once you learn to navigate one module, you already know the patterns used across all forty core pages.

Chapter 2

First Login & Initial Setup

The very first time you open SchoolPro, you will need to activate your license and configure your school's identity. This chapter walks you through the essential first-day setup so your school is ready to operate.

License Activation & Free Trial

When SchoolPro launches for the first time, it automatically begins a 30-day free trial. During the trial, every feature is fully available with no restrictions. A gold banner at the top of the screen shows how many trial days remain and includes a link to purchase a license.

After the 30-day trial expires, the system locks and displays the License Activation screen. Enter your license key (purchased from deskttools.store) and your school name, then click Activate. This is a one-time process that ties your software to your specific computer. All data entered during the trial is preserved — nothing is lost when you activate.

Enter your License Key — This is the key you received at purchase, in the format SPRO-XXXX-XXXX-XXXX-XXXX. Type it carefully or paste it into the License Key field.
Enter your School Name — Type the official name of your school. This is stored with your license for identification purposes.
Click "Activate License" — The system will verify your key. If you have internet, it validates online. If not, it activates in offline mode and will verify the next time internet is available.
One License = One Computer Your license is permanently bound to the hardware of the computer it is first activated on. If you change your computer, you will need to contact support for a license transfer.

Default Login

After license activation, you will see the Login screen. SchoolPro uses a short PIN for staff sign-in and locks the form for 60 seconds after five failed attempts. Use the default administrator account only for initial setup.

FieldValue
Usernameadmin
Administrator PIN1234
Default bursar PIN5678
!
Change the Default PINs Immediately After your first login, go to Users & Access → User accounts, open each default account, and set a private PIN. Anyone who knows a shared administrator PIN can access sensitive school data.

Essential First-Day Configuration

Before you begin entering students, fees, or any school data, you must configure three critical areas. Navigate to Settings from the sidebar to begin.

1. School Identity (Settings → School Setup)

Fill in every field in the School Setup tab. This information appears on report cards, receipts, transfer certificates, and all printed documents. The fields to complete include your school name, motto, address, phone number, email address, school type (e.g. "Nursery, Primary & Secondary"), head teacher's name and title, the school's registration number, year of establishment, and a receipt footer message. You can also upload your school logo (PNG or JPG, maximum 500KB) and set your school's primary and secondary brand colours.

2. Academic Session (Sessions Page)

Navigate to the Sessions page from the sidebar. SchoolPro follows the Nigerian academic calendar where a session spans two calendar years. For example, the 2025/2026 session means 1st Term starts in September 2025, while 2nd and 3rd Terms occur in 2026. The system features an Auto-Detect function that reads today's date and suggests which session and term should be active. If the correct session does not exist yet, it will offer to create it for you with pre-filled dates. Simply click the "Create & Activate" button that appears in the detection banner.

3. Grading System (Settings → Grading)

The default grading scale follows the standard Nigerian format: A (70–100, Excellent), B (60–69, Very Good), C (50–59, Good), D (45–49, Fair), E (40–44, Pass), and F (0–39, Fail). The default score breakdown is CA1 (10 marks), CA2 (10 marks), CA3 (10 marks), Assignment (10 marks), and Exam (60 marks), totalling 100 marks. You can modify both the grade boundaries and score breakdown to match your school's assessment policy. The passmark defaults to 40 and can be adjusted.

Setup Checklist Before entering any student data, confirm: (1) School identity is complete, (2) Current session and term are active, (3) Grading scale matches your school's policy, (4) Classes have been created, (5) Subjects have been created and assigned to classes, (6) Fee structures have been defined for the current term.
Chapter 4

User Roles & Permissions

SchoolPRO includes six familiar role templates and a professional permission matrix for custom school roles. Access can be controlled per resource and action, then assigned to named users with an auditable reason.

Available Roles

RoleDescriptionKey Permissions
AdministratorFull access to every module and setting in the system.All permissions — including user management, backup, settings, and audit log.
Bursar / AccountantHandles all financial operations and reporting.Fees, expenses, salaries, books, uniforms, receipts, cashbook, ledger, debtors, and financial reports.
Secretary / ReceptionistManages student records, daily operations, and front-desk tasks.Students, guardians, attendance, fees collection, books and uniform sales, receipts, library, health records, behavioral notes, events, and transfer certificates.
TeacherEnters results, marks attendance, and views student information.Students (view only), results entry, attendance marking, report cards (view), behavioral notes, and library (view).
LibrarianManages the library catalogue and book loans.Library management, books (view), students (view), and reports (view).
Attendance OfficerDedicated role for staff who only manage daily attendance.Attendance marking and correction, and students (view only).

These are starting templates, not a limit. Under Users & Access → Roles & permissions, administrators can create roles such as Security Officer, Exams Officer, School Nurse or View Only; duplicate an existing role; and allow/deny individual capabilities. Prefer role-level changes over one-person exceptions so access remains understandable when staff duties change.

Role-Based Sidebar The sidebar automatically hides modules that a user's role does not permit. A teacher logging in will see a simplified sidebar with only Dashboard, Students, Results, Report Cards, Attendance, and a few other allowed items. This prevents confusion and keeps the interface clean for each user.
A–Z Finder

Every function, from A to Z

Use this index when you know the job but not the page. Select a linked term to jump to the complete workflow.

B

Backup, behavioural notes, books/materials, booklists, bundle sales, broadsheet and browser-tab protection.

C

Cameras, Cashbook, CBT Security, certificates, Classes, class progress, curriculum coverage and currency.

D

Dashboard, debtors, device lock, diagrams, distance-learning registration, drafts, duplicate textbook merging and data download.

E

Editing, enrolment, Exams/CBT, exam analytics, exports, expenses, external candidates and end-of-term procedure.

F

Face Attendance, face enrolment, fee collection, fee setup, figures, finalising results and financial reports.

G

Generated materials, Google Drive backup, grading scale, guardians, glossary generation, GPS registration fields and grade-level promotion.

H

Hall Zone, hall codes, health records, holiday-coaching registration, history and head-teacher/principal signatures.

I

ID Engine, imports, income, inventory, invigilator reports, individual permission exceptions and incomplete registrations.

J

Job-based roles, AI generation jobs, job resume, JSON backup and joining/linking pupils to guardians.

K

Kiosk/phone attendance, key points and definitions, license key management and known-adult exclusion at face stations.

L

Ledger, learning coverage, lesson plans, library loans, licence activation, live exam login and login lockout.

M

Manual attendance, materials review, mobile access, monthly reports, multi-device work, mock exams and multiple registration types.

N

Network sharing, new academic session, new pupil/staff/station, net position, negative-marking preset and notifications.

O

OCR for scanned textbooks, online-student registration, other income, offline operation, outstanding fees and option shuffling.

P

Payroll, permissions, phone attendance, PIN login, practice exams, printing/PDF, promotions, protection score and pupil presence.

Q

Question bank, question generation/review, quick registration, quick actions, quality gates and QR code for the CBT portal.

R

Receipts, Registration, report cards, reports, restore, result workbench, role matrix and rotating hall code.

S

Salaries, school events/setup/stamp, security reports, sessions, staff, stations, student support/students, subjects and submissions.

T

Teacher tools, term dates/activation, textbooks, timetable, transfer certificates, traits, thresholds and trainer exclusions.

U

Uniform inventory/sales, unfinished registrations, unknown faces, uploads, users/access and USB backup.

V

Validation, video/camera permission, visitor registration, voice alerts, voiding receipts and violation review.

W

Welfare reports, whole-school face scope, Wi-Fi/network access, workshop participants, whole-book generation and work schemes.

X

XLSX/CSV-style spreadsheet exports, CSV import/export, and cross-registration device-use reports.

Y

Year/session rollover, year-end promotions, year-established branding and yearly archive/backup discipline.

Z

Zone protection (Hall Zone), zero-result validation, zero-loss backup practice and zoom/print scaling.


Chapter 4.5

Dashboard

Your command centre. The Dashboard gives you a real-time overview of your school's vital statistics the moment you log in — students, staff, finances, attendance, and recent activity at a glance.

Dashboard Overview

The Dashboard is the first screen for administrators and bursars. Its main Net position panel reconciles every current-term income stream—fees, other income, book sales and uniform sales—against operating expenses and salaries. Outstanding fees are shown separately because they are receivables, not money the school already holds. The information adapts to permissions, so staff only see actions and figures their role allows.

SchoolPRO dashboard with net position, money in, money out, outstanding fees, key statistics, recent payments and quick actions
Figure 2 · Dashboard. Use Full cashbook for transaction detail, the outstanding-fees strip for debtors, and the role-aware Quick Actions for the day's most common jobs.

Quick Statistics

The compact cards below the finance panel show four operational signals:

CardWhat It Shows
StudentsTotal active students across all classes.
StaffTotal active staff members across all departments.
Present TodayToday's recorded present and late attendance; “All present” appears when no absence is recorded.
Fees ChargedThe current-term amount charged to students, distinct from the amount already collected.

Charts & Activity

Below the stat cards, Recent Payments lists the latest receipts, Quick Actions opens permitted tasks such as Collect Fees, New Student, Enter Results, Attendance and Record Expense, and Upcoming Events shows the nearest school-calendar items. Selecting a money panel or action takes you to the full operational page.

💡
Dashboard as a health check
Make it a habit to check the Dashboard first thing every morning. A quick glance tells you if attendance is low (possible event or issue), if fee collection is on target, and if any important actions were taken overnight.

Chapter 5

Students

The Students module is the heart of SchoolPro. Every other module — fees, results, attendance, report cards — connects back to the student record. Getting student registration right from the start saves hours of work later.

Registering a New Student

Navigate to the Students page and click the Add Student button. A modal form appears with fields organised into required and optional categories.

Required Fields

Every student must have an Admission Number (a unique identifier like ADM/2025/001), First Name, Surname, Gender (Male or Female), Date of Birth, a Class assignment, and a Guardian link. The admission number is the single most important field — it is used across all modules to identify the student and must be unique.

Optional Fields

Additional fields include Middle Name, Home Address, Admission Date, Blood Group, Genotype, Religion, State of Origin, LGA, Medical Notes, Previous School, and House assignment. You can also upload a passport photograph (maximum 300KB, PNG or JPG). These optional fields enrich the student profile and appear on report cards and transfer certificates when filled.

Bulk Import via CSV

For schools with many existing students, SchoolPro supports CSV import. Click the Import CSV button to see a sample CSV template with the correct column headers. Prepare your spreadsheet with columns for firstName, surname, middleName, gender, dob, classId, house, stateOfOrigin, religion, bloodGroup, and genotype. Save it as a CSV file and upload it. The system validates each row and reports any errors before committing the import.

Class IDs in CSV When importing, the classId column must use the internal class ID (shown in the Classes page), not the class name. Create your classes first, note their IDs, and use those in the CSV.

Searching & Filtering Students

The search bar at the top of the Students page filters by student name or admission number as you type. For schools with hundreds of students, you can also filter by class using the class dropdown. The student list uses server-side pagination, meaning only a page of results loads at a time — even schools with thousands of students will experience fast load times.

Editing & Managing Student Records

Click on any student card to open their full profile. From here you can edit any field, change their class assignment, update their photograph, or change their status. Student statuses include Active (currently enrolled), Graduated (completed their final year), Transferred (moved to another school), and Withdrawn (left for other reasons). Changing a student's status to anything other than Active moves them to the Student Archives module.

Chapter 5.1

Registration Engine

Registration is a guided, template-driven intake system—not a single fixed form. It shows only the sections and fields needed for the selected learner, candidate, participant or visitor.

Choose the correct registration type

The type picker supports the school's configured templates. The supplied set covers Regular Student, Professional Candidate, External Candidate, Short Course Student, Workshop Participant, Sandwich Student, Distance Learning Student, Online Student, Temporary Student, Corporate Training Participant, Holiday Coaching Student and Visitor. Use the filter box to find a type quickly. Labels such as learner, candidate, participant and visitor help staff understand the record's purpose.

SchoolPRO registration type picker showing learner, candidate, participant and visitor registration options
Figure 3 · Registration type picker. Select Full form for a complete record. Select Quick only when the template allows it and the front desk needs to capture the minimum now and complete the record later.

Full form, Quick form and drafts

ChoiceUse it whenResult
Full formThe person is present and all required evidence is available.Every applicable section is completed, reviewed and submitted as a complete record.
QuickThe queue is long or only the essential identity/contact details are available.The record is created with draft/incomplete registration status and must be completed later.
Save draftYou must stop in the middle of any full registration.The current step and entered values remain in the Unfinished Registrations panel for resume or discard.

While you type, the wizard performs a best-effort autosave after a short pause. Do not rely on autosave alone before shutting down the computer: use Save draft, confirm the draft appears, then leave the page.

Complete the guided steps

Select type and Full/Quick mode. SchoolPRO loads the current server template, including conditional sections, required flags, field help and validation.
Enter identity and programme details. Depending on the template, controls may include text, number, date, select/radio, multiple selection, photo upload, signature pad, star rating, repeating rows, GPS location, class, guardian and staff selectors.
Link or create the guardian. Search existing guardians first to avoid duplicates. Where allowed, create a guardian inline with name, phone, relationship and email.
Correct highlighted fields. Conditional rules decide which fields apply. Hidden fields are not required; visible required fields must pass validation before continuing.
Review & Submit. Read the section summary, return to any step that needs correction, then submit. The admission/registration number is generated on submission.

Search, resume and correct records

The Students search can match more than a name or admission number: it can also find phone, email, national ID, passport, candidate number, guardian name and configured custom fields. Incomplete registrations carry a visible status badge. Open the record to continue the missing sections. Corrections to an existing registration require the appropriate permission and may request an administrator PIN; supply a clear reason so the audit trail explains the change.

!
Avoid duplicate people. Search before starting a new registration, especially for returning course participants, external candidates and siblings sharing a guardian. If a likely match appears, update or resume it instead of creating another identity.
Chapter 5.2

Staff

The Staff page is the operational roster for teachers, administrators, finance, non-academic and support personnel—and the source of monthly payroll figures.

Build and maintain the roster

The summary cards show Total Staff, Monthly Payroll, Paid This Month and Unpaid. Search by staff name or role, then use the row actions to edit or deactivate a person. Deactivation preserves the historical record while removing the person from active operations.

Field or actionHow it is used
Full NameThe name shown in payroll, reports and assignment controls.
Role / PositionThe job title, such as Mathematics Teacher or Bursar. This is not the same as the login permission role configured in Users & Access.
DepartmentChoose Academic, Admin, Finance, Non-Academic or Support so lists and reports can group staff correctly.
Phone, emailContact details for administration; validate them before bulk communication or printed records.
Monthly SalaryThe default amount presented by Salaries. Update it before the relevant payroll month when a contract changes.

Add one person or import a CSV

Select Add Staff, complete the required name and role plus the relevant department, contact and salary fields, then save. For a large roster, select Import, download Sample CSV, and keep the header row name, role, phone, salary, dept, email. Upload the completed file, inspect the row-by-row preview and error status, then import only valid rows.

!
Separate the employee from the user account. A Staff record supports payroll and school operations. Create a corresponding login under Users & Access only when the employee needs to sign in, and grant the minimum permissions required.
Chapter 5.3

Guardians

Guardians are the parents or caregivers linked to student records. One guardian can be linked to multiple students (siblings), and a student can have multiple guardians.

Create, link and correct guardian records

Use Add Guardian for a parent, caregiver or sponsor. Enter the required full name and phone number, choose Father, Mother, Guardian, Uncle, Aunt, Grandparent, Sibling, Sponsor or Other, then add occupation, email and home address where known. In Children / Wards, search by pupil name or admission number and add every linked child.

The page shows active children separately from archived children, which keeps the family history intact when a pupil graduates or transfers. Search guardian name or phone before creating a new record; for siblings, edit the existing guardian and add the next child instead of duplicating the adult.

Check the phone number first. Guardian details flow into student contacts and printed records. A single corrected guardian record can therefore fix contact information for several linked siblings.
Chapter 5.4

Student Archives

The Archives module holds all non-active students — those who have graduated, transferred, or withdrawn. It serves as a permanent record that can be searched at any time.

Find, export, restore or permanently remove

When a pupil becomes Graduated, Transferred, Withdrawn or another inactive status, the record appears here. Summary cards and status tabs show the archived population; search by name or admission number and use Export CSV for the currently filtered register.

Select Restore to re-admit a returning pupil. SchoolPRO returns the pupil to active status while preserving admission history, transactions, results, attendance and welfare records. Use permanent delete only for a genuinely erroneous identity. The system blocks deletion when protected financial or historical references still exist.

!
Archive is the normal retention path. Do not permanently delete a genuine former pupil merely to tidy a list. Historical certificates, audit enquiries and year-on-year reporting depend on the preserved identity.

Chapter 6

Classes

Classes define the academic groupings of your school. Every student, fee structure, result entry, and attendance record is tied to a class.

Creating Classes

Navigate to the Classes page and click Add Class. Each class has a name (e.g. "Primary 1"), a grade level number (used for ordering and promotions), an optional section or arm label (e.g. "A", "B", "Gold"), and a class teacher assignment. The system automatically generates a full display name by combining the name and section — for example, "Primary 1A" or "JSS 2 Gold".

Grade levels are critical for the Promotions system. When promoting students at year-end, SchoolPro uses grade levels to determine which class comes next. A student in a class at grade level 3 will be promoted to the class at grade level 4. Ensure your grade levels form a continuous sequence from the lowest class to the highest.

SchoolPRO classes page showing class cards grouped by Junior Secondary, Nursery and Primary levels
Figure 4 · Classes. Each card shows status, teacher, pupil count by gender and promotion destination. Use Edit to correct configuration and Disable when a class should stop accepting new work without deleting its history.
Typical Nigerian School Structure Nursery 1 (grade 1), Nursery 2 (grade 2), Primary 1 (grade 3) through Primary 6 (grade 8), JSS 1 (grade 9) through JSS 3 (grade 11), SSS 1 (grade 12) through SSS 3 (grade 14). Adjust according to your school's structure — some schools start from Crèche or Pre-Nursery.
Chapter 6.2

Subjects

Subjects define the academic courses offered by your school. Each subject is assigned to one or more classes, determining which students can have results entered for that subject.

Managing Subjects

Select Add Subject, enter the subject name, enter a unique two-to-four-character code, then tick every class that offers it. A single subject can serve multiple classes: English may span the school while Further Mathematics may apply only to senior classes. Search finds either the name or code; Edit changes assignments, and Remove is available only to authorised users.

Codes are machine identifiers used by CSV result imports and other academic links. Keep them stable, short and unique—such as MTH, ENG, PHY, CHE, BIO or FMT. Before removing or changing a code, check whether results, textbook assignments, exam banks or generated academic materials already reference the subject.

Set up classes first, subjects second. Then open Results once to confirm that each class presents exactly the intended subjects before teachers begin score entry.
Chapter 6.3

Results Entry

The Results module is where teachers enter continuous assessment and exam scores. These scores flow directly into the Report Cards module for automatic grade calculation and ranking.

Entering Results

Navigate to the Results page. First, select a class and a subject from the dropdown filters. The system displays a broadsheet-style table with every active student in that class listed vertically, and the score components (CA1, CA2, CA3, Assignment, Exam) listed horizontally. Enter scores directly into the cells. The total and percentage are calculated automatically as you type.

Scores must not exceed the maximum for each component (e.g. CA1 cannot exceed 10, Exam cannot exceed 60). The system validates entries in real time and highlights any that exceed the limit. Click Save when finished. Results are saved per-class, per-subject, per-term — so a student has separate result entries for each subject in each term.

Bulk Import via CSV

For schools with many subjects and students, CSV import is faster than manual entry. Click the Import CSV button to see the expected format. Each row should contain the student's admission number, the subject code, and a score for each component. For example: ADM/2025/001,MTH,8,7,9,8,52. The system matches admission numbers and subject codes to existing records and flags any that cannot be found.

Results Workflow

Select Class & Subject
Enter Scores
Auto-Calculate Totals
Save
Report Cards Ready
Results entered here flow automatically into the Report Cards module with grades, rankings, and comments.

Results Workbench tabs

TabWhat to do there
Score EntryEnter or import component scores; search/filter pupils; validate missing, invalid, empty-component and all-zero rows; use Fill blanks, Fill all, Copy previous column or Clear column carefully.
Class ProgressReview every assigned subject as Needs work, Ready to finalize, Finalized or Open draft, then open the relevant subject card.
TraitsRecord affective/psychomotor ratings, find incomplete pupils, and fill blank ratings with a chosen level before saving.
Result ViewSearch final pupil summaries and filter by with/no results, passing average or below-passmark performance.
BroadsheetReview the class-wide subject grid, search rows, filter completeness/performance and prepare the sheet for print or export.
!
Finalize only after validation. Finalization locks a subject to protect published scores. An authorised user can reopen it when a documented correction is genuinely required.
Chapter 6.4

Report Cards

Report Cards are the crown jewel of SchoolPro's academic module. They take the raw scores entered in Results and transform them into beautifully formatted, print-ready PDF documents.

SchoolPRO report card preview for a pupil, showing identity details, term summary, subject results and the Download PDF action
Figure 5 · Report-card quality check. Preview the exact PDF layout before release. Zoom the image to inspect the pupil identity, class and term, subject marks, total, grade, position, attendance and branding.

Complete results-to-report workflow

Prepare the term. Confirm the active session and term, grading scale, component maximums and passmark in Settings. A wrong active term or grading rule affects an entire class, so correct configuration before entering scores.
Complete source records. In Results, enter every required CA, assignment and examination component for each class and subject. Complete affective/psychomotor traits and verify attendance for the reporting period.
Validate and finalize subjects. Resolve missing, above-maximum and suspicious all-zero rows. Use Class Progress to confirm that each subject is ready, then finalize only after the responsible teacher or academic head has reviewed it.
Open Report Cards and select the class. Verify the class count and current term shown on the page. Search for the pupil and open Preview; do not rely only on the summary card.
Perform the visual quality check. Confirm school logo/details, pupil name, admission number, photograph, class, session/term, component marks, totals, grades, remarks, attendance, traits, comments, position and signature areas. Compare at least one total and average manually.
Correct at the source. If anything is wrong, close Preview and repair the student profile, attendance, settings or result entry that supplied it. Reopen a finalized subject only with permission and a recorded reason; never edit the downloaded PDF as the master record.
Export, name and release. Download one pupil, the selected class or all classes as appropriate. Use a clear filename containing class, term and session, review the saved PDF, then print or distribute through the school's approved channel.

Report-card release gate

CheckWhat “ready” meansIf it fails
IdentityName, admission number, class, photo, gender/house and date of birth belong to the same pupil.Correct the pupil profile or class assignment, then regenerate.
AssessmentAll expected subjects and score components appear; totals do not exceed configured maximums.Return to Results, repair the source scores and finalize again.
CalculationAverage, grade, subjects passed/failed and position agree with the class data and grading scale.Check grading settings, missing scores and whether all classmates are included.
Pastoral recordAttendance, traits and comments are complete, suitable and supported by school records.Update attendance/traits or revise the authorised comment before export.
Document qualityLogo, colours, contact details, term label, signatures and page fit are correct in the downloaded PDF.Correct School Setup or print settings and download a fresh copy.
!
Protect confidentiality. Report cards contain personal and academic data. Export only the required pupil/class, store files in a controlled location and verify the recipient before sending.

Generating Report Cards

Navigate to the Report Cards page. Select a class from the dropdown to see all students with their computed results. Each student card shows their total score, average, position in class, and the number of subjects passed versus failed. The report card includes: the school header with logo and motto, student details (name, admission number, class, term, session), a full results table with CA breakdowns, totals, grades, and remarks, a colour-coded performance bar for each subject, the student's class position with ordinal suffix (1st, 2nd, 3rd, etc.), attendance summary (days present, absent, late), auto-generated teacher and head teacher comments based on performance, and a signature section.

Exporting as PDF

You can export report cards in three ways. Single Student: click the PDF icon on any student's card to download their individual report card. Whole Class: click "Export Class" to generate a multi-page PDF with every student's report card in one file. All Classes: click "Export All" to generate report cards for every student in every class in the current term — this can be hundreds of pages. The PDF opens in a new browser tab with a print dialog, ready to be printed or saved as a PDF file.

Chapter 6.5

Promotions

The Promotions module handles end-of-session progression — promoting, repeating, graduating, transferring, or withdrawing students.

How Promotions Work

Promotions are typically done once per year, at the end of 3rd Term. Navigate to the Promotions page and select a class. You will see every active student in that class with their academic average for the current term. SchoolPro offers an Auto-Decide feature that automatically recommends "Promote" or "Repeat" for each student based on whether their average meets or exceeds the passmark (configurable in Settings → Grading). You can override any individual decision before executing.

The available decisions for each student are:

DecisionEffect
PromoteMoves the student to the next class (based on grade level sequence). You select the destination class.
RepeatStudent stays in the same class for the next session.
DemoteMoves the student down to a lower class. You select the destination.
GraduateFor final-year students. Sets status to "Graduated" and moves to Archives.
TransferSets status to "Transferred" and moves to Archives.
WithdrawSets status to "Withdrawn" and moves to Archives.

After reviewing all decisions, click Execute Promotions. This action is recorded in the audit log and cannot be undone automatically — individual students can be manually moved back if needed, but the bulk operation itself is permanent. A record of every promotion decision is stored in the promotions table with the student, source class, destination class, decision, session, and the user who executed it.

Chapter 6.6

Exams / CBT

The Computer-Based Testing module allows you to create, manage, and administer exams that students take directly on a computer or phone. Questions are timed, auto-graded, and scores feed directly into the Results system.

SchoolPRO Exams and CBT question workspace showing Questions, Submissions, Monitor and Settings tabs with mixed question types and correct answers
Figure 6 · Exam question workspace. The exam toolbar exposes Analytics, Topics, Grades, CSV export and printing, while the inner tabs separate question authoring, submissions, live monitoring and exam settings.

End-to-end examination workflow

Plan
Build questions
Quality check
Publish & admit
Monitor
Grade & close
Treat publication as a release gate: configuration, question content and security must be tested before students enter the hall.
Plan the paper. Define the subject, class group, learning outcomes, exam or mock status, duration, total marks, passmark, opening/closing window and whether scores will later map into Results.
Create and configure the exam. Enter the title and instructions, select the correct class(es), set timing and attempts, then decide question shuffle, option shuffle, pool size, result-release policy and submission rules.
Build the question set. Add questions manually, import from the bank, approve teacher-reviewed Academic AI drafts or use Random Pick. Mix types only when the marking plan supports them.
Run the quality gate. Read every stem and option, verify the marked answer and accepted spellings, inspect diagrams, confirm marks/difficulty/topic tags, remove duplicates and make sure question marks add up to the intended paper total.
Test as a student. Use a test admission number on the same network and device type planned for the hall. Confirm login, timer, navigation, images, save/resume, final confirmation and auto-submit. If CBT Security is enabled, run the full two-device readiness drill.
Publish and admit students. Publish only the approved version, communicate the student URL/QR and hall code, confirm server time and opening window, and keep the exam dashboard open for the invigilator.
Monitor the sitting. Watch started, active, submitted, disconnected, suspended and unresolved sessions. Verify a student's identity before releasing a login or restoring access; record the reason for every intervention.
Grade, analyse and close. Review auto-marking exceptions and manually grade essays, confirm absent/incomplete cases, release results according to policy, inspect item analytics and weak topics, export records, push approved scores to Results if required, then close the exam.

Creating an Exam

Navigate to Exams / CBT from the sidebar under Academics. To create a new exam, click the New Exam button. You will need to provide the exam title, select the subject, choose the target class, set the duration in minutes, and specify the total marks. You can also set a start date and time window during which the exam will be available for students to take.

Each exam has a status: Draft (being prepared), Published (available to students), Active (currently being taken), and Closed (completed, no more submissions). Only published exams are visible in the student exam portal.

Adding Questions

Once an exam is created, click into it to add questions. SchoolPro supports multiple question types:

📝 Multiple Choice (MCQ)

Four options (A-D) with one correct answer. The most common question type for CBT exams. Each question can have an optional image or diagram.

✅ True / False

Simple binary choice questions. Useful for quick factual recall assessments.

📋 Fill in the Blank

Students type a short answer. The system matches against one or more accepted answers (case-insensitive).

📄 Essay / Long Answer

Open-ended questions requiring manual grading by the teacher after submission.

Questions can be reordered by dragging, and each question carries a point value. You can also import questions from a previous exam or from a question bank to save time.

💡
Tip: Shuffle questions
Enable question shuffling in the exam settings so each student sees questions in a different order, reducing the chance of copying during group exams.

Exam configuration checklist

Before publishing, confirm the title, one or more classes, subject, duration, passmark, opening/closing time, instructions and whether the paper is a Real Exam or Mock / Practice. Pool Size 0 gives every learner all questions; a number greater than zero gives each learner a random set from the larger pool. Question and option shuffling can be enabled separately.

The School Test preset uses normal classroom rules. The Professional / Certification preset applies stricter defaults such as a late-entry cut-off, submission confirmation, minimum time before voluntary submission, delayed result release and attempt spacing. Review the exam's Settings tab after applying a preset—defaults are a starting policy, not a substitute for the invigilator's written exam rules.

Use the Question Bank to search by subject, class, topic and difficulty, or scope the bank to a textbook and the chapters actually taught. Random Pick first creates a preview: remove unsuitable questions before adding the set to the exam. Do not confuse question-bank random selection with the per-student Pool Size setting.

Student Exam Portal

Students access exams through a dedicated portal and do not need a staff login. The CBT Security page provides the student address and QR code. Students identify themselves using their admission number and, when LAN + hall code is active, the current hall code.

Once a student starts an exam, a countdown timer is displayed prominently. Questions can be navigated freely (students can skip and return to questions). When the timer expires, the exam is automatically submitted. Students can also submit early if they finish before time.

⚠️
Security is policy-driven
CBT Security can enforce one device, one tab, hall network, login lockout, network-change detection, leaving-screen reports, clipboard blocking and optional automatic suspension. Test the exact settings on at least two student devices before the live examination.

Grading & Results

Multiple choice, true/false, and fill-in-the-blank questions are auto-graded instantly upon submission. Essay questions appear in a review queue for the teacher to grade manually. Once all questions are graded, the final score is calculated.

Exam scores can be optionally pushed to the Results module — mapping the CBT score to one of the CA or Exam components in the academic results system. This means a single CBT exam can directly populate the "Exam" column for a subject in the broadsheet, eliminating manual data entry.

Exam Analytics

After an exam is closed, the system generates analytics: class average, pass rate, highest and lowest scores, question-by-question performance (which questions were most frequently answered incorrectly), and individual student breakdowns. This data helps teachers identify weak areas and adjust their teaching accordingly.

Close-out evidence to retain

View/actionUse it for
SubmissionsConfirm who submitted, attempt state, score, start/finish time and any response needing manual review.
Monitor / Security reportsResolve genuine interruptions and retain evidence of device, tab, network or behaviour events before closing.
GradesComplete manual marks and verify the final total before release or transfer into academic Results.
Analytics / TopicsIdentify weak learning outcomes, ambiguous questions and content that needs reteaching.
Export CSV / PrintCreate the authorised administrative record; store it using the exam name, class, term and date.
Chapter 6.6a

Academic AI

Academic AI converts an approved textbook into a controlled draft-question workflow. Teachers choose the source and scope, monitor generation, repair weak drafts, then approve only valid questions into an exam.

The four-stage workflow

Upload book. Add a PDF, Word document or text file. Selectable text gives the best result; scanned books require OCR in Settings → AI. Re-uploading an identical file opens the existing copy instead of creating another.
Choose chapters. Review document quality, table-of-contents detection, chapter word counts, worked examples, review questions and the estimated question potential. Correct an unreliable split before generating.
Configure and generate. Choose chapters, questions per chapter and the required balance of difficulty, thinking level and question type. Difficulty and Bloom level are separate controls. Settings → AI determines the provider and defaults.
Review and approve. Every completed chapter is saved immediately. Inspect each draft, repair or edit incomplete questions, add/replace an image if required, reject unsafe material, choose an existing exam or create one without leaving, then approve selected questions.

Generation jobs, connection loss and resume

The page shows running, paused and completed jobs. A health check can distinguish a network/provider interruption without sending a prompt or consuming tokens. Completed chapters remain safely saved; reopen the job and choose Open and resume instead of uploading the book or generating the finished chapters again.

i
Generation never publishes directly. AI output is a draft. A teacher remains responsible for factual accuracy, curriculum fit, answer validity, mark allocation, image rights and language appropriate to the selected class.

Repair, edit and approve questions

Drafts missing an answer, options or other required structure are held in Needs correction and cannot enter an exam. Use Repair with AI for a controlled rewrite or Edit Question for direct correction. For multiple choice, confirm every option and the selected correct answer; for short answers, write the accepted answer and confirm the exam's marking tolerance. The comparison view keeps the original visible before an AI improvement replaces it.

ControlSafe use
Create a new examCreate the destination from the review stage so finished drafts are not lost while you leave to configure an exam.
Approve selectedAdd only checked, valid drafts to the chosen exam; verify the reported approved/rejected totals.
Reject / discardReject keeps a draft out of the queue; permanent deletion should be reserved for duplicates or unusable material.
Question imagesUpload PNG/JPEG/WebP, add useful alternative text/caption and preview the phone layout before approval.
Chapter 6.6b

Academic Library

The Academic Library turns uploaded textbooks and approved questions into lesson planning, classroom material, curriculum coverage and student-support tools.

SchoolPRO Academic Library Teacher Tools showing a selected textbook, subject, class, curriculum, chapter and generation options
Figure 7 · Academic Library. Start by choosing the correct book, subject, class/level, curriculum and chapter. Generated output always enters a review queue; nothing is published automatically.

Eight working areas

TabWhat it covers
Teacher ToolsGenerate one-chapter or whole-book material: curriculum mapping, scheme of work, teacher lesson plan, chapter summary, classroom discussion pack, differentiated teaching pack, flashcards, glossary, key points/definitions and configured question sets.
Ask TextbookAsk a specific question or choose a prompt such as explain, compare or create discussion questions. Answers are grounded in the selected textbook instead of the entire library.
Generated MaterialsReview pending/approved/rejected output, open the full material, approve for use, reject, and trace the source chapter and coverage percentage.
Question ReviewSearch by question/topic/chapter, filter review state, correct text/options/answers/images, compare AI improvements, bulk approve/reject and remove unusable drafts.
Learning CoverageMeasure questions, marks, passage coverage, curriculum outcome coverage and Bloom-level balance; use warnings to find underrepresented thinking levels or chapters.
Student SupportAfter an exam has submissions, identify pupils needing support, weak topics, revision chapters, hardest/easiest questions and class-level intervention priorities.
Figure LibraryStore and reuse approved diagrams/figures in questions; inspect captions and source links before attaching.
TextbooksCorrect book subject/class/curriculum metadata, inspect pages/questions/material counts, merge duplicate uploads and delete a book only after reviewing everything attached to it.

Recommended teacher routine

Set book + class + curriculum
Generate one chapter
Teacher review
Approve & teach
Check coverage/support
Pilot one chapter before a whole-book run so the format, level and provider settings can be corrected early.
!
Metadata controls relevance. A textbook without the correct subject and class cannot be filtered reliably for exams, coverage or student support. Fix metadata in Textbooks before generating more content.
Chapter 6.7

Timetable

Create and manage weekly class timetables with period assignments, teacher allocation, and conflict detection. Print-ready timetables for display in classrooms and staff rooms.

Setting Up the Timetable

Navigate to Timetable from the sidebar under Academics. The timetable is organized by class. Select a class to view or edit its weekly schedule.

The timetable grid shows days of the week (Monday to Friday) across the top and time periods down the side. Each cell represents one teaching period. To assign a subject to a period, click the cell and select the subject and (optionally) the teacher. The system automatically populates available subjects from those linked to the class in the Subjects module.

Managing Periods

Before filling in the timetable, configure your school's period structure in Settings. You can define:

Period times — Start and end times for each period (e.g., Period 1: 8:00-8:40, Period 2: 8:40-9:20).
Break slots — Mark specific periods as "Break" or "Assembly" so they appear on the timetable but cannot have subjects assigned.
Number of periods — Typically 7-9 periods per day for Nigerian schools. This can vary between days if needed.

Conflict Detection

SchoolPro prevents scheduling conflicts automatically. If you try to assign a teacher to two classes at the same time, or schedule a subject that exceeds its allocated weekly periods, the system warns you. This ensures that the timetable is always valid and implementable.

Printing & Sharing

Each class timetable can be exported as a PDF for printing and display. The generated timetable is formatted to fit standard A4 paper in landscape orientation, with clear typography suitable for classroom walls. You can also generate a master timetable showing all classes on a single page for the staff room.

💡
Teacher's personal timetable
Staff members can view their own personal timetable showing only their assigned periods across all classes, making it easy to see their daily schedule at a glance.

Chapter 7

Fee Structure Setup

Before collecting any fees, you must define what each class pays. The Fee Structure module defines fee items per class per term — the foundation of the entire financial system.

Creating Fee Structures

Navigate to the Fee Setup page. Fee structures are organised by class. For each class, you define one or more fee items. A typical Nigerian primary school might have: School Fees (₦80,000), PTA Levy (₦5,000), Development Levy (₦10,000), Sports Fee (₦3,000), and ICT Fee (₦5,000). Each item has a name, an amount, and a mandatory/optional flag.

Fee structures are term-specific. When a new term is activated through the Sessions system, SchoolPro automatically copies fee structures from the previous term to the new one, saving you from re-entering the same items every term. You can then adjust amounts for the new term as needed.

Once fee structures are defined, the system automatically knows how much each student owes. The Ledger calculates outstanding balances by comparing what is owed (from fee structures) against what has been paid (from fee collection).

Chapter 7.2

Fee Collection

The Fees module is where money meets the system. Every Naira collected from parents is recorded here, with receipts generated automatically.

Collecting a Payment

Navigate to the Fees page — The main view shows all students and their fee balances.
Search for the student — Type the student's name or admission number in the search bar.
Click "Collect Payment" — A payment dialog opens showing the student's outstanding balance.
Enter the amount paid — This can be a full payment or a partial payment. The system accepts any amount up to the outstanding balance.
Select payment method — Cash, Bank Transfer, POS, or Cheque.
Confirm — The system creates a ledger entry, generates a receipt number, and updates the student's balance instantly.

Debtors View

The Fees page includes a Debtors tab that lists every student with an outstanding balance, sorted by the amount owed. This view is essential at the end of each term when the school needs to follow up on unpaid fees. You can see at a glance which students owe money, how much they owe, and how much they have paid so far.

Fee Collection Flow

Fee Structure Defined
Student Owes ₦X
Parent Pays
Ledger Updated
Receipt Generated
Every payment updates the ledger in real time. Outstanding balances recalculate automatically.
Chapter 7.3

Books & Book Sales

The Books module manages your school's book inventory and tracks sales to students, including assigning books to specific classes and managing stock levels.

Inventory, class booklists and sales

The page separates Inventory, Class Booklists and Sales. Add a title with its author, ISBN where available, category, subject, class, selling price and opening stock. Edit descriptive information or price, and use Restock to add received quantities without overwriting the existing balance.

Create the catalogue item. Use a consistent title and ISBN so duplicate stock lines do not fragment your totals.
Assign its class/subject. Class Booklists group the correct materials for pupils and enable bundle selling.
Sell one item or a class bundle. Choose a pupil to attach the purchase to their ledger, or use the permitted walk-in flow where no pupil is required.
Confirm quantity and total. Checkout reduces stock, records revenue and adds the sale to Sales History.

Use the page statistics and stock warnings to plan replenishment. Export or review sales by period in Reports, and use the pupil Ledger when a parent questions a specific purchase.

Chapter 7.4

Uniforms

The Uniforms module works similarly to Books — it manages uniform inventory, variants (sizes), pricing, and sales to students.

Manage sizes, stock and counter sales

The summary shows item count, units in stock, stock value and revenue. On the Inventory tab, create a separate item/variant for each sellable combination—such as School Shirt · Size 12—with price and opening stock. Edit name/variant/price, use the plus action to restock, and remove only an item created in error.

Select Sell Uniforms, optionally choose a pupil (or leave Walk-in Customer), add one or more variants to the cart, adjust quantities and confirm checkout. SchoolPRO validates available stock, reduces it and places linked purchases in the pupil ledger. Use Sales History to investigate previous checkouts.

Count physical stock regularly. Enter each new delivery through Restock and compare the Inventory count with shelf stock before a busy admission period.
Chapter 7.5

Other Income

For income that does not fall under school fees, book sales, or uniform sales — such as donations, rental income, event proceeds, or miscellaneous revenue — use the Other Income module.

Record non-fee receipts

Select Add Income, identify the Payer / Source, choose Donation, Grant, Rental, Event, Interest, Sponsorship, Government Aid or Other, enter the amount, add an explanatory note and use the actual receipt date. The page shows total records and the current page total; each entry flows into the Cashbook and financial reports as Other Income.

Use one entry per real receipt and name the source consistently—for example, “PTA” rather than alternating between “P.T.A.” and “Parents Association.” Delete only an accidental duplicate or invalid entry and retain the evidence used by the bursar.

Chapter 7.6

Expenses

Every outgoing payment — from diesel purchases to maintenance, stationery to transport — is recorded in the Expenses module.

Record and classify expenditure

Select Record Expense and enter Paid To, category, amount, purpose, method and actual payment date. Available categories include Supplies, Maintenance, Utilities, Transport, Printing, Cleaning, Security, Internet/ICT, Fuel/Generator, Food/Catering, Stationery, Medical, Salary, WAEC/NECO and Miscellaneous. Methods are Cash, Bank Transfer, Cheque and POS.

Use the purpose field to leave enough evidence for a later review—“Generator diesel, 40 litres” is stronger than “fuel.” The page total and entry count provide a quick check; Cashbook separates operating expense from salary payments for the selected period.

!
Avoid double-counting payroll. Normal staff salary runs belong in Salaries. Use the Salary expense category only for a legitimate payment that is intentionally outside that workflow and document why.
Chapter 7.7

Salaries

The Salaries module processes monthly staff payments based on the salary amounts defined in each staff member's record.

Run monthly payroll

Choose the payroll month first. Summary cards show Total Staff, Paid, Unpaid and Total Disbursed, while the history table shows person, amount, method and status. Pay Single lists only unpaid active staff and pre-fills the monthly salary from the Staff record; verify or adjust the amount, then confirm. Pay All Unpaid processes the remaining roster using each active employee's configured amount.

!
Review before Pay All. Correct joiners, leavers, salary changes, zero salaries, deductions or one-off adjustments first. Once paid, the monthly status prevents the same staff member from being selected as unpaid again.

Salary payments appear separately in Cashbook and payroll reporting. If a figure looks wrong, compare the selected month with the Staff salary source and audit entry before recording a compensating action.

Chapter 7.8

Cashbook

The Cashbook provides a day-by-day summary of all money coming in and going out. It is the financial pulse of your school.

Read the school's financial position

Select a session and either All Terms or one term. SchoolPRO summarises Fee Collections, Other Income, Book Sales and Uniform Sales into Total Income; Operating Expenses and Salary Payments form Total Expenses. The Net Position is income minus expenses, shown as Surplus when positive or Deficit when negative.

If a total looks wrongWhere to investigate
Fee CollectionsFees, Receipts and the pupil Ledger; check the selected term.
Other IncomeOther Income source/date entries.
Book or Uniform SalesThe relevant Sales History and stock transaction.
Operating ExpensesExpenses category, date and method.
Salary PaymentsSalaries with the same payroll month and session/term context.

Cashbook is a period summary rather than the place to create transactions. Enter or correct the source workflow, then refresh Cashbook so every downstream report stays consistent.

Chapter 7.8b

Debtors

Track students with outstanding fee balances. The Debtors module gives you a clear, actionable view of who owes what, enabling effective fee recovery.

Viewing Debtors

Navigate to Debtors from the sidebar under Finance. The page displays all students who have an outstanding balance for the current term. Each entry shows the student name, admission number, class, total amount owed, total amount paid, and the remaining balance.

You can filter debtors by class, sort by balance amount (highest first to prioritise collection), and search by student name or admission number. The summary at the top shows total outstanding debt across the school, number of debtors, and the collection percentage.

Debtor Actions

From the debtors list, you can directly navigate to a student's fee payment page to record a new payment. You can also print a debtors list by class — a common requirement for schools that send printed reminders home with students or distribute lists to class teachers for follow-up.

💡
End-of-term debtor reports
Use the Reports module to generate a comprehensive end-of-term debtors report that you can present to the school board or proprietor, showing total debt, recovery rate, and class-by-class breakdown.
Chapter 7.9

Ledger

The Ledger is a complete 360° pupil profile: financial transactions sit beside receipts, academics, attendance, purchases, health, library and activity history.

Open a pupil's complete record

Search by pupil name or admission number, select the correct identity and open the profile. The overview and tabs combine fee charges/payments, receipt reprints, book and uniform purchases, results, attendance, behavioural notes, health records, library loans and the chronological activity stream. Use the built-in CSV export when an authorised review needs structured data.

Ledger is the best investigation point when a parent says “we already paid,” a result appears under the wrong pupil, or a loan/purchase must be confirmed. Follow the receipt number and timestamps back to the source page. Financial history is preserved; a correction should be made by the controlled action offered by that source workflow, such as voiding a receipt rather than erasing evidence.

i
Privacy matters. This page consolidates sensitive financial, academic and welfare data. Grant Ledger access only to roles that need the full pupil profile and avoid leaving it open on a shared screen.
Chapter 7.10

Receipts

Every fee payment generates a receipt. The Receipts module manages, views, reprints, and voids receipts.

Receipt Formats

SchoolPro supports three receipt formats, each designed for a specific printer type:

🖨️ 58mm Thermal

Compact receipt for small POS-style thermal printers. Monospace font, dashed borders, and minimal layout. Perfect for quick over-the-counter receipts.

🖨️ 80mm Thermal

Wider thermal receipt with more detail — includes school logo area, itemised breakdown, amount in words, and payment method. Standard for most receipt printers.

📄 A4 PDF

Full-page receipt with school branding, colour accents, detailed payment information, and a formal layout suitable for filing or parent records.

Each receipt includes the receipt number, date, student name and admission number, class, payment description, amount in figures and words, payment method, cashier name, and the school's receipt footer message. To reprint a receipt, simply find it in the Receipts list and click the print icon. To void a receipt (in case of an error), click void — this does not delete the receipt but marks it as voided and creates a reversal entry in the ledger.


Chapter 8

Attendance

Daily attendance tracking with support for Present, Absent, Late, and Excused statuses. Attendance data feeds into report cards and the attendance reports.

Students, staff and the daily summary

The page header shows the configured resume time and late-after threshold. On Students, choose a class and date, use All Present or All Absent as a starting point where helpful, then set each pupil to P (Present), L (Late), A (Absent) or E (Excused). Review every row and select Save Student Attendance.

On Staff, mark each active employee Present, Late or Absent and save separately. The Summary tab reports Present, Late, Absent and Total Marked for pupils and staff for the selected date.

StatusUse it when
PresentThe person arrived before the late threshold.
LateThe person attended but arrived after the configured threshold.
AbsentNo attendance was recorded for the day.
ExcusedAn authorised absence should not be treated as an unexplained absence. Student attendance only.

An authorised correction writes an audit event. Attendance summaries feed report cards and reports, so check the date and class before saving—especially when backdating a record.

Chapter 8.2

Face Attendance

Face Attendance is a station-based recognition workflow for a gate, reception or classroom. It enrols four quality-controlled face poses, recognises pupils across the selected scope, ignores enrolled staff/trainers and preserves the first arrival record.

Prepare the engine and physical station

Confirm the recognition engine is ready. The page header reports loading, ready or failed. Wait for readiness before starting attendance; the desktop package starts the recognition sidecar in the background.
Create/select the station. Give the camera a clear name and real location such as Main Gate / Reception, choose entry/exit direction, and optionally make it the default.
Lock the camera. After the device is physically installed, use Lock Camera so the browser remains bound to that station. Unlock only when moving or reconfiguring it.
Choose scope. Whole school is correct at a gate. Choose a single class for a classroom station. The margin test still compares safely against the gallery to reduce a close wrong match.
SchoolPRO Face Attendance station with station selector, whole-school scope, attendance counts, camera area and recognition controls
Figure 8 · Face Attendance station. The top area controls the physical station and recognition scope. The counters show pupils currently in school, attendance recorded, staff ignored, faces in frame, unknowns, enrolled pupils and processing speed.

Enrol pupils and staff/trainer exclusions

Open the Enrol tab and choose Pupil Face or Staff / Trainer Exclusion. Search and select the person, start the camera, then capture four different poses: straight, slight left, slight right and smile. Auto mode waits for a stable, suitable face; manual Capture Now is available when the quality gate is green. The engine refuses nearly identical frames and warns when later captures appear to be another person.

Enrolling staff/trainer exclusions is important in nursery and reception areas. A known adult can remain beside a young pupil: SchoolPRO labels and ignores the adult, then records only the pupil when the pupil match is clear.

Good enrolment beats threshold tuning. Use even light from behind the camera, keep the full face visible, avoid backlight and take genuinely different poses. Enrol several pupils before judging recognition quality; a single face has nobody else to compare against and uses a stricter substitute threshold.

Start and operate attendance

Return to Station, confirm the station and scope, then choose Start Attendance. The button remains disabled until the engine is ready, the address is a secure camera context and at least one pupil in scope is enrolled. Recognition automatically assigns Present or Late according to the Attendance settings and the current time. A repeat recognition shows the existing first-arrival time instead of creating duplicate attendance.

ControlUse
Turbo / Fast / NormalTrade processing load for smoother or more careful detection. Start with Fast; move to Normal on weaker hardware or difficult scenes.
Near / Mid / FarMatch the expected camera distance. Far adds tiled detection for smaller faces and costs more processing.
PrecisionRequires a suitable front-facing pose before recognition. Keep on for fixed attendance stations.
Voice / SoundControl spoken identity/status feedback and short audio cues independently.
ThresholdsAdvanced matching controls. Change only after a documented test set shows a consistent problem.
Reload FacesRefresh the gallery after new enrolments or corrected face profiles.

Phone Attendance and camera troubleshooting

The header's Phone Attendance route opens a phone-first class sweep: a teacher selects a class, starts the camera and walks the aisles for a short scan. For any phone/tablet using the main computer over Wi-Fi, the browser requires a secure HTTPS address and camera permission. A camera-start message followed by a working camera usually indicates two overlapping start requests or a stale request; stop, wait for the previous stream to release, then start once.

If the camera does not open: confirm Windows/browser camera permission, close Teams/Zoom/Camera or another app holding the device, check that the site is HTTPS when accessed over the network, reload the page, and test the standard Attendance page as the safe manual fallback. A pupil's ordinary profile photo is not a substitute for the four-pose face enrolment.

Chapter 9

Behavioral Notes

Track positive and negative student behaviour throughout the term. Behavioral notes provide a documented history that can be shared with parents and used in decision-making.

Add and review a note

Use Add Note, search for the pupil by name or admission number, choose Positive, Note, Warning or Serious, set the date and write a factual description. The four summary cards double as filters; search can match pupil name, admission number or words in the note. Authorised users can edit or delete a mistaken entry from its row.

Write observable facts. Record what happened, when, where, who observed it and the response taken. Avoid labels or assumptions. Positive notes deserve the same clarity as warnings and help produce a balanced pupil history.
Chapter 9.2

Health Records

Maintain medical histories, allergies, conditions, and sick bay visit logs for all students.

Record a health event

Select Add Record, find the pupil by name or admission number, choose Checkup, Illness, Injury, Allergy, Vaccination, Medication or Other, set the date and describe the condition, treatment and important follow-up in Details. Type chips show counts and filter the page; search matches pupil, admission number or condition text.

Edit when correcting an inaccurate detail and delete only a record entered in error. The pupil Ledger also presents this health history to authorised users.

!
Health data is confidential and not emergency care. Restrict access, record only necessary facts and follow the school's emergency/parent-contact procedure. SchoolPRO does not replace a qualified medical assessment.
Chapter 9.3

School Events

Plan, schedule, and record school events — inter-house sports, PTA meetings, excursions, cultural days, graduation ceremonies, and more.

Create and maintain the calendar

Select New Event, enter the title, date, event type and useful description, then create it. The page separates or filters event types, shows how many days remain, dims past dates and supports text search. Edit a date or description when the plan changes; delete only a cancelled item that should not remain in the school record.

Use clear titles such as “JSS 3 Mock Examination Begins” and include the location, reporting time, responsible team and audience in the description. Upcoming events can surface on the Dashboard, so current information benefits every user.

Chapter 9.4

Library

A complete library management system for cataloguing books, managing loans, tracking returns, and identifying overdue items.

Library Operations

Summary cards show titles, total copies, copies available, active loans and overdue loans. In Books, add or edit title, author, ISBN, number of copies and category (General, Textbook, Fiction, Non-Fiction, Reference, Science, History, Literature, Religion or Other). Search title/author/ISBN and use category chips to narrow the catalogue.

Issue a loan. Select Issue Loan or Loan Out on an available title, find the pupil, set the duration in days and confirm. Available copies reduce immediately.
Monitor Active Loans. Search pupil/book or select Show overdue only. Each row shows borrowed date and due date.
Return or mark lost. Return restores availability. Lost reduces total copies after confirmation, so use it only after the school's lost-book process.

Loan history remains in the pupil Ledger. Do not confuse this circulation catalogue with Books & Book Sales, which manages items sold to families.


Chapter 10

Transfer Certificates

When a student leaves your school — whether transferring, graduating, or withdrawing — a formal Transfer or Leaving Certificate can be generated and printed.

A downloaded SchoolPRO Transfer and Leaving Certificate PDF showing certificate number, pupil details, transfer information, QR code and signature areas
Figure 9 · Issued transfer certificate. Inspect the saved PDF—not only the form—before signing, stamping or sending it. The document should show the unique certificate number, verified pupil data, departure details and any authorised QR payload.

Issue a professional certificate

Confirm authority and source records. Verify that the request is approved and that the pupil profile, guardian, admission date, class history, fee position and leaving date are current. Do not issue from an unverified verbal request.
Select the pupil. Search by admission number where possible, then cross-check full name, photograph, date of birth, class and guardian so a same-name pupil is not selected.
Describe the departure. Choose the correct reason, enter the leaving date and destination school/contact where known, then select conduct and fee status from the authorised school record.
Write public content carefully. Add a concise public remark and leaving summary suitable for the pupil, family and receiving school. Use factual, professional language and keep confidential welfare details out of the public fields.
Add confidential support data only when lawful. If the receiving institution genuinely requires an authorised note, use the encrypted QR option and the correct category; obtain the required approval and include only the minimum necessary information.
Issue and inspect the PDF. SchoolPRO assigns the certificate number and stores the issue history. Open the downloaded PDF and verify the school identity, pupil fields, dates, reason, destination, conduct, fee status, remarks, QR and signature/stamp areas.
Authorise and deliver. Apply the school's signing/stamping process, record who collected or received the document, and send it only through the approved channel. Retain the issue record; do not create an untracked duplicate in a word processor.
Later actionCorrect procedure
ReprintSearch history by pupil or certificate number and download the stored issue again so the identifier remains consistent.
CorrectionCorrect the source record and follow the authorised cancel/reissue process. Do not silently alter a PDF that has already been issued.
CancellationCancel only with the required permission and reason. Keep the cancelled record for audit; never reuse its certificate number.
Receiving-school verificationMatch the certificate number and visible details. Decode an encrypted QR only inside authorised SchoolPRO access.

Optional encrypted confidential QR

Roles with confidential-create permission may select a category and enter a necessary student-support note, confirm that it is authorised and optionally embed it as an encrypted QR. The payload uses authenticated encryption and is not readable as plain text by an ordinary QR app. A receiving authorised SchoolPRO user can select Decode QR, scan with the camera or paste the SPTC2… payload, and decrypt it inside the application.

!
Use confidential notes sparingly. Include only accurate, lawful and necessary support information. Public remarks belong in the printed fields; never place routine or defamatory commentary in the encrypted channel merely because it is hidden.
Chapter 10.1b

ID Card Engine

Generate professional, tamper-resistant ID cards for students and staff. Premium CR-80 format with holographic security features, watermarks, and ghost photos — what you see in the preview is exactly what prints.

SchoolPRO ID Engine showing Student IDs, selection modes, a searchable pupil list, premium card preview, Download Image and Export PDF controls
Figure 10 · ID Card Engine. Select the population on the left, inspect the live CR-80 preview on the right, then download one image or export a production PDF for the chosen batch.

End-to-end card production workflow

Prepare branding and identity data. In School Setup confirm logo, school name, colours, address and authorised signatory. In Students or Staff confirm spelling, ID/admission number, class/department, photo and status.
Choose the card population. Select Student IDs or Staff IDs, then choose Single, Whole Class/Department, Selected or All. Use search and filters; confirm the selection count before previewing.
Review every selected record. Look for duplicates, inactive people, missing photos, wrong class/department and truncated names. For a bulk job, correct source data first rather than accepting a bad card.
Inspect the WYSIWYG preview. Check the front/back design where applicable, photograph crop, text contrast, serial/verification data, validity date and safe margins. Switch records in the batch to spot-check long and short names.
Run a one-card proof. Download one image or export a small PDF and print it at 100% / actual size. Measure 85.6 × 54 mm, verify colour and readability, and test alignment on the intended card stock or printer tray.
Export the approved batch. Use Download Image for a single high-resolution card or Export PDF for the selected production set. Name the file with population, class/department, session and date.
Print without scaling. In the PDF print dialog choose Actual size / 100%, correct orientation and paper source; disable Fit to page unless the printer workflow specifically requires it. Print one sheet before committing the full batch.
Control issue and replacement. Reconcile printed quantity against the selection, record handover, securely destroy spoiled cards and use Single mode for a replacement so the correct person and current details are used.
i
Blank preview? A blue or empty card surface usually means the selected record has not finished rendering or required identity/branding data is missing. Wait for the preview, select the record again, then verify its photo and school settings before exporting.

Accessing the ID Engine

Navigate to ID Engine from the sidebar under System. The page is divided into two panels: a selection panel on the left and a live preview panel on the right.

Generating ID Cards

Choose between Student IDs and Staff IDs using the tabs at the top of the selection panel. Then choose a generation mode:

ModeDescription
SingleSelect one person from the list. Ideal for new admissions or replacements.
Whole Class / DepartmentGenerate cards for every student in a class or every staff member in a department.
SelectedPick multiple individuals from the list. Useful when generating cards for a specific group.
AllGenerate cards for every active student or staff member. Typically used at the start of a new session.

After selecting records, click Preview. The cards appear in the right panel at actual print size (CR-80 standard: 85.6 x 54mm). Each card shows the school logo, name, motto, address, the person's photo, full name, class/department, ID number, house, serial number, validity date, administrator signature, and security features.

Photos

Click on a person's photo area in the preview to upload or change their photo. Photos are stored in the system and reused across all modules. For best results, use passport-style photographs with a plain background. The system automatically crops and resizes images to fit the card layout.

Security Features

Every ID card generated by SchoolPro includes multiple anti-counterfeiting measures:

🔐 HMAC-Signed Serial Numbers

Each card has a unique serial number (e.g., SP-STU-2026-EEF8D5) generated using a cryptographic hash. Cannot be guessed or replicated.

🌊 Diagonal Watermark

The school name is repeated diagonally across the card body at very low opacity, visible on close inspection.

🪪 Silver Hologram Overlay

A holographic security sticker effect on the photo area with animated rainbow gradient, concentric verification seal, and a moving shine streak.

👤 Ghost Photo

A small, faded circular copy of the person's photo appears in the bottom-right corner of the card — a common security feature on government IDs.

Exporting & Printing

Two export options are available:

Download Image — Exports a single card as a high-resolution PNG file (3x pixel ratio for crisp printing). The download captures the exact preview DOM — what you see is exactly what you get.
Export PDF — Generates an A4 PDF with multiple cards arranged in a printable grid (2 columns x 4 rows per page). Ideal for bulk printing on CR-80 card stock or regular paper to be cut to size.
💡
Branding customisation
ID card colours, logo, school name, motto, and administrator name are automatically pulled from your school settings. Update them in Settings to reflect your school's branding on all generated cards.
Chapter 10.2

Users, Roles & Access

Control who can sign in, which job-based role they inherit, the exact action-level capabilities they receive, and every later access change.

Creating User Accounts

Open Users & Access → User accounts. Create the username, private PIN, full name and normal role. Each person must have an individual account so fees, result changes, attendance corrections, permission edits and other actions are attributed correctly. Deactivate a departed user instead of deleting their history; an administrator can reset a forgotten PIN.

Roles & permissions

The professional permission matrix has three areas: Roles & capabilities, People & assignments and Change history. Create a role from a professional template, a copy of an existing role or a blank role; give it a clear job name/description/colour; then allow only the required view, add, edit, delete, approve, export and specialist actions.

Use Allow row or Clear row for a complete resource, or change individual action cells. Duplicate a role when a department needs a small variation. Reset restores the role baseline. Protected built-in roles cannot be deleted; a custom role can be deleted only when no user depends on it.

Assignments and individual exceptions

Assign each user a normal role first. Individual allow/deny exceptions are available for unusual responsibilities, but they should be rare, documented with a reason and reviewed regularly. The Change History tab searches role, user, action and reason so administrators can explain who changed access and why.

!
Least privilege. Never give a whole role administrative access to solve one missing button. Find the exact capability, grant it to the correct job role or create a tightly scoped exception, then verify the user's sidebar and action buttons.
Chapter 10.3

Reports & Analytics

The Reports module is the intelligence centre of SchoolPro. It aggregates data from every other module into fourteen specialised report views.

Available Report Categories

ReportWhat It Shows
OverviewHigh-level summary: total students, total income, total expenses, and net position for the selected period.
MonthlyMonth-by-month breakdown of income and expenses with trend visualisation.
IncomeAll income streams: fees, book sales, uniform sales, and other income, broken down by category and date.
ExpensesAll expenditure by category (utilities, maintenance, stationery, etc.) with totals and percentages.
Profit & LossTotal income minus total expenses, showing the school's net financial performance for any period.
PayrollStaff salary payments: who was paid, how much, when, and the total payroll cost per month.
By ClassFinancial breakdown per class: total fees expected, total collected, total outstanding, and collection rate percentage.
DebtorsStudents with outstanding balances, ranked by amount owed, with contact details for follow-up.
AttendanceAttendance rates by class and by student, showing average attendance percentages and trends.
AcademicClass averages, subject performance, pass rates, and top-performing students.
InventoryBook and uniform stock levels, sales volumes, and revenue from inventory items.
WelfareBehavioral note summaries, health record statistics, and library loan activity.
ActivitySystem usage patterns: user login frequency, most active modules, and data entry volumes.
ExportExport any dataset as CSV for use in Excel or other spreadsheet applications.

All reports can be filtered by term, session, and date range. Financial reports respect the active term's date boundaries by default but can be overridden to show any custom period. The Export tab allows you to download raw data from any module — students, ledger entries, attendance records, results — as CSV files for further analysis in Excel.

Chapter 10.4

Academic Sessions & Terms

Sessions define the academic year structure. SchoolPro follows the Nigerian format: a session spans two calendar years (e.g. 2025/2026) and contains three terms.

Session Structure

Each session contains exactly three terms:

TermPeriodCalendar Year
1st TermSeptember — DecemberFirst year (e.g. 2025)
2nd TermJanuary — AprilSecond year (e.g. 2026)
3rd TermLate April — JulySecond year (e.g. 2026)

The session does not change when January arrives. If you are in session 2025/2026, it remains 2025/2026 all the way through 3rd Term in July 2026. The session only changes in September when the new academic year begins.

Auto-Detect Feature

Every time you visit the Sessions page, the system checks today's date against the Nigerian academic calendar and determines which session and term should be active. It displays a banner showing its detection result in three possible states:

🟢 Exact Date Match

Today falls within a term's configured start and end dates. The system confirms you are in the correct term.

🔵 Calendar Rule

The session exists but dates may not be set. The system uses calendar rules to identify the correct term and offers to activate it.

🟡 New Session Needed

The calculated session does not exist yet. The system offers to create it with pre-filled dates and activate the correct term — all in one click.

Each term has configurable start and end dates. These dates are used by the attendance system, the report card date range, and the financial reports. Setting accurate term dates ensures all modules produce correct results for the term in question.

Chapter 10.5

Audit Log

Every significant action in SchoolPro is recorded in the Audit Log — who did what, when, and from where.

Investigate an action

The chronological list shows timestamp, user, action label and supporting detail. Search can match either the action or detail, and pagination keeps long histories manageable. Common events include login/logout, registrations and edits, fee structure changes, collections and voids, score changes/finalisation, promotions, session activation, permission changes, backup operations and settings updates.

When investigating, write down the approximate time, affected pupil/staff member, receipt or certificate number and the expected action. Search the most distinctive value, then compare nearby events in sequence. The log is read-only; use the appropriate source page for an authorised correction and expect that correction to create a new event rather than erase the old one.

i
Audit access is permission controlled. An Access Denied message means the signed-in role lacks audit_view; it does not mean the history is missing.
Chapter 10.5b

CBT Security

CBT Security protects admission-number login with server-side device/session controls, a calibrated hall network, optional rotating hall code, exam-screen monitoring and a complete invigilator review trail.

SchoolPRO CBT Security page showing protection score, ready status, identity and device locks, login limits and save button
Figure 11 · CBT Security. A ready banner means the enabled controls have the required configuration. The protection score is a setup indicator—not proof that a live exam has been tested.

Protection Settings

Identity and device lock

Recommended controls are: one registration number on one active device, one active browser tab, safe same-device resume, blocking registration switching on an active device and locking the examination network during an exam. Optional cross-registration reuse reporting records a device used by another student after logout without automatically blocking legitimate reuse.

Set the abandoned-login release time, maximum login attempts, attempt window and lockout time. Use values strict enough to stop guessing but long enough for an invigilator to correct a genuine typing problem.

Hall Zone modes

ModeMeaningRecommended use
OffThe portal can be reached from any network that can see SchoolPRO.Small supervised pilots only.
Calibrated LANStudents must be on an approved hall subnet observed by the server.Normal school CBT hall.
LAN + hall codeRequires the calibrated network and the current rotating code.Highest-stakes examinations.

Connect the main CBT computer to the intended router, enter a calibration name, confirm or correct the subnet, then select Calibrate this network. In LAN + code mode, set code lifetime and wrong-code attempts, create the code shortly before the sitting, and display it only inside the room. Latency is supporting evidence only; a browser cannot reliably measure metres, Wi-Fi signal strength or router BSSID.

Exam behaviour monitoring

Report leaving the exam screen records hidden tabs, duplicate tabs and fullscreen exits. Block and report copy/paste disables clipboard and context-menu actions during the exam. Automatically suspend repeated violations can stop a session after the configured threshold; keep it off during early pilots until you understand normal device behaviour. Set a report-retention period that matches school policy.

Student Logins

Filter sessions by active, suspended, expired, released, submitted or logged-out status; then filter by risk and search registration number, student, device or IP. Each session shows device label, current/initial subnet, selected exam, login/last-seen times, risk score and violations. Use Restore for a reviewed suspended student and Release login when the genuine student must move to another device.

Security Reports

Reports cover second-device or second-tab login, device registration switching, cross-registration reuse, outside-hall login, invalid hall code, network change during an exam, browser identity change, leaving the exam screen, copy/paste attempt, multiple-tab detection and rate limiting. Filter unresolved reports first, inspect the student/device/IP/time context, write a resolution note, then choose Mark resolved. Resolution closes the review item without deleting the evidence.

Live-exam readiness drill

Calibrate the exact hall router and verify the student address/QR code from a student device.
Use two different students and two devices; confirm the correct exam list and permitted same-device resume.
Attempt a second device, second tab, wrong hall code, Wi-Fi switch, copy/paste and leaving the exam screen; confirm each expected block/report.
Practise Restore and Release Login so invigilators can recover a genuine student quickly.
Reset test sessions/reports as policy allows, create the live hall code, brief invigilators and keep a manual attendance list.
Chapter 10.6

Settings

The Settings page is the control panel for the entire system. Its eleven tabs govern branding, recovery, money, academics, attendance, cameras, face recognition, AI, network sharing and licensing.

SchoolPRO Settings AI tab showing exam style, difficulty distribution and textbook coverage defaults for generated questions
Figure 12 · Academic AI defaults. These choices become the starting policy for new question-generation jobs. Select an exam style, a difficulty mix and the content scope deliberately; teachers can still review or adjust a specific job before generation.

Settings Tabs

School Setup

Configure your school's name, motto, address, phone, email, type, head teacher details, logo, brand colours, registration number, year of establishment and receipt footer text. Upload the principal signature and official school stamp so approved report cards and certificates can use the correct assets. All of this information flows into printed documents.

Backup & Restore

Download a complete local JSON backup, connect the configured Google Drive account for an off-device copy, preview an uploaded backup, and restore only after confirming its school, version and record counts. Covered in detail in the next chapter.

Grading

Define the grading scale (grade boundaries, grade letters, remarks, and grade point values), the score breakdown structure (CA components and their maximum marks), and the passmark. Changes here affect how all future results are graded and how report cards display performance data.

Currency

Select the active currency from twelve options: Nigerian Naira (₦), Ghanaian Cedi (GH₵), Kenyan Shilling (KSh), South African Rand (R), West African CFA (CFA), US Dollar ($), British Pound (£), Tanzanian Shilling (TSh), Ugandan Shilling (USh), Rwandan Franc (FRw), Central African CFA (FCFA), and Botswana Pula (P). The selected currency symbol appears throughout the system — on dashboards, receipts, reports, and all financial displays.

Terms

Quick access to manage term dates for the current session without navigating to the full Sessions page.

Attendance

Configure attendance-related settings such as the working days per week and any attendance thresholds the school uses.

Cameras

Register and test camera sources used by attendance stations, including station identity/location and the device source. Confirm the preview and permissions before locking a camera to its real installation point.

Faces

Inspect recognition availability and face configuration, review model/provider state, and manage settings used by the face gallery and recognition station. Operational pupil/staff enrolment remains on Face Attendance.

AI

Configure the Academic AI provider, credentials, generation defaults, question style/difficulty controls and OCR behaviour for scanned textbooks. Test provider connectivity before a large whole-book job. Provider keys are sensitive and should be visible only to authorised administrators.

Network

View network sharing information. SchoolPro can be accessed from other devices on the same WiFi network — for example, a teacher marking attendance on their phone. This tab shows the IP addresses and URLs that other devices can use to connect.

License

View your current license status, including the license key, school name, machine ID, and activation date. You can also enter a new license key if you receive an updated one.

Detailed AI configuration workflow

Choose and test the provider. Enter the authorised provider/model configuration, save it, then run the connectivity/health test. Do not start a whole-book job until the test succeeds and the expected model is shown.
Select the default exam style. Use General/School for normal internal assessment, or select WAEC/NECO, JAMB/UTME, Cambridge/IGCSE, IELTS, TOEFL iBT or Professional Certification only when its structure matches the intended paper.
Set the difficulty distribution. Choose Practice, Balanced, Exam Standard, WAEC/NECO Hard or Custom. For Custom, ensure Easy + Medium + Hard equals 100%; save only a defensible mix for the target class.
Define what generation may cover. Choose the whole textbook, selected chapters, the current term syllabus or topics the class failed previously. Syllabus and performance-based scopes depend on complete source records; otherwise use an explicit book/chapter scope.
Set volume and reuse controls. Configure questions per chapter and any rule that avoids recently used questions. Balance variety against teacher review capacity—hundreds of drafts are not useful if nobody can validate them.
Configure OCR only when needed. Text PDFs should use direct extraction. For scanned pages, enable the installed OCR path/language, test a representative chapter and check names, formulae, tables and punctuation before wider ingestion.
Save, pilot and review. Save defaults, generate one short chapter in Academic AI/Library, inspect factual accuracy, level, answer structure and coverage, then adjust the defaults before any full-book run.

How to choose each AI default

ControlChoose it whenVerification
Exam styleThe target assessment genuinely follows that institution or certification format.Check option count, mark style, timing and language against an approved sample paper.
Difficulty presetYou need a repeatable easy/medium/hard balance across new jobs.Inspect a pilot set; difficulty labels are guidance, not proof of actual challenge.
Whole textbookThe paper is cumulative and every chapter has been taught or approved for assessment.Review chapter coverage so long chapters do not hide missing smaller topics.
Selected chaptersA teacher can name exactly what has been taught.Compare the selection with the scheme of work before generation.
Term syllabusThe current term syllabus is complete and mapped to book material.Open the syllabus first and resolve blank or unmatched topics.
Failed topicsA completed earlier exam has reliable topic tags and submissions.Check the analytics sample size and exclude ambiguous/bad questions.
!
AI settings do not approve content. Every generated question or teaching material remains a draft until a qualified teacher verifies the source, answer, difficulty, curriculum fit, language and any image rights.
Chapter 10.7

Backup & Restore

Your school's data is the most valuable thing in SchoolPro. Regular backups ensure that even if your computer is lost, stolen, or damaged, your data survives.

Local Backup (Download JSON)

Navigate to Settings → Backup & Restore. Click Download Full Backup to save a complete JSON file containing every record in your database — students, staff, guardians, ledger entries, results, attendance, everything. The file is named with your school name and timestamp (e.g. "SchoolPro-Backup-BrightFuture-20260323.json"). Save this file to a USB drive, external hard disk, or cloud storage folder.

!
Backup Weekly — At Minimum If your computer's hard drive fails and you have not backed up, all your school data is lost permanently. We strongly recommend backing up at least once a week, and saving copies to at least two different locations (e.g. USB drive and cloud storage).

Google Drive Backup

If Drive has been configured for the installation, connect the authorised school Google account from Settings → Backup & Restore, complete consent in the browser tab, and choose Backup to Drive Now. Drive is the off-device copy; keep a local USB/external-drive copy as well. Only administrators should configure the Google client details or disconnect the school account.

Restoring from Backup

To restore data from a backup file, click Choose Backup File in the Restore section, select your JSON backup file, and confirm. The system will show a preview of what the backup contains (number of students, receipts, results, etc.) before you confirm the restore. Restoring replaces your current data with the backup data — this is a destructive operation and should only be done when recovering from data loss or migrating to a new computer.

Restore Replaces Everything When you restore from a backup, all current data is replaced with the backup data. Any records created after the backup was taken will be lost. Always create a fresh backup before restoring, just in case.

Chapter 11

Troubleshooting & FAQ

Common issues and their solutions. If your problem is not listed here, contact SchoolPro support.

Frequently Asked Questions

The system shows "Backend offline" on the Dashboard

This means the SchoolPro backend server is not running. Ensure the application was started correctly. If you are running SchoolPro from the desktop shortcut, close and restart it. If the problem persists, restart your computer and try again. The frontend (what you see) and the backend (the data engine) must both be running for the system to work.

I forgot the admin password

Contact SchoolPro support. They can guide you through resetting the password using a backend recovery tool. For security, this cannot be done through the interface alone.

Receipt printing is not working

SchoolPro generates receipts as HTML pages that open in a new browser tab with a print dialog. Ensure that pop-up blockers are not preventing the new tab from opening. If using a thermal printer, ensure it is connected, powered on, and set as the default printer in your computer's settings. For 58mm printers, you may need to adjust the paper size in your printer preferences.

Students appear in the wrong class after promotion

This usually means the destination class was incorrectly selected during promotion. Navigate to the Students page, find the affected students, and manually change their class assignment. For future promotions, double-check the class grade levels to ensure they form a correct sequence.

I cannot see certain menu items in the sidebar

Your user role determines which modules you can access. If you are a Teacher, you will not see financial modules. Ask your Administrator to verify your role, or to change it if you need additional access.

Report cards show "No results" for some students

This means results have not been entered for those students in the current term. Navigate to the Results page, select the relevant class and subject, and enter the missing scores. Report cards only display data that has been entered — they cannot show what does not exist.

The Ledger shows an incorrect balance for a student

Student balances are calculated from two sources: what they owe (from Fee Structures) and what they have paid (from Ledger entries). Check that the Fee Structure for their class is correct and that all payments have been recorded. If a payment was recorded in error, void the receipt rather than deleting it — voiding creates a proper reversal entry and maintains the audit trail.

How do I transfer SchoolPro to a new computer?

First, create a full backup on your old computer (Settings → Backup → Download Full Backup). Install SchoolPro on the new computer and activate your license (you may need to contact support for a license transfer if it is tied to the old machine). Once SchoolPro is running on the new computer, restore from your backup file. All your data will be transferred.

Can multiple people use SchoolPro at the same time?

Yes. SchoolPro runs on your main computer and is accessible from other devices on the same WiFi network. The Settings → Network tab shows the URL that other devices can use. The teacher can mark attendance on their phone while the bursar collects fees on the main computer. Each person logs in with their own user account.

What happens when NEPA takes light (power outage)?

SchoolPro saves data to the database immediately when you click Save. Any data you saved before the power went out is safe. Unsaved data in an open form will be lost, so it is good practice to save frequently. When power returns and you restart SchoolPro, everything will be exactly as you left it — including which page you were on.

Does SchoolPro need internet to work?

Not for core daily operations. Student management, fee collection, local receipt printing, results, report cards, attendance and financial records use the local installation. Internet is required when a configured feature talks to an outside service—for example online AI generation, Google Drive backup, licensing verification, downloads or software updates. Prepare local fallbacks before a network outage and never assume an unfinished online AI job has completed until its status confirms it.

How do I handle a new academic session?

When September arrives and a new academic year begins, navigate to the Sessions page. The Auto-Detect system will notice that a new session is needed based on the current date and display a prominently coloured banner offering to create it. Click "Create and Activate" and the new session with three terms is created automatically, with Nigerian academic calendar dates pre-filled and the 1st Term activated and ready for use. Fee structures from the previous session are automatically copied over to the new term, so you only need to adjust amounts that have changed rather than rebuilding everything from scratch. See Chapter 14 for the complete new-session checklist.

Can I use SchoolPro for multiple school branches?

Each SchoolPro installation is designed for a single school on a single computer. If you operate multiple school branches, each branch would need its own license and installation. The data for each branch is completely independent — each school has its own students, staff, fees, results, and financial records. This actually works in your favour because each branch has complete control over its own data without any dependency on a central server or internet connection between branches.

What if I accidentally void a receipt or enter the wrong amount?

SchoolPro uses an append-only ledger system, which means entries are never truly deleted. If you void a receipt, the original entry remains in the ledger (marked as voided) and a reversal entry is created to offset it. This preserves the complete audit trail. If you entered the wrong amount for a payment, void the incorrect receipt and create a new payment with the correct amount. The student's balance will reflect the correction automatically. The Audit Log will show exactly what happened, when, and who did it — providing complete transparency and accountability.

How many students can SchoolPro handle?

SchoolPro uses a high-performance SQLite database that can comfortably handle thousands of students. The student list uses server-side pagination, loading only the records you need at any given time, so the interface remains fast regardless of how many students are enrolled. Schools with 50 students and schools with 5,000 students will both experience smooth performance. The database file grows as you add more records, but even with years of data accumulation, it rarely exceeds a few hundred megabytes — trivial for any modern computer. If your school has been running for many years and the database grows very large, you can archive old sessions' data using the backup and restore system.

Can I customise the report card design?

The report card template uses your school's logo, name, motto, address, and brand colours as configured in Settings → School Setup. The overall layout — including the results table format, grading scale, performance bars, and comment sections — is professionally designed and consistent across all report cards. The grading scale, score breakdown components, and passmark threshold are fully customisable in Settings → Grading. The auto-generated teacher and head teacher comments adapt to each student's performance data. While the visual template itself is not modifiable through the interface (to ensure professional consistency), the content it displays is entirely driven by your school's configuration.

What happens to data when a student is archived?

When a student moves to the Archives (through graduation, transfer, withdrawal, or promotion decision), all their data is preserved completely. Their academic results, attendance records, fee payment history, behavioral notes, health records, and every other record remains intact in the database. The only change is their status — they no longer appear in the active student list, active class rosters, or current-term fee calculations. You can search for any archived student at any time and view their complete history. If needed, an administrator can restore an archived student back to active status, which returns them to the main student list with all their data intact. Permanently deleting an archived student is only possible if they have no financial records, which prevents the loss of accounting data.

How do I export data to Excel?

Navigate to Reports → Export tab. Here you can download data from any module as CSV files, which open directly in Microsoft Excel, Google Sheets, or any spreadsheet application. Available exports include the complete student list, staff list, ledger transactions, attendance records, results data, and more. CSV exports include all fields for each record, giving you maximum flexibility for analysis, mail merge, government reporting, or any other purpose. Individual modules also offer export options — for example, the Students page has an "Export CSV" button that downloads the current view's data.

Understanding the Financial System

SchoolPro's financial architecture follows established accounting principles adapted for the school environment. Understanding how the pieces fit together helps you use the system effectively and troubleshoot any issues that arise.

The financial system has four layers. The first layer is Fee Structures, which define what is owed. Each class has a set of fee items with specific amounts, and these are tied to the current term. When you view a student's balance, the system calculates the total of all mandatory fee items for their class in the current term — this is what they owe.

The second layer is the Ledger, which records what has happened. Every financial transaction — fee payment, book sale, uniform sale, other income, expense, salary payment — creates a ledger entry. Each entry has a date, amount, type, description, and optional student link. The ledger is append-only: entries are never modified or deleted, only added. Voiding a transaction adds a reversal entry rather than removing the original.

The third layer is Receipts, which are the physical proof of transactions. Each fee payment generates a receipt with a unique sequential number. Receipts can be printed in three formats (58mm thermal, 80mm thermal, and A4 PDF) and reprinted at any time. Voided receipts remain in the system marked as void, and the audit trail records who voided them and when.

The fourth layer is Reports, which aggregate everything into actionable intelligence. The Cashbook shows daily totals, the Profit and Loss report shows the term's net result, the Debtors report shows outstanding balances, and the Class-by-Class report shows collection rates. All reports draw from the same ledger data, ensuring consistency across all views.

When these four layers are working together correctly, the system is self-consistent: the sum of all income ledger entries matches the sum shown in the Income report, the sum of all expense ledger entries matches the Expenses report, and each student's outstanding balance equals their total fees owed minus their total payments made. If any of these do not match, it indicates a data entry issue that should be investigated through the Audit Log.

Auto-Logout & Session Security

SchoolPro automatically logs you out after 30 minutes of inactivity (no mouse movement, keyboard input, or scrolling). This protects your data if you walk away from the computer. When this happens, you will see a "Session expired" message and be returned to the login screen. Simply log in again to continue — you will be taken back to the page you were on.

Your login session is stored in the browser's session storage, which means it persists across page reloads within the same browser tab but is cleared when you close the browser entirely. This is a security feature — closing the browser logs you out.

Data Safety Best Practices

Back up weekly — Download a full backup every Friday and save it to a USB drive. Keep at least two recent backups at all times.
Use individual accounts — Create a separate user account for every staff member who uses SchoolPro. Never share the admin password.
Save frequently — Click Save after entering data, especially during long entry sessions like results or bulk fee collection.
Keep your computer secure — Use a Windows password, keep the computer in a secure location, and do not install untrusted software that could damage your database.
Use a UPS or inverter — A small uninterruptible power supply protects against data corruption from sudden power cuts during write operations.

Chapter 12

Daily Operations Workflow

This chapter describes the typical day-to-day usage patterns for each staff role. Following these workflows ensures data is entered consistently and nothing falls through the cracks.

Administrator / Proprietor — Daily Routine

The administrator or school proprietor is typically the first person to check SchoolPro each morning and the last to review it before closing. Your daily workflow should begin with the Dashboard, which provides an at-a-glance summary of your school's current state: total active students, income collected today and this term, expenses recorded, and the net financial position. Pay attention to any unusual numbers — a sudden drop in student count might indicate a data entry error, while an unexpected spike in expenses could signal an issue worth investigating.

After reviewing the Dashboard, check the Cashbook to see yesterday's financial activity if you were away. The Cashbook shows every Naira that came in (fees, book sales, uniform sales, other income) and every Naira that went out (expenses, salaries) for any given day. This is your daily financial heartbeat. Compare the digital totals with the physical cash count or bank statement to verify accuracy.

If your school is currently in the middle of a fee collection period (typically the first few weeks of each term), review the Debtors list through the Fees page. This shows you which students still have outstanding balances, how much they owe, and which classes have the lowest collection rates. Use this information to guide follow-up communications with parents. Many administrators print the debtor list weekly and share it with class teachers for targeted follow-up during parent drop-off and pick-up times.

At the end of each day, consider glancing at the Audit Log to verify that all activities recorded match expectations. If a staff member collected fees, you should see corresponding ledger entries. If attendance was marked, you should see attendance records for the day. The Audit Log is your safety net for ensuring the system is being used correctly by all staff. Any discrepancy between what should have happened and what the audit log shows deserves investigation.

Weekly, run the Profit and Loss report from the Reports page to track the school's financial trajectory for the term. Monthly, review the class-by-class fee collection report to identify classes with low payment rates and plan targeted follow-up campaigns. These routine check-ins prevent small issues from becoming large problems.

Bursar / Accountant — Daily Routine

The bursar's day revolves around the financial modules. Begin by navigating to the Fees page. Parents typically arrive in the morning to make payments before school begins or in the afternoon at pickup time. For each parent who comes to pay, search for the student by name or admission number, click "Collect Payment," enter the amount, select the payment method (Cash, Bank Transfer, POS, or Cheque), and confirm. The system immediately generates a receipt which can be printed for the parent.

For thermal printer users, the receipt prints on a small slip that can be torn off and handed to the parent. For A4 printing, the receipt opens in a new tab where you click the browser's Print button. Many bursars prefer to batch-print receipts at the end of each payment session rather than printing one at a time — the Receipts page allows you to view and reprint any receipt from the day. Note that SchoolPro displays amounts both in figures and in words on receipts (e.g. "₦80,000 — Eighty Thousand Naira Only") which is a standard accounting requirement for Nigerian schools.

Throughout the day, record any expenses as they occur. Did the school buy diesel for the generator? Record it in Expenses with the amount, "Utilities" category, and payment method. Did a parent buy textbooks? Process the sale through the Books module — search for the student, select the books, and confirm. The sale is recorded in the ledger automatically. Did a parent purchase uniforms? Process through the Uniforms module in the same manner. Each of these transactions creates a ledger entry, so the school's complete financial picture updates in real time.

If the school receives money that is not a fee payment, book sale, or uniform sale — such as a donation, facility rental payment, or event registration fee — record it in the Other Income module. This ensures all revenue streams are captured and appear in the financial reports.

Before leaving for the day, the bursar should review the Cashbook to ensure the day's totals match the physical cash in hand plus any POS or bank transfer records. This daily reconciliation prevents discrepancies from accumulating over time. If numbers do not match, check the Ledger for the day's transactions to identify any missing or incorrect entries. Common causes of discrepancies include a payment that was collected but not entered, an expense that was paid but not recorded, or a data entry error in the amount.

At the end of each month, the bursar should process salary payments for all staff through the Salaries module. Select each staff member, confirm the amount (adjusting for any bonuses or deductions), and process the payment. Each salary payment is recorded in the ledger and appears in the Payroll report, which provides a complete picture of the school's staff costs.

Secretary / Receptionist — Daily Routine

The secretary handles the widest variety of daily tasks. Morning duties typically include marking attendance for early arrivals (if the school does not use class-by-class teacher marking), registering any new students who arrive for admission, and updating guardian contact information as parents call or visit with changes.

When a new student arrives for registration, navigate to Students, click Add Student, and fill in all required fields. The admission number should follow your school's sequential format — for example, ADM/2026/001 for the first student admitted in 2026. Ensure you enter the admission number consistently, as this is the primary identifier used across all modules. Link the student to an existing guardian or create a new guardian record. Assign the student to the correct class. Once saved, the student immediately appears in the class roster for attendance, results, and fee purposes. Their outstanding fee balance is calculated automatically based on the fee structure for their class.

If a parent requests a transfer certificate for a leaving student, navigate to the Transfer Cert page, search for the student, fill in the reason for leaving and the destination school name (if known), and generate the certificate. The system produces a formal document with the school's letterhead, the student's complete academic history, conduct assessment, and fees clearance status. Print the certificate, have it signed by the head teacher, add the school stamp, and hand it to the parent.

The secretary may also handle fee collection during peak times, process book and uniform sales when the bursar is unavailable, issue library books, and record any incidents in the behavioral notes or health records modules. If a student visits the sick bay, the secretary often records the visit in Health Records — the student's name, the nature of the complaint, any treatment given, whether the parents were called, and whether the student was sent home.

For the library, when a student borrows or returns a book, process it through the Library module. When parents call to update their phone number or address, update the guardian record immediately. When a teacher reports a behavioral incident, the secretary may be asked to record it in the Behavioral Notes module. The breadth of the secretary role is why SchoolPro gives this user type access to most modules — they are the operational backbone of the school and need flexibility to handle whatever task arises.

Teacher — Daily Routine

Teachers interact with SchoolPro primarily for attendance marking and results entry. Each morning, the class teacher should navigate to the Attendance page, select their class, and mark each student as Present, Absent, Late, or Excused. This takes roughly two to three minutes for a class of thirty students. The status buttons toggle with each click, cycling through the options. Green means Present, Red means Absent, Amber means Late, and Blue means Excused. Save the attendance when all students are marked. The attendance data immediately contributes to the term's attendance summary that will appear on each student's report card.

During exam periods or after continuous assessment tests, teachers use the Results page to enter scores. Select your class, then your subject from the dropdown, and enter scores in the broadsheet grid. The grid shows each student's name vertically and the score components horizontally (CA1, CA2, CA3, Assignment, Exam). The system validates each entry against the maximum marks for that component — you cannot enter 15 for a CA1 that has a maximum of 10, and the cell will reject the invalid value. Totals and percentages calculate automatically as you type, giving you immediate feedback on each student's performance.

Save your work frequently, especially during long entry sessions. If the power goes out or the browser crashes, any unsaved data will be lost. A good practice is to save after entering scores for every five to ten students. For schools with many subjects and classes, teachers should enter results as each assessment is completed rather than waiting until the end of term. This spreads the workload and makes the end-of-term rush much more manageable.

Teachers with access to Behavioral Notes can record notable student behaviour throughout the term. A student who performed exceptionally well in class? Record a Positive note. A disciplinary issue? Record a Negative note with a clear description of what happened. These records build over time to create a comprehensive picture of each student's conduct and character, which can be invaluable during parent-teacher meetings, report card preparation, and any disciplinary hearings.

Librarian — Daily Routine

The librarian's workflow centres on the Library module. When students come to borrow books during library periods or break time, search for the student by name or admission number, select the book from the catalogue, set the due date (typically two weeks from the loan date), and confirm. The system deducts one from the book's available copies and creates a loan record. When students return books, find the loan record in the Loans tab and mark it as returned. The available count increments back up automatically.

At the start of each day, check for overdue loans — these are highlighted in red in the Loans list. Follow up with the relevant students or their class teachers to remind them about returning the books. Some librarians keep a printed list of overdue loans on their desk for quick reference when students visit the library.

When new books arrive — whether purchased, donated, or received from the government — add them to the catalogue in the Books tab with the title, author, ISBN, category (Textbook, Fiction, Reference, etc.), and the number of copies received. If you receive additional copies of an existing book, update the total copies count rather than creating a duplicate entry. Keeping the catalogue accurate ensures that available copy counts are always correct.

Chapter 13

End-of-Term Procedures

The end of each term is the busiest period for data in SchoolPro. Results must be finalised, report cards generated, debtors followed up, and financial reports prepared. This chapter provides a step-by-step checklist for a smooth term closure.

Two Weeks Before Term Ends

Remind teachers to complete CA scores — All continuous assessment marks (CA1, CA2, CA3, Assignment) should be entered in the Results module before exams begin. Run a quick check by visiting the Results page and scanning each class and subject to ensure all scores are filled in. Empty cells at this stage will result in incomplete report cards. Send a reminder to all teachers with a deadline — for example, "All CA scores must be entered by Friday."
Verify attendance records — Check the Attendance reports to confirm that attendance has been marked consistently throughout the term. Days where attendance was not marked will show as gaps. It is difficult to retroactively reconstruct accurate attendance data, so identify and fill any gaps now while memories are still fresh. The class teachers can help recall which students were present on specific days.
Follow up on debtors — Navigate to Fees and review the Debtors tab. Generate a debtor list by class and share it with class teachers for parent follow-up. Some schools send SMS reminders to parents with outstanding balances — having the accurate amount from SchoolPro makes these communications precise and professional.
Record any outstanding expenses — Ensure all expenses incurred during the term are recorded. Check with the procurement officer, maintenance team, and administrative staff for any unrecorded purchases or payments.

Exam Week

Enter exam scores promptly — As each subject's exam is completed and marked, teachers should enter the Exam scores in the Results module immediately. Do not wait until all exams are finished — enter them paper by paper, subject by subject, to spread the workload and catch errors early. If a teacher discovers a scoring error after entering results, they can simply return to the Results page and edit the affected cells.
Spot-check results — Administrators or the academic head should sample a few classes and subjects to verify that scores look reasonable. Common issues include: all zeros in a column (teacher may have forgotten to enter scores), scores exceeding the maximum (data entry error), or identical scores for every student (copy-paste error). Catching these issues before report cards are printed saves the embarrassment of distributing incorrect report cards to parents.

After Exams — Report Card Generation

Navigate to Report Cards — Select each class one by one and review the generated report cards. The system automatically calculates totals, percentages, grades, and class positions. It also generates teacher comments based on the student's performance. Check that grades are calculating correctly (verify a few manually), positions are ranking correctly (1st place should have the highest average), and the auto-generated teacher comments make sense and read naturally.
Export class-by-class PDFs — For each class, click "Export Class" to generate a multi-page PDF of all report cards in that class. Save these files with descriptive names (e.g. "ReportCards-Primary3-1stTerm-2025-2026.pdf"). You can also export a single student's report card by clicking the PDF icon on their individual card, which is useful when a parent requests a replacement copy.
Print and distribute — If your school prints report cards in-house, use the A4 print option. Each report card is designed to fit on one A4 page with colour-coded performance indicators, the school logo, and a professional layout. If you use an external printing service, you can share the PDF files directly. Some schools print only the report cards for students who have cleared their fees, using the debtors list to identify and exclude students with outstanding balances.

Financial Closing

Record all final expenses — Ensure every expense for the term has been entered, including end-of-term purchases, event costs, closing party expenses, and any outstanding vendor payments. The goal is to have a complete financial picture of the term.
Process final salaries — If staff salaries for the last month of the term have not yet been recorded, process them through the Salaries module. Some schools pay a 13th-month bonus at the end of the year — record this as a separate salary payment with a note indicating it is a bonus.
Generate financial reports — Navigate to Reports and review the Profit and Loss report for the term. This shows total income from all sources minus total expenditure from all categories, giving you the term's net financial result. Also review the Income report (to see which revenue streams performed well), the Expenses report (to identify areas of high spending), and the Class-by-Class report (to see which classes have the highest and lowest fee collection rates). Save or print these reports for school management and board meetings.
Back up your data — This is critically important at term end. Go to Settings → Backup and Restore and download a full backup. Save it to at least two separate physical locations — for example, a USB drive that you keep at home and a cloud storage service like Google Drive or Dropbox. Label the file clearly with the term and session. This backup captures the complete state of your school's data at the end of the term and is your insurance against any future data loss.
Term-End Backup This is the most important backup of the term. It captures the complete state of your school's data including all results, generated report cards, financial records, and attendance summaries for the entire term. Guard this backup file carefully — it is irreplaceable.

End of 3rd Term — Additional Steps

At the end of 3rd Term (July), you have additional responsibilities beyond the normal term-end process. This is when the academic year concludes and students must be promoted to the next class for the coming session.

Execute promotions — Navigate to the Promotions page. Work through each class from the highest to the lowest. For each class, use Auto-Decide to generate promotion recommendations based on academic performance, review each student's decision, adjust any that need changing, and click Execute. Students who pass are promoted to the next class, students who fail repeat their current class, and final-year students are graduated to the Archives.
Verify class rosters — After promotions, check each class's student count to ensure it looks correct. A common issue is orphaned students who were missed during promotion — they will still appear in their old class. Navigate through each class in the Students page and verify the list matches your expectations.
Prepare for next session — While the school is on holiday, plan your fee structure updates, any changes to subjects or classes, and new staff user accounts that will be needed. This preparation makes the September startup much smoother.
Chapter 14

Starting a New Academic Session

When September arrives and a new academic year begins, follow these procedures to set up SchoolPro for the new session smoothly and efficiently.

Before School Resumes

Create the new session — Go to the Sessions page. The Auto-Detect feature will recognise that a new session is needed based on today's date and display a banner offering to create it. Click "Create and Activate" to set up the new session (e.g. 2026/2027) with three terms and pre-filled dates based on the Nigerian academic calendar. The 1st Term will be activated automatically.
Review fee structures — Fee structures from the previous session are automatically copied to the new term. Navigate to Fee Setup to review and adjust amounts. If school fees have increased, update the amounts for each class. If new fee items have been introduced, add them. If any items are discontinued, remove them. Accurate fee structures must be in place before the first parent comes to pay.
Create accounts for new staff — If new teachers or administrative staff have joined, create their user accounts in the Users page. Assign the appropriate role — Teacher, Secretary, Bursar, or other — and provide them with their login credentials. Brief them on how to use SchoolPro for their specific tasks.
Update school settings — If anything about the school has changed (new head teacher, updated phone number, revised motto), update it in Settings → School Setup so that all new documents reflect the current information.

First Week of the New Session

Register new students — As new admissions arrive, register each one through the Students page. Create their guardian records, assign them to classes, and enter as much biographical data as possible. For schools with large intake numbers, prepare a CSV file in advance with all new student data and use bulk import to save time.
Begin fee collection — Parents typically pay fees during the first week. Process each payment through the Fees page — the system calculates what each student owes based on their class's fee structure and tracks payments against this amount. Print receipts for parents immediately or batch-print at the end of each day.
Start attendance tracking — From the very first day, have every class teacher mark attendance. Consistent tracking from day one gives you accurate records for the entire term. Late students should be marked as Late, not Present, to maintain data accuracy.
Verify class rosters — After promotions and new admissions, review each class's student list to ensure everyone is correctly assigned. Look for students who should have been promoted but were missed, or new students who were assigned to the wrong class.
Fully Operational By the end of the first week, your new session should be running smoothly: session and term are active, classes are populated, fee structures are defined, attendance is being marked daily, and fee collection is underway. The remaining modules — results, report cards, and promotions — come into play as the term progresses.
Chapter 15

Multi-Device Network Access

SchoolPro runs on your main computer but can be accessed from other devices on the same WiFi network — tablets, phones, and other computers — allowing multiple staff members to work simultaneously.

How Network Access Works

When SchoolPro starts, it makes the main computer available on the local network. Any authorised device connected to the same router can open the exact address shown in Settings → Network (for example http://192.168.1.100:8741; the address and port can differ). Do not copy an address from this guide—use the one SchoolPRO reports on the current computer.

Each person accessing SchoolPro from a different device must log in with their own user account. This means the teacher can be marking attendance on their phone in the classroom, the bursar can be collecting fees on a tablet at the front desk, and the administrator can be reviewing reports on the main computer in the office — all at the same time, all seeing and modifying the same central data. When the teacher saves attendance, the administrator can see it immediately in the reports. When the bursar collects a fee, the ledger updates for everyone.

Camera Access for Face Attendance

If you want to use Phone/Face Attendance from a phone or tablet, the page must be a secure browser context. Camera access works on the main computer's localhost address, but a phone using a plain http://192.168… address may be blocked. Use the HTTPS address shown by SchoolPRO when available, accept the school's local certificate only when you recognise the main computer, and allow camera permission. If SchoolPRO reports that it could not create HTTPS, configure the secure network/certificate prerequisite before relying on phone cameras; ordinary non-camera pages can still work over the local HTTP address.

Practical Tips

Position your WiFi router centrally in the school building for the widest possible coverage. The main computer running SchoolPro should ideally have a wired ethernet connection to the router for maximum reliability, while satellite devices (phones, tablets) connect via WiFi. SchoolPro uses minimal bandwidth — the data transmitted is just text and small numbers — so even a basic WiFi connection is more than sufficient.

The main computer must remain powered on and running SchoolPro for other devices to connect. If it shuts down due to a power outage, all connected devices lose access until it restarts. A small UPS (uninterruptible power supply) or inverter dedicated to the main computer is a worthwhile investment that costs less than a week's worth of generator diesel and protects both your data and your multi-device access.


Appendix

Quick Reference

Complete Module Map

SchoolPro Module Architecture

People
Students · Registration · Staff · Guardians · Archives
Academic
Classes · Subjects · Results · Report Cards · Promotions · Exams/CBT · Academic AI · Academic Library · Timetable
Finance
Fee Setup · Fees · Books · Uniforms · Other Income · Expenses · Salaries · Debtors · Cashbook · Ledger · Receipts
Operations
Attendance · Face Attendance
Welfare
Behavioral Notes · Health Records · Events · Library
System
Transfer Cert · Users & Access · ID Engine · Reports · Sessions · Audit Log · CBT Security · Settings
Dedicated portals
Student CBT Portal · Phone Attendance

Default Score Breakdown

ComponentLabelMaximum Marks
CA11st Continuous Assessment10
CA22nd Continuous Assessment10
CA33rd Continuous Assessment10
AssignmentAssignment / Project10
ExamEnd-of-Term Examination60
Total100

Default Grading Scale

Score RangeGradeRemarkGrade Point
70 — 100AExcellent5
60 — 69BVery Good4
50 — 59CGood3
45 — 49DFair2
40 — 44EPass1
0 — 39FFail0

Nigerian Academic Calendar Reference

MonthTermSession
September — December1st TermCurrentYear / NextYear
January — April2nd TermPreviousYear / CurrentYear
May — July3rd TermPreviousYear / CurrentYear
AugustVacationPreparing for next session

Example: In March 2026, you are in 2nd Term of the 2025/2026 session. In October 2026, you are in 1st Term of the 2026/2027 session.

Supported Currencies

CodeSymbolName
NGNNigerian Naira
GHSGH₵Ghanaian Cedi
KESKShKenyan Shilling
ZARRSouth African Rand
XOFCFAWest African CFA
USD$US Dollar
GBP£British Pound
TZSTShTanzanian Shilling
UGXUShUgandan Shilling
RWFFRwRwandan Franc
XAFFCFACentral African CFA
BWPPBotswana Pula

Glossary of Terms

TermDefinition
SessionA complete academic year spanning two calendar years (e.g. 2025/2026). Each session contains three terms. In the Nigerian system, the session begins in September and ends in July of the following year.
TermOne of three academic periods within a session. 1st Term runs from September to December, 2nd Term from January to April, and 3rd Term from late April to July. Each term has configurable start and end dates.
Admission NumberA unique identifier assigned to each student at the time of registration. This number follows the student throughout their entire time at the school and is used across all modules — fees, results, attendance, and reports. Common formats include ADM/2025/001 or simply sequential numbers like 001, 002, 003.
LedgerThe master financial record containing every monetary transaction. The ledger is append-only — entries cannot be modified or deleted, only voided (which creates a reversal entry). This ensures a complete and unalterable financial history.
Fee StructureThe defined set of fee items and amounts for a specific class in a specific term. Fee structures determine how much each student owes and are the basis for calculating outstanding balances.
BroadsheetA tabular view of all students' results for a particular class and subject, displayed in a spreadsheet-like grid with students as rows and score components as columns. This is the primary interface for entering and viewing academic results.
CA (Continuous Assessment)Ongoing assessment scores given throughout the term, as opposed to the end-of-term examination. SchoolPro supports up to three CA scores plus an assignment score, each with a configurable maximum mark.
PassmarkThe minimum percentage a student must achieve to be considered as having passed a subject. The default is 40%. This value is used by the auto-grading system and the promotions auto-decide feature.
VoidingThe process of cancelling a receipt or transaction without deleting it. Voiding creates a reversal entry in the ledger that offsets the original transaction, maintaining the complete audit trail while correcting the financial balance.
Audit LogA chronological, read-only record of every significant action performed in the system. Each entry records who performed the action, what they did, when they did it, and relevant details. The audit log cannot be modified or deleted by any user.
ArchivesThe storage area for non-active students — those who have graduated, transferred, or withdrawn. Archived students retain all their historical data and can be restored to active status if needed.
Grade LevelA numeric value assigned to each class that determines the ordering of classes from lowest to highest. Grade levels are used by the promotions system to determine which class a student should advance to when promoted.

Getting Help & Support

If you encounter an issue not covered in this handbook, or if you need assistance with any aspect of SchoolPro, there are several ways to get help. First, review the relevant chapter in this handbook — many common questions are addressed in the Troubleshooting section of Chapter 11. Second, contact SchoolPro support through the channels provided with your license purchase. When contacting support, always include your school name, license key, a clear description of the problem, and what you were trying to do when the issue occurred. Screenshots are especially helpful for visual issues. Third, check for software updates — some issues may have already been resolved in a newer version of SchoolPro. Your support team can guide you through the update process if an update is available.

For feature requests and suggestions, we welcome feedback from all users. The nursery, primary and secondary schools that use SchoolPro daily are the best source of ideas for improvements, and many features in version 6.0 were added based on feedback from school administrators, bursars, and teachers across Nigeria. Your input helps make SchoolPro better for every school. Visit deskttools.store/academy to purchase licenses, download updates, or recover your license key.

SchoolPro
Offline School Management Software for Primary & Secondary Schools
Version 6.0 · 2025/2026 Edition
This handbook is for licensed SchoolPro users
and school administrators across Nigeria.
© 2026 SchoolPro by DesktTools. All Rights Reserved.