# Qualification Checks When Rostering

Source: https://docs.astalty.com.au/guide/scheduling/qualification-checks

> What schedulers see when a worker doesn't hold a required qualification, and when it warns rather than blocks.

Scheduling add-on - This feature requires the Scheduling add-on, which is available on Astalty Premium. See How to enable Scheduling.

## Overview

Once required qualifications have been set up - either [against a role](https://docs.astalty.com.au/guide/settings/users-settings/qualifications) or [against a Participant](https://docs.astalty.com.au/guide/participants/required-qualifications) - Astalty checks them every time you roster someone, and surfaces the result in a few places across scheduling.

There are two possible outcomes:

- **Warn** - the worker is flagged, but you can still roster them.
- **Block** - the save is rejected and the worker can't be selected.

## Saving a Shift or Support

This is the check that always applies. If you try to save a shift or support with a worker who fails a **Block**-level requirement, the save is rejected with an error naming the worker and the qualifications they're missing:

> Jane Citizen cannot be assigned without the required qualification(s): First Aid, NDIS Worker Screening.

The error appears against the **Support Workers** field. **Warn**-level issues never produce this error - those saves go through normally.

> **Saving is the definitive check**
>
> The greying-out described below is a convenience that helps schedulers avoid a rejected save. It doesn't appear on every screen, and it only ever covers role-based requirements.
>
> The check when you **save** is the one that always holds, on every screen, covering both role and Participant requirements. If the two ever appear to differ, trust the save.

## On the Schedule

A small red or amber **file-with-an-X** icon appears next to a worker's name when they have a qualification issue:

- **Red** means at least one issue is **Block**-level.
- **Amber** means the issues are **Warn**-level only.

Hovering it shows **Missing qualifications**, then one line per issue:

> First Aid is required but the worker does not hold a valid one.
>
> Manual Handling is required by this participant but the worker does not hold a valid one.

You'll see this indicator in two places.

On the **[Schedule](https://app.astalty.com.au/scheduling/schedule)**, it sits under the worker's name in the left-hand row labels - next to their rostered hours - when the calendar is grouped by Support Worker:

![The Schedule grouped by Support Worker and searched for Chadd. An arrow points to the highlighted small red file-with-an-X icon beside Chadd Metz's rostered hours, 9 / 15 hrs, in the left-hand row label, indicating a missing qualification.](https://docs.astalty.com.au/assets/qualifications-schedule-row-indicator.png)

In **All Shifts**, it sits under the worker's name in the **Support Worker** column, against each affected shift:

![The Shifts table on All Shifts searched for Sally Jones on 30 Oct 2026, showing a published shift and a published group support. An arrow points to the highlighted small red file-with-an-X icons under the worker's name in the Support Worker column on each row.](https://docs.astalty.com.au/assets/qualifications-all-shifts-indicator.png)

> **The two indicators can differ**
>
> The indicator on the **Schedule** row label checks **role-based requirements only**, as at the date the calendar is showing.
>
> The indicator in **All Shifts** is checked against each specific shift - so it also includes any **participant** requirements, as at that shift's start time.
>
> A worker can therefore show clean on the calendar row but flagged on a particular shift. This is expected.

## Choosing a Worker

When you pick a worker from the suggestions list - including on the **shift board** and when creating a **group support** - failing workers are handled for you.

A worker who fails a **Block**-level requirement has their row **greyed out and unselectable**, with a red chip in the **Preferences** column reading **Qualification - Selection Blocked**. Hovering it explains:

> This support worker cannot be assigned to this support because they do not meet the qualifications required.

They're also skipped by bulk selection - **Select All**, **All Compatible** and **Preferred Only** won't pick them up.

A separate **Qualifications** column shows a chip per issue, named for the qualification: red for **Block**, amber for **Warn**. A worker with only amber chips stays fully selectable.

### A Worker Who Is Already Selected

Blocking governs *adding* a worker, not removing one. A worker can be ticked and then become blocked - you moved the shift to a date their First Aid no longer covers, or you cloned a Support they were already on. When that happens you can still untick them.

Their row keeps its selected highlight and a working tick, and the chip reads **Qualification Not Met** instead of **Qualification - Selection Blocked**, because selection isn't what's blocked any more. Untick them and the row reverts to the greyed-out blocked style, so they can't be added back.

![The Select Support Workers list for a cloned group support, with Support Worker, Preferences and Qualifications columns. Sally Jones is ticked and highlighted, her Preferences column reading Qualification Not Met and her missing qualifications listed under Qualifications, while the unticked Jack Brown below reads Qualification - Selection Blocked.](https://docs.astalty.com.au/assets/group-support-clone-qualification-not-met.png)

This applies anywhere workers are picked with tickboxes - creating or [cloning a group support](https://docs.astalty.com.au/guide/scheduling/adding-shifts/adding-a-group-shift#support-workers-who-can-no-longer-be-assigned), and on the **Shift Board**.

> **A group support warns you about blocked workers up front**
>
> On a group support, blocked workers are also listed in a warning above the selected Support Workers, naming the qualifications each one is missing before you press **Create**. See [Support Workers Who Can No Longer Be Assigned](https://docs.astalty.com.au/guide/scheduling/adding-shifts/adding-a-group-shift#support-workers-who-can-no-longer-be-assigned).

> **Failing workers aren't pushed to the bottom of the list**
>
> Qualifications are only the fifth tiebreaker when sorting worker suggestions - after incompatibility, availability, preferred workers and preferences.
>
> A worker with a qualification issue can still appear above a fully qualified worker if they rank higher on one of those earlier criteria. Read the chips rather than relying on position in the list.

## Checks Use the Shift Date, Not Today

Everywhere in scheduling, a worker's qualifications are checked **as at the shift's start time** - not as at today. That means a worker whose First Aid expires next month:

- **can** be rostered onto a shift next week, and
- **cannot** be rostered onto a shift after the expiry date, if the requirement is set to **Block**.

This is deliberate - it stops you building a roster that will be non-compliant by the time it's worked.

> **The compliance report uses a different date**
>
> The [Qualifications Compliance Report](https://docs.astalty.com.au/guide/reports/qualifications-compliance-report) and its export check qualifications **as at right now**, not as at a shift date.
>
> So the same worker whose First Aid expires next month is blocked from a shift after that date, while still showing as perfectly compliant on today's report. Both are correct - they're answering different questions.

## Finding Out Why a Worker Failed

The indicators and error messages on the schedule name the **qualification**, but not the reason - they only say the worker doesn't hold a valid one.

To find out *why* - whether the record is missing, expired, awaiting verification or declined - check the [Qualifications Compliance Report](https://docs.astalty.com.au/guide/reports/qualifications-compliance-report), or open the worker's **Records** tab.

## Related Guides

- [Required Qualifications in Settings](https://docs.astalty.com.au/guide/settings/users-settings/qualifications) - set up role-based requirements.
- [Required Qualifications for a Participant](https://docs.astalty.com.au/guide/participants/required-qualifications) - set up Participant-based requirements.
- [Lapsed Qualification Notifications](https://docs.astalty.com.au/guide/notifications/lapsed-qualification-notifications) - get told when a worker on an upcoming shift is no longer qualified.
