Skip to main content

Reasons

Pratyush Chowdhary avatar
Written by Pratyush Chowdhary
Updated yesterday

Overview

The Reasons page lets your school standardize why a student is absent, tardy, or excused by managing a set of “reason codes” (e.g., Absent Excused = AE) that are used across attendance tracking, roll calls, and leave management. These codes can also be mapped to SIS like Blackbuad, Veracross, Synergetic and FACTS.

Get Access to Reasons Settings

  • You will be able to see the reasons settings page if on the Admin Console > Staff > Additional Permission > Supervise > General Settings OR Roll Settings is enabled

  • Ask your admin to assign General Settings OR Roll Settings access under additional permission to the individual staff (or in bulk using Roles)

🧭 Navigation : Admin Console > Staff > Select a staff or user role > Additional Permisison > under Product Access section > Supervise > Attendance > General Settings OR Roll Settings access

Reason Code Management

Create New Reasons

  • Click "Add Reason" button to create new reason codes

  • Enter Name: name of reason to be displayed across app (e.g. "Absent Excused")

  • Enter Short Code: max of 8 alphanumeric identifier (e.g. "AE")

  • Provide Who has access to this reason ? (newly added)

    Selected user type for each reason can choose that reason when creating a pass or marking attendance :

    • Staff or User Roles

    • Parents or Guradians (Family App users)

    • Secure Parent Link (Approved Contacts or Family App users)

    • Students (Student App)

    • Kiosk/Checkpoint

  • Click Save to create the reason


Once added the reasons will be list out in table, providing quick peek on who has acces to individual reasons. Segreated by Staff, Student and Contacts (parents)

Edit Existing Reasons

  • Click the edit icon on right side of any reason in the table

  • Modify the name, short code or who has acces to this reason as needed

  • Click Save to update the reason

☝🏽 Note - if you are a new school, reasons templates will be pre-populated to get you started with common reason codes schools typically use:

Name

Code

Purpose

Absent Excused

AE

Student absent with valid excuse

Absent Unexcused

AU

Student absent without excuse

Tardy Excused

TE

Student late with valid excuse

Tardy Unexcused

TU

Student late without excuse

Dean Approved

DA

Absence approved by dean

Health Center

HC

Student at health center

Medically Excused

ME

Medical absence

Parent Approved Absence

PAA

Parent-approved absence

School Counselling

SC

Student in counselling

School Approved Activity

SAA

School-sanctioned activity

Attendance Officer Approved

AOA

Approved by attendance officer

IT Approved

ITA

Approved by IT department

Truant Not Excused

TNE

Unexcused truancy

Weather Event

WE

Weather-related absence

Family Bereavement

FB

Bereavement leave

Delete Reasons

  • Click the edit icon next to any reason in the table

  • Click "Delete Reason" written in red in the edit modal

  • Confirm deletion to remove the reason

  • Deleted reasons are soft-deleted to preserve historical records

  • If a leave type is configured to require reason codes and uses the deleted reason code:

    • New Pass Requests: Cannot be submitted using the deleted reason code

    • Existing Passes: Remain completely unaffected - they keep their existing reason codes historically

    • Leave Type Configuration: The leave type loses the deleted reason code from its available options

Before Deleting Reason Codes:

  • Check Usage: Verify which leave types use the reason code

  • Update Leave Types: Remove the reason code from leave type configurations first

  • Notify Staff: Inform staff about the change

  • Consider Alternatives: Replace with a new reason code if needed

Alternative to Deletion:

  • Rename: Update the reason code name/code instead of deleting

  • Gradual Phase-out: Remove from new configurations but keep for historical data

Where Reason Codes Are Used

Roll Calls

  • Staff can assign specific reason codes when marking students absent or late

  • Reason codes appear in roll call dropdowns and selection lists

  • Historical roll call records preserve the reason codes used

Attendance Records

  • Student roll records include reason code breakdowns per roll call level

  • Attendance records can be filtered and analyzed by reason codes

Leave/Pass Management

  • Leave types can have default reason codes assigned

  • Students/parents can select appropriate reason codes when requesting leave

  • Leave requests are categorized by the selected reason code

Exports and SIS Syncing

  • Reason codes are included in attendance exports via csv

  • Reasons are mapped to SIS based reasons in Integration Settings

  • SIS integrations use reason codes for data synchronization

  • External SIS systems which currently sync with reasons :

    • Blackbaud: Map to Blackbaud excuse types and categories

    • Veracross: Map to Veracross attendance reasons

    • Synergetic: Map to Synergetic absence reasons

    • FACTS: Map to FACTS attendance codes

Best Practices

Naming Conventions

  • Use clear, descriptive names (e.g., "Absent Excused" not "AE")

  • Keep short codes consistent and memorable (e.g., "AE", "AU", "TE", "TU")

  • Avoid special characters in codes - use only letters and numbers

Code Management

  • Avoid Duplicates: Ensure each reason code is unique across your school

  • Archive Instead of Delete: Archive unused codes to preserve historical data

  • Regular Review: Periodically review and clean up reason code lists

  • Document Changes: Keep records of reason code additions and modifications

SIS Integration

  • Map Carefully: Double-check SIS mappings before saving changes

  • Test Integrations: Verify reason codes sync correctly with SIS systems

  • Coordinate with SIS: Ensure reason codes align with SIS terminology

  • Backup Mappings: Export reason code configurations before major changes

Troubleshooting Common Issues

Can't Access Reasons Page

  • Verify you have Reasons permission under Additional Permissions

  • Contact your system administrator for access

Can't Save Reason Codes

  • Ensure reason name and code are both provided

  • Check that the short code is unique (no duplicates)

  • Verify the short code is 8 characters or less

  • Check for special characters in the code field

Reasons not visible on Creating or Editing Leaves

  • Confirm reasons are enabled for that pass/leave type

  • Verify that the reason codes haven’t been deleted

  • Check that the reasons are assigned to your staff role

  • If a pass requires a specific reason but the user doesn't have access to it:

    • Default reason is pre-populated - The system automatically fills in a default reason for the pass

    • Reason field appears grayed out - Users can see the reason but cannot change or edit it

    • Pass submission still works - Users can complete and submit the pass normally with the default reason

    • No error or blocking - The system doesn't prevent pass creation, ensuring smooth workflows

Reason Codes Not Visible on Roll Edit

  • Verify that the reason codes haven’t been deleted.

  • Check that the reasons are assigned to your staff role.

☝🏽 Note: Reason assignments don’t affect taking roll calls — only the role code does. However, when editing roll records, reason assignments are required.

SIS Integration Issues

  • Verify SIS integration is properly configured

  • Check that reason code mappings are correct

  • Review SIS sync logs for mapping errors

  • Contact technical support for integration issues

The Reasons page provides centralized management of attendance reason codes, ensuring consistent categorization across all attendance tracking activities. With proper setup and regular maintenance, reason codes will streamline your attendance management and provide valuable insights into student attendance patterns.

​Hope this was helpful. If you have any further questions, email us at support@orah.com or just click the blue chat icon at the bottom right corner of this page, we will help you navigate through it.

Did this answer your question?