SchoolPro User Handbook
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.
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.
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.
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.
| Field | Value |
|---|---|
| Username | admin |
| Administrator PIN | 1234 |
| Default bursar PIN | 5678 |
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.
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
| Role | Description | Key Permissions |
|---|---|---|
| Administrator | Full access to every module and setting in the system. | All permissions — including user management, backup, settings, and audit log. |
| Bursar / Accountant | Handles all financial operations and reporting. | Fees, expenses, salaries, books, uniforms, receipts, cashbook, ledger, debtors, and financial reports. |
| Secretary / Receptionist | Manages 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. |
| Teacher | Enters results, marks attendance, and views student information. | Students (view only), results entry, attendance marking, report cards (view), behavioral notes, and library (view). |
| Librarian | Manages the library catalogue and book loans. | Library management, books (view), students (view), and reports (view). |
| Attendance Officer | Dedicated 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.
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.
Academic AI, Academic Library, Academic Sessions, Attendance, Audit Log, archives and account access.
Backup, behavioural notes, books/materials, booklists, bundle sales, broadsheet and browser-tab protection.
Cameras, Cashbook, CBT Security, certificates, Classes, class progress, curriculum coverage and currency.
Dashboard, debtors, device lock, diagrams, distance-learning registration, drafts, duplicate textbook merging and data download.
Editing, enrolment, Exams/CBT, exam analytics, exports, expenses, external candidates and end-of-term procedure.
Face Attendance, face enrolment, fee collection, fee setup, figures, finalising results and financial reports.
Generated materials, Google Drive backup, grading scale, guardians, glossary generation, GPS registration fields and grade-level promotion.
Hall Zone, hall codes, health records, holiday-coaching registration, history and head-teacher/principal signatures.
ID Engine, imports, income, inventory, invigilator reports, individual permission exceptions and incomplete registrations.
Job-based roles, AI generation jobs, job resume, JSON backup and joining/linking pupils to guardians.
Kiosk/phone attendance, key points and definitions, license key management and known-adult exclusion at face stations.
Ledger, learning coverage, lesson plans, library loans, licence activation, live exam login and login lockout.
Manual attendance, materials review, mobile access, monthly reports, multi-device work, mock exams and multiple registration types.
Network sharing, new academic session, new pupil/staff/station, net position, negative-marking preset and notifications.
OCR for scanned textbooks, online-student registration, other income, offline operation, outstanding fees and option shuffling.
Payroll, permissions, phone attendance, PIN login, practice exams, printing/PDF, promotions, protection score and pupil presence.
Question bank, question generation/review, quick registration, quick actions, quality gates and QR code for the CBT portal.
Receipts, Registration, report cards, reports, restore, result workbench, role matrix and rotating hall code.
Salaries, school events/setup/stamp, security reports, sessions, staff, stations, student support/students, subjects and submissions.
Teacher tools, term dates/activation, textbooks, timetable, transfer certificates, traits, thresholds and trainer exclusions.
Uniform inventory/sales, unfinished registrations, unknown faces, uploads, users/access and USB backup.
Validation, video/camera permission, visitor registration, voice alerts, voiding receipts and violation review.
Welfare reports, whole-school face scope, Wi-Fi/network access, workshop participants, whole-book generation and work schemes.
XLSX/CSV-style spreadsheet exports, CSV import/export, and cross-registration device-use reports.
Year/session rollover, year-end promotions, year-established branding and yearly archive/backup discipline.
Zone protection (Hall Zone), zero-result validation, zero-loss backup practice and zoom/print scaling.
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.
Quick Statistics
The compact cards below the finance panel show four operational signals:
| Card | What It Shows |
|---|---|
| Students | Total active students across all classes. |
| Staff | Total active staff members across all departments. |
| Present Today | Today's recorded present and late attendance; “All present” appears when no absence is recorded. |
| Fees Charged | The 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.
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.
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.
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.
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.
Full form, Quick form and drafts
| Choice | Use it when | Result |
|---|---|---|
| Full form | The person is present and all required evidence is available. | Every applicable section is completed, reviewed and submitted as a complete record. |
| Quick | The 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 draft | You 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
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.
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 action | How it is used |
|---|---|
| Full Name | The name shown in payroll, reports and assignment controls. |
| Role / Position | The job title, such as Mathematics Teacher or Bursar. This is not the same as the login permission role configured in Users & Access. |
| Department | Choose Academic, Admin, Finance, Non-Academic or Support so lists and reports can group staff correctly. |
| Phone, email | Contact details for administration; validate them before bulk communication or printed records. |
| Monthly Salary | The 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.
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.
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.
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.
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.
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
Results Workbench tabs
| Tab | What to do there |
|---|---|
| Score Entry | Enter 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 Progress | Review every assigned subject as Needs work, Ready to finalize, Finalized or Open draft, then open the relevant subject card. |
| Traits | Record affective/psychomotor ratings, find incomplete pupils, and fill blank ratings with a chosen level before saving. |
| Result View | Search final pupil summaries and filter by with/no results, passing average or below-passmark performance. |
| Broadsheet | Review the class-wide subject grid, search rows, filter completeness/performance and prepare the sheet for print or export. |
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.
Complete results-to-report workflow
Report-card release gate
| Check | What “ready” means | If it fails |
|---|---|---|
| Identity | Name, admission number, class, photo, gender/house and date of birth belong to the same pupil. | Correct the pupil profile or class assignment, then regenerate. |
| Assessment | All expected subjects and score components appear; totals do not exceed configured maximums. | Return to Results, repair the source scores and finalize again. |
| Calculation | Average, 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 record | Attendance, traits and comments are complete, suitable and supported by school records. | Update attendance/traits or revise the authorised comment before export. |
| Document quality | Logo, 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. |
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.
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:
| Decision | Effect |
|---|---|
| Promote | Moves the student to the next class (based on grade level sequence). You select the destination class. |
| Repeat | Student stays in the same class for the next session. |
| Demote | Moves the student down to a lower class. You select the destination. |
| Graduate | For final-year students. Sets status to "Graduated" and moves to Archives. |
| Transfer | Sets status to "Transferred" and moves to Archives. |
| Withdraw | Sets 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.
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.
End-to-end examination workflow
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.
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.
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/action | Use it for |
|---|---|
| Submissions | Confirm who submitted, attempt state, score, start/finish time and any response needing manual review. |
| Monitor / Security reports | Resolve genuine interruptions and retain evidence of device, tab, network or behaviour events before closing. |
| Grades | Complete manual marks and verify the final total before release or transfer into academic Results. |
| Analytics / Topics | Identify weak learning outcomes, ambiguous questions and content that needs reteaching. |
| Export CSV / Print | Create the authorised administrative record; store it using the exam name, class, term and date. |
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
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.
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.
| Control | Safe use |
|---|---|
| Create a new exam | Create the destination from the review stage so finished drafts are not lost while you leave to configure an exam. |
| Approve selected | Add only checked, valid drafts to the chosen exam; verify the reported approved/rejected totals. |
| Reject / discard | Reject keeps a draft out of the queue; permanent deletion should be reserved for duplicates or unusable material. |
| Question images | Upload PNG/JPEG/WebP, add useful alternative text/caption and preview the phone layout before approval. |
Academic Library
The Academic Library turns uploaded textbooks and approved questions into lesson planning, classroom material, curriculum coverage and student-support tools.
Eight working areas
| Tab | What it covers |
|---|---|
| Teacher Tools | Generate 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 Textbook | Ask 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 Materials | Review pending/approved/rejected output, open the full material, approve for use, reject, and trace the source chapter and coverage percentage. |
| Question Review | Search by question/topic/chapter, filter review state, correct text/options/answers/images, compare AI improvements, bulk approve/reject and remove unusable drafts. |
| Learning Coverage | Measure questions, marks, passage coverage, curriculum outcome coverage and Bloom-level balance; use warnings to find underrepresented thinking levels or chapters. |
| Student Support | After an exam has submissions, identify pupils needing support, weak topics, revision chapters, hardest/easiest questions and class-level intervention priorities. |
| Figure Library | Store and reuse approved diagrams/figures in questions; inspect captions and source links before attaching. |
| Textbooks | Correct 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
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:
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.
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.
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).
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
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
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.
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.
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.
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.
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.
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.
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.
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 wrong | Where to investigate |
|---|---|
| Fee Collections | Fees, Receipts and the pupil Ledger; check the selected term. |
| Other Income | Other Income source/date entries. |
| Book or Uniform Sales | The relevant Sales History and stock transaction. |
| Operating Expenses | Expenses category, date and method. |
| Salary Payments | Salaries 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.
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.
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.
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.
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.
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.
| Status | Use it when |
|---|---|
| Present | The person arrived before the late threshold. |
| Late | The person attended but arrived after the configured threshold. |
| Absent | No attendance was recorded for the day. |
| Excused | An 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.
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
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.
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.
| Control | Use |
|---|---|
| Turbo / Fast / Normal | Trade processing load for smoother or more careful detection. Start with Fast; move to Normal on weaker hardware or difficult scenes. |
| Near / Mid / Far | Match the expected camera distance. Far adds tiled detection for smaller faces and costs more processing. |
| Precision | Requires a suitable front-facing pose before recognition. Keep on for fixed attendance stations. |
| Voice / Sound | Control spoken identity/status feedback and short audio cues independently. |
| Thresholds | Advanced matching controls. Change only after a documented test set shows a consistent problem. |
| Reload Faces | Refresh 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.
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.
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.
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.
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.
Loan history remains in the pupil Ledger. Do not confuse this circulation catalogue with Books & Book Sales, which manages items sold to families.
Transfer Certificates
When a student leaves your school — whether transferring, graduating, or withdrawing — a formal Transfer or Leaving Certificate can be generated and printed.
Issue a professional certificate
| Later action | Correct procedure |
|---|---|
| Reprint | Search history by pupil or certificate number and download the stored issue again so the identifier remains consistent. |
| Correction | Correct the source record and follow the authorised cancel/reissue process. Do not silently alter a PDF that has already been issued. |
| Cancellation | Cancel only with the required permission and reason. Keep the cancelled record for audit; never reuse its certificate number. |
| Receiving-school verification | Match 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.
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.
End-to-end card production workflow
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:
| Mode | Description |
|---|---|
| Single | Select one person from the list. Ideal for new admissions or replacements. |
| Whole Class / Department | Generate cards for every student in a class or every staff member in a department. |
| Selected | Pick multiple individuals from the list. Useful when generating cards for a specific group. |
| All | Generate 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:
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.
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.
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
| Report | What It Shows |
|---|---|
| Overview | High-level summary: total students, total income, total expenses, and net position for the selected period. |
| Monthly | Month-by-month breakdown of income and expenses with trend visualisation. |
| Income | All income streams: fees, book sales, uniform sales, and other income, broken down by category and date. |
| Expenses | All expenditure by category (utilities, maintenance, stationery, etc.) with totals and percentages. |
| Profit & Loss | Total income minus total expenses, showing the school's net financial performance for any period. |
| Payroll | Staff salary payments: who was paid, how much, when, and the total payroll cost per month. |
| By Class | Financial breakdown per class: total fees expected, total collected, total outstanding, and collection rate percentage. |
| Debtors | Students with outstanding balances, ranked by amount owed, with contact details for follow-up. |
| Attendance | Attendance rates by class and by student, showing average attendance percentages and trends. |
| Academic | Class averages, subject performance, pass rates, and top-performing students. |
| Inventory | Book and uniform stock levels, sales volumes, and revenue from inventory items. |
| Welfare | Behavioral note summaries, health record statistics, and library loan activity. |
| Activity | System usage patterns: user login frequency, most active modules, and data entry volumes. |
| Export | Export 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.
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:
| Term | Period | Calendar Year |
|---|---|---|
| 1st Term | September — December | First year (e.g. 2025) |
| 2nd Term | January — April | Second year (e.g. 2026) |
| 3rd Term | Late April — July | Second 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.
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.
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.
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
| Mode | Meaning | Recommended use |
|---|---|---|
| Off | The portal can be reached from any network that can see SchoolPRO. | Small supervised pilots only. |
| Calibrated LAN | Students must be on an approved hall subnet observed by the server. | Normal school CBT hall. |
| LAN + hall code | Requires 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
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.
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
How to choose each AI default
| Control | Choose it when | Verification |
|---|---|---|
| Exam style | The target assessment genuinely follows that institution or certification format. | Check option count, mark style, timing and language against an approved sample paper. |
| Difficulty preset | You need a repeatable easy/medium/hard balance across new jobs. | Inspect a pilot set; difficulty labels are guidance, not proof of actual challenge. |
| Whole textbook | The 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 chapters | A teacher can name exactly what has been taught. | Compare the selection with the scheme of work before generation. |
| Term syllabus | The current term syllabus is complete and mapped to book material. | Open the syllabus first and resolve blank or unmatched topics. |
| Failed topics | A completed earlier exam has reliable topic tags and submissions. | Check the analytics sample size and exclude ambiguous/bad questions. |
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.
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.
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
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.
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
Exam Week
After Exams — Report Card Generation
Financial Closing
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.
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
First Week of the New Session
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.
Quick Reference
Complete Module Map
SchoolPro Module Architecture
Students · Registration · Staff · Guardians · Archives
Classes · Subjects · Results · Report Cards · Promotions · Exams/CBT · Academic AI · Academic Library · Timetable
Fee Setup · Fees · Books · Uniforms · Other Income · Expenses · Salaries · Debtors · Cashbook · Ledger · Receipts
Attendance · Face Attendance
Behavioral Notes · Health Records · Events · Library
Transfer Cert · Users & Access · ID Engine · Reports · Sessions · Audit Log · CBT Security · Settings
Student CBT Portal · Phone Attendance
Default Score Breakdown
| Component | Label | Maximum Marks |
|---|---|---|
| CA1 | 1st Continuous Assessment | 10 |
| CA2 | 2nd Continuous Assessment | 10 |
| CA3 | 3rd Continuous Assessment | 10 |
| Assignment | Assignment / Project | 10 |
| Exam | End-of-Term Examination | 60 |
| Total | 100 | |
Default Grading Scale
| Score Range | Grade | Remark | Grade Point |
|---|---|---|---|
| 70 — 100 | A | Excellent | 5 |
| 60 — 69 | B | Very Good | 4 |
| 50 — 59 | C | Good | 3 |
| 45 — 49 | D | Fair | 2 |
| 40 — 44 | E | Pass | 1 |
| 0 — 39 | F | Fail | 0 |
Nigerian Academic Calendar Reference
| Month | Term | Session |
|---|---|---|
| September — December | 1st Term | CurrentYear / NextYear |
| January — April | 2nd Term | PreviousYear / CurrentYear |
| May — July | 3rd Term | PreviousYear / CurrentYear |
| August | Vacation | Preparing 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
| Code | Symbol | Name |
|---|---|---|
| NGN | ₦ | Nigerian Naira |
| GHS | GH₵ | Ghanaian Cedi |
| KES | KSh | Kenyan Shilling |
| ZAR | R | South African Rand |
| XOF | CFA | West African CFA |
| USD | $ | US Dollar |
| GBP | £ | British Pound |
| TZS | TSh | Tanzanian Shilling |
| UGX | USh | Ugandan Shilling |
| RWF | FRw | Rwandan Franc |
| XAF | FCFA | Central African CFA |
| BWP | P | Botswana Pula |
Glossary of Terms
| Term | Definition |
|---|---|
| Session | A 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. |
| Term | One 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 Number | A 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. |
| Ledger | The 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 Structure | The 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. |
| Broadsheet | A 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. |
| Passmark | The 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. |
| Voiding | The 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 Log | A 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. |
| Archives | The 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 Level | A 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.