Attendance management

Take attendance once. The whole school learns about it.

JEduManage's attendance flow turns a teacher's once-a-day roster tap into automatic absentee SMS to parents, a visible parent-portal calendar, a holiday-aware history, and an immutable audit trail — without any extra reporting step.

Attendance is the single most repeated workflow in a school. It happens every section, every day, fifty weeks a year. The marginal cost of friction in the attendance flow is enormous — every extra tap multiplies by every section by every day. JEduManage's attendance management is designed to take less time than the principal expects.

The daily flow

The class teacher opens the attendance page for their section and today's date. The section's enrolled students appear as a roster ordered by roll number — drawn directly from the SIS, with no setup step. The teacher taps to mark each student present, absent, or late, then submits. The session is closed and the downstream flow begins:

  • Absentee SMS is queued to parents (if the school has the absentee template configured)
  • The session is recorded in the attendance history table — append-only, never overwritten
  • The parent portal calendar updates the next time the parent opens it
  • The audit log captures who marked the session, when, and from which device

The teacher's next action is to close the tab. That's the whole flow.

One attendance session per (section, date)

The data model enforces one attendance session per section per date. Re-marking the same section on the same day updates the existing session, not a duplicate. Corrections (a student mis-marked absent, an arrival after the session closed) flow through an audited update — the new value is written, the previous value is logged, and the absentee SMS does not refire on the corrected student.

Absentee SMS — automatic, but not chatty

When a section is marked, parents of absent students receive a DLT- compliant SMS through MSG91. The message references the date, the student's name, and the school's name; the template is configurable per tenant. The category is logged as ABSENTEE in the SMS log so the admin can filter by message type when investigating delivery questions.

Important: absentee SMS only fires on schools that have the template configured AND have absentee notifications enabled in the rules. Schools that prefer to handle absentees personally can leave the campaign disabled; the data still records correctly and parents see attendance on their portal calendar.

Holidays are not "no school today"

School calendars carry a mix of national holidays, festival observances, and ad-hoc closures (exam preparation, weather). The Holidays module records each tenant's calendar and the attendance UI respects it: holidays show as grey blocks on the parent's attendance calendar, distinct from absent days; no absentee SMS fires on holiday dates; reports skip them when computing attendance percentages.

The holiday list is per-tenant — schools observe different days — and admin-managed. New holidays can be added at any time and apply immediately to the calendar.

Teacher access is scoped to their classes

A teacher's view of attendance is automatically scoped to the sections they class-teach or subject-teach. They never see another section's attendance, never another grade. The principal and admin roles see the full school view; the parent role sees only their own children. The service layer enforces this scoping — even a tampered URL won't surface data the role isn't entitled to.

The parent's view

Parents see each child's attendance as a month-by-month calendar inside the parent portal. Present days are green; absent days are red; holidays are grey. Tapping a day shows the status text. Parents seeing the same data the school sees removes most of the "was my child marked absent?" follow-up calls the school office would otherwise field. The same parent portal also surfaces fee breakdown (see fee management) and report cards — see thestudent information system for how the student record threads through everything.

Reporting and analytics

The admin dashboard surfaces attendance rates per class and per academic year. Each section's session log is queryable by date range. Audit reports for parents (e.g. for transfer certificates) can be generated from the attendance history.

For schools that need richer analysis — late patterns, repeat absentees, period-wise attendance — the data is in a structure that's easy to query externally. Speak to us about export options.

Late marking, partial sessions, and after-hours arrivals

Real school days don't always finish before the teacher submits attendance. A student walks in twenty minutes late; the bus is delayed for the entire section; a sports team returns to class at eleven. JEduManage handles each of these without forcing the teacher to start over. A submitted session can be reopened for edits within the same academic day; each edit is recorded in the audit log with the actor, the timestamp, and the before-and-after status. The absentee SMS pipeline checks the latest state of each student before firing — so a student who was initially marked absent but updated to late before the SMS dispatch window closes never receives a misdirected message.

The session model also supports a "late" status distinct from present and absent. Schools that track tardiness for discipline policy see late counts surfaced in the same dashboards that surface absentee counts. Schools that don't care about tardiness can treat late as present in their reporting filters — the data is captured either way.

Subject-wise attendance for higher classes

Higher classes — typically grade 9 and above — often need period-wise attendance rather than a single morning roster. The same attendance primitive supports per-period sessions, scoped per subject teacher. A maths teacher marks the maths period; the physics teacher marks the physics period; the day's overall attendance rate aggregates from each period rather than from a single morning gate-check.

For schools that don't need this layer, the simpler morning roster stays the default — there is no configuration penalty for schools that prefer once-a-day marking. Schools running a mix — morning roster for primary, period-wise for higher classes — can do both inside the same tenant.

Mobile-first, offline-tolerant marking

Class teachers carry phones, not laptops. The attendance screen renders cleanly on mobile and the roster supports two-handed marking — one thumb sweeps down the column, the other taps the status. When connectivity drops mid-marking (a basement classroom, a power cut, a flaky school WiFi), the page keeps the unsubmitted state in local storage until the next sync. Teachers never lose half-finished work because the network blinked.

Where this fits in the larger picture

Attendance is one module inside the wider school management software. The same student record drives the fee invoice the parent sees, the report card the school issues, the SMS log the office monitors, and the audit trail the principal queries. Read thefeatures page for the full per-module breakdown, or start a conversation and we'll walk you through your school's attendance day end to end.

FAQ

Attendance — common questions

How is attendance marked in JEduManage?
Each section's class teacher opens the attendance screen for the current date and works through the section's roster — tap to mark each student present, absent, or late. The roster is generated from the section's enrollment in the SIS, so no separate setup is needed. Once submitted, the absentee list is final for that date; corrections flow through an audited update so the history stays intact.
Can the principal mark attendance if the class teacher is on leave?
Yes. The principal role has attendance.mark_student permission alongside the class teacher, so a principal can open the section's attendance session and mark on behalf of the absent teacher. The audit log records who actually marked the session, so accountability stays clear.
Are absentee notifications sent to parents automatically?
Yes. The school can configure absentee SMS to fire automatically after attendance is submitted, using a DLT-compliant template like 'Dear [Parent], [Student] was absent today on [Date]. — [School Name].' Parents receive the message within a few minutes of the class teacher submitting the session. Every send is logged with the recipient, the rendered message, the MSG91 request ID, and the delivery outcome.
How are holidays and school closures handled?
Holidays are a first-class object. The admin creates them on the Holidays page (e.g., national holiday, festival, exam preparation day) and they apply tenant-wide. The attendance UI shows holidays in grey; the parent's attendance calendar in the parent portal marks holidays distinctly from working days; no absentee SMS fires on a holiday.
Can teachers see attendance for their classes only?
Yes — that's the default. Teachers have access to the attendance screens for the sections they class-teach or subject-teach, scoped at the service layer. They cannot see attendance for other sections or other classes. Admins and principals see the full school view.
Does JEduManage support biometric or RFID attendance devices?
The current product is built around teacher-marked roster attendance, which is the workflow most schools rely on day to day. Bulk attendance imports (from a biometric or RFID source) can be wired up as a follow-up if your school has the hardware; reach out and we'll walk through the integration. The same SMS, audit, and parent-portal flows would apply regardless of how the data arrived.
How do parents see their child's attendance?
The parent portal shows each child's attendance calendar — a month grid with present, absent, and late days colour-coded, plus holidays distinguished. Tapping a date shows the day's attendance status. Parents see only their own children's data; the same calendar drives any SMS notifications the school chooses to send.

Move every school operation onto one calm surface.

See JEduManage in your environment. We'll spin up a working tenant with your school's branding, classes, and a sample student cohort — usually within the same day you reach out.