Skip to main content

Where Reason Codes Appear in Attendance, Reports, and Exports

Updated this week

Once reason codes and default reasons are configured, they are used across Orah to provide context, drive attendance calculations, and support reporting and exports.

This article explains where reason codes appear, who can see or change them, and how they affect attendance data.


Reason Codes in Roll Calls

During roll calls, staff mark students as Present, Late, or Absent using roll codes.

  • Present records do not require a reason code

  • When a student is marked Late or Absent, a reason is applied

  • A default reason may be applied automatically

  • Staff can confirm or change the reason if permitted by their role

The reason type (Excused, Unexcused, or Not Expected) determines how the attendance entry is counted.


Reason Codes in Passes and Leave Requests

Reason codes are also used when passes or leave requests are created. How the reason is applied depends on who creates the pass.

  • Staff-created passes

    • A default reason is applied

    • Staff can select or override the reason based on their role permissions

  • Student-created passes (if permitted by the school)

    • The default reason for the pass type is applied

    • Staff can later override the reason if needed

  • Parent-submitted passes

    • Parents do not choose a reason

    • The pass automatically uses the default reason assigned to the pass type

The applied reason affects all impacted classes during the pass or leave window.

For example:

  • A School Trip pass mapped to Not Expected will mark students as Absent – Not Expected in affected classes.


Reason Codes in Attendance Reports

Attendance reports use reason types, not just attendance statuses, to calculate totals and percentages.

Reports can be filtered by:

  • Reason name

  • Reason type (Excused / Unexcused / Not Expected)

  • Date ranges and students

This allows schools to analyse patterns such as:

  • Unexcused absences by year group

  • Medical-related absences

  • Attendance impact of approved activities

While individual attendance records remain unchanged, changing a reason’s type can affect how historical data is calculated and displayed in reports.


Reason Codes in Dashboards

Dashboards aggregate attendance data using reason types to surface trends such as:

  • Overall attendance rates

  • Excused vs unexcused absence breakdowns

  • Students frequently marked unexcused

Because dashboards rely on reason types:

  • Accurate configuration is critical

  • Misclassified reasons can skew metrics

Changes to reason types should be made carefully and intentionally.


Reason Codes in Exports and SIS Integrations

When attendance data is exported or synced to a Student Information System (SIS):

  • The selected reason code is included

  • If configured, the reason is mapped to a corresponding SIS reason code

  • This ensures consistency between Orah and external systems

If a reason is not mapped correctly, exports may:

  • Fail SIS validation

  • Appear as unmapped or generic reasons


Who Can See or Use Which Reasons?

Access to reason codes is controlled by role-based permissions.

Schools can:

  • Restrict sensitive reasons (e.g. Truant / Cut Class) to specific roles

  • Allow broader access to common reasons (e.g. Illness)

If a staff member does not have access to a reason:

  • It will not appear as an option, even when overriding defaults


Key Takeaways

  • Reason codes are used for Late and Absent records, not Present

  • Defaults streamline workflows, but overrides are allowed for staff where permitted

  • Parent-submitted passes always use the pass type’s default reason

  • Reason types drive attendance calculations and reporting

  • SIS mapping and access controls protect data quality


What’s Next?

With behaviour and visibility covered, the final step is avoiding configuration mistakes.

➡️ Next article: Best Practices and Common Pitfalls for Reason Codes

Did this answer your question?