Skip to main content

Reason-based attendance model – school guide

Updated this week

What is the reason-based attendance model?

In Orah, every Late or Absent record is backed by a reason. Reasons explain why a student is away or late, and each reason has a type:

  • Excused – approved by the school (for example, sickness, family emergency)

  • Unexcused – not approved (for example, truancy, extended vacation)

  • Not Expected – the student is not meant to be in that class (for example, school trip, exam block, cancelled class)

By putting reasons at the centre, Orah can:

  • Give cleaner dashboards that separate Excused, Unexcused, and Not Expected records

  • Power more accurate alerts, daily attendance, and reports

  • Keep your SIS in sync using a simple, predictable mapping based on reasons, not complex roll‑code rules

Example of attendance insights broken down by Excused / Unexcused / Not Expected


How reasons fit with roll codes and passes

Orah combines three things to decide a student’s final attendance status in a class:

  1. Roll code – what the teacher selects (Present, Late, Absent)

  2. Reason – why the student is late or absent

  3. Source – where the record came from (roll, pass, or an edit)

Key ideas:

  • Teachers select roll codes like Present, Late, Absent when marking the roll

  • Reasons can be added either from the roll (for example, “Late – traffic”) or from a pass (for example, “Early Dismissal – medical”)

  • The reason type (Excused / Unexcused / Not Expected) is what Orah uses in:

    • Attendance dashboards

    • Daily attendance calculations

    • Attendance alerts and follow‑ups

Example outcomes

  • Late + Excused reason → Late Excused

  • Late + Unexcused reason → Late Unexcused

  • Absent + Excused reason → Absent Excused

  • Absent + Unexcused reason → Absent Unexcused

  • Absent + Not Expected reason → Absent Not Expected (ignored in attendance rates)

Present records do not need reasons. Most SIS platforms assume students are present unless they are marked late or absent, so Orah only needs to send Late and Absent records.

Example class record showing a student marked Not Expected with an Excused pass


Why schools benefit from the reason-based model

Compared with the older, pass‑based approach, the reason‑based model gives schools:

  • Clearer insights – you can see Excused vs Unexcused vs Not Expected for both lates and absences

  • Fairer reporting – school trips, exam blocks, and cancelled lessons do not drag down attendance rates

  • Simpler integrations – Orah focuses on syncing reasons to the SIS, instead of hard‑to‑explain roll‑and‑pass combinations

  • Stronger automations – alerts can target exactly the patterns you care about (for example, repeated Unexcused Late in homeroom)

Example of alerts configuration grouped by reason type


Who needs to do what at your school?

IT / SIS admin

  • Connect Orah to your SIS

  • Enable the Reason / Reason Code integration object

  • Run the first sync so SIS reasons appear in Orah

Attendance manager / dean

  • Review the list of reasons and group them into Excused, Unexcused, and Not Expected

  • Create any extra “Orah‑only” reasons that help with your workflows, then map them to SIS reasons

  • Make sure every Late and Absent roll code and every pass type has a default reason

Teachers

  • Continue marking rolls as usual (Present, Late, Absent)

  • Choose or confirm the correct reason when a student is Late or Absent (where allowed by school policy)


Step 1 – Check your school type

Before you configure anything, confirm how your school is set up in Orah:

  1. Legacy school – Full attendance mode

    • You started using Orah before 13 January 2026, and

    • You use Orah to take and manage attendance

  2. Legacy school – Attendance Insights mode

    • You started using Orah before 13 January 2026, and

    • Orah only pulls attendance in from your SIS for dashboards and alerts

  3. New school – Full attendance mode

    • Your account was created on or after 13 January 2026, and

    • You use Orah for full attendance management

  4. New school – Attendance Insights mode

    • Your account was created on or after 13 January 2026, and

    • You use Orah for SIS‑only attendance insights

Only legacy schools need to migrate to the reason‑based model.

New schools start on this model by default.

Switch to Reason-based Method control in General Attendance Settings


Step 2 – Enable and sync SIS reasons

For: IT / SIS admin

  1. Go to SIS Integration settings in Orah.

  2. Enable the Reason / Reason Code integration object so Orah can read reasons from your SIS.

  3. Run a manual sync.

  4. Confirm that SIS reasons now appear in Orah (for example, in Reason Settings).

If your SIS does not yet expose reasons, you can still create Orah‑only reasons, but you will not be able to map them back to your SIS until those codes exist there.

Example of SIS reasons pulled into Orah after sync


Step 3 – Configure your reasons in Orah

For: Attendance manager / dean (with IT support as needed)

Work through the Reason Settings page and:

  1. Assign a reason type to every reason

    • Decide whether each reason should be Excused, Unexcused, or Not Expected

    • Use your existing attendance policy as the guide

  2. Review and create custom reasons

    • Add any Orah‑specific reasons you need (for example, “Internal Meeting”, “On‑campus program”)

    • Keep names short and clear; add a Short Code for quick views where needed

  3. Map Orah custom reasons to SIS reasons

    • For each custom reason, choose the matching SIS reason so exports stay consistent

    • Reasons that originally came from the SIS remain fixed to their source code

  4. Set who can use each reason

    • Use Reason Access to control which roles can choose a given reason

    • For example, limit “Truant / Cut class” to deans and attendance staff

When this step is complete, you should be able to answer:

  • Which reasons are Excused vs Unexcused vs Not Expected

  • Which reasons are Orah‑only and how they map to SIS reasons

  • Which user groups can apply each reason

Reason settings page with types, mappings and access configured


Step 4 – Link reasons to passes

For: Attendance manager / dean

Every pass that can affect class attendance should have a default reason.

  1. Open Pass Type settings in Orah

  2. For each pass type that overlaps class time (for example, Late Arrival, Early Dismissal, School Trip):

    • Choose a default reason that best matches the usual use case

    • Decide whether staff can change the reason on the pass form

  3. Save your changes

Examples:

  • Late Arrival (traffic) → default reason type Excused

  • Late Arrival (no explanation) → default reason type Unexcused

  • School Trip → default reason type Not Expected

Once this is set, any time a pass is active and overlaps a class, its reason will drive the class attendance status.

Example of editing the reason on a Late Arrival pass


Step 5 – Link reasons to roll codes

For: Attendance manager / dean

Next, configure your roll codes so that every Late and Absent option has a default reason.

  1. Open Roll / Class Attendance settings

  2. For each Late or Absent roll code:

    • Assign a default reason (for example, “Absent – Unexplained”, “Late – Traffic”)

  3. Leave Present roll codes without a reason. These do not need explanation for SIS sync.

This ensures that when a teacher chooses a roll code, Orah always has a matching reason to work with.

Roll settings with default reasons assigned to Late and Absent codes


Step 6 – (Legacy schools only) Switch to the reason-based method

For: IT + Attendance manager / dean

Once your reasons, passes and roll codes are all configured:

  1. Go to General Attendance Settings in Orah

  2. Find the Attendance data type setting

  3. Click Switch to Reason‑Based Method

  4. Follow the on‑screen confirmation and start the migration

  5. Wait for the migration to complete (this may take a few minutes)

During migration, Orah updates your historical data so that dashboards, daily attendance and alerts use the new reason‑based classifications.

If anything is missing (for example, a roll code without a default reason), Orah will show an error and block migration until it is fixed.

Pre-migration checklist showing required reason configuration


Step 7 – Check your dashboards, alerts and daily attendance

After switching to the reason‑based model:

  • Open the Attendance Insights dashboard and confirm you can see:

    • Excused Tardy vs Unexcused Tardy

    • Excused Absent vs Unexcused Absent

  • Review Attendance Alerts settings and update any rules that should now filter by:

    • Reason type (Excused / Unexcused / Not Expected)

    • Specific reasons (for targeted use cases)

  • Check Daily attendance outputs to ensure:

    • “Not Expected” records are not counted in attendance rates

    • Excused vs Unexcused behaviour matches your policies

Example error message if required reason mappings are missing


Frequently asked questions

Do teachers have to learn a totally new process?

No. Teachers still select roll codes and, where enabled, choose a reason. The core change is how Orah interprets those choices in the background.

Can one pass override another?

If there are multiple overlapping passes, Orah uses the latest active pass at the time of class to decide the final reason.

What happens if a reason changes later?

If a teacher or attendance manager edits the reason on a roll or pass, the final attendance status is updated to match the new reason type.

Will this change our SIS data?

The goal is to keep your SIS behaviour consistent with your policies. Orah sends Late and Absent records with the mapped reasons; your SIS still applies its own rules, just with cleaner, more structured input from Orah.

Did this answer your question?