# Custom Allowances

Source: https://docs.astalty.com.au/guide/scheduling/setup/custom-allowances

> Create your own allowances, add them to a worker's shift, and send them to Employment Hero, PayCat, QuickBooks Payroll or Xero as timesheet lines.

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

Custom allowances are allowances you define yourself, such as a working from home or remote area allowance, for anything your payroll pays that Astalty doesn't already work out from the award. You add them to a worker's shift, and Astalty sends each one to payroll as its own timesheet line with a number of units. Your payroll platform sets the amount paid for each unit.

## Before You Start

**Your payroll platform must be able to receive them.** Custom allowances are sent to [Employment Hero](https://docs.astalty.com.au/guide/integrations/employment-hero), [PayCat](https://docs.astalty.com.au/guide/integrations/paycat), [QuickBooks Payroll](https://docs.astalty.com.au/guide/integrations/quickbooks-payroll) and [Xero](https://docs.astalty.com.au/guide/scheduling/xero-integration-in-scheduling), and are included in the **Raw shift data** and **Xero-formatted timesheet** exports from a [timesheet batch](https://docs.astalty.com.au/guide/scheduling/timesheet-batches#export-timesheet-as-excel) on any platform. An account whose payroll platform is **Other** can use them too, and gets them only through those two exports. The platform is the **Platform** setting under **Payroll & Awards** in [Scheduling Settings](https://docs.astalty.com.au/guide/scheduling/setup/scheduling-settings#payroll-platforms).

**Only Admins can create, edit, archive and map them.** Managers with access to Scheduling can add them to the shifts they create or edit, but cannot create, change or map them. Team Members and Support Workers cannot see custom allowances, including on their own shifts and in the Support Worker app.

## How a Custom Allowance Is Paid

Astalty sends units, not dollar amounts. Each custom allowance on a shift becomes a timesheet line for that shift's worker, dated on the shift's approved start date, with no start or end time. Payroll multiplies the units by the rate of the work type or earnings rate the allowance is mapped to. On Xero, allowances mapped to the same earnings rate share one line on the worker's timesheet, split by cost code when timesheets carry cost code tracking. The allowance never changes the shift's own hours lines.

You choose how the units are counted when you create the allowance:

| Paid          | Units sent for each shift                                                                                                       |
| ------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| **Per shift** | The fixed number of units set on the allowance, however long the shift is                                                       |
| **Per hour**  | One unit for each paid hour of the approved shift - see [How Per Hour Units Are Worked Out](#how-per-hour-units-are-worked-out) |

## Creating a Custom Allowance

1. Go to **[Settings > Scheduling > Custom Allowances](https://app.astalty.com.au/settings/scheduling/allowances)**.
2. Select **Create Custom Allowance**.
3. Enter a **Name**. Your team chooses the allowance by this name. Employment Hero, PayCat and QuickBooks Payroll receive it as the line's comment. Each active allowance needs a different name.
4. Under **Paid**, choose **Per shift** or **Per hour**.
5. For a per shift allowance, enter the **Units per shift**. It starts at 1 and can be any amount above 0, up to 999.99 with two decimal places.
6. Under **On a shift cancelled with pay**, choose **Pays as if worked** or **Does not pay** - see [Cancelled Shifts](#cancelled-shifts).
7. Select **Create**.

![The Create Custom Allowance drawer with the Name set to Working from home, Paid set to Per shift, Units per shift set to 1, and Does not pay chosen under On a shift cancelled with pay.](https://docs.astalty.com.au/assets/custom-allowances-create-drawer-guide.png)

The **Custom Allowances** list shows each allowance's name and how it is **Paid**, noting **Not paid on cancelled shifts** for an allowance set to **Does not pay**. On an Employment Hero, PayCat or QuickBooks Payroll account it also shows the **Payroll Work Type** the allowance is mapped to, or **Not Linked** when it has none. On a Xero account it shows the **Xero Earnings Rate** instead: the earnings rate's name, **Not Linked**, or **Not in Xero** when the earnings rate has been deleted in Xero. The list shows active allowances by default; change the **Status** filter to **Archived** or **All** to see archived ones.

![The Custom Allowances settings list with five allowances, showing how each is paid (per hour worked or units per shift, with Not paid on cancelled shifts under Phone support and Working from home) and the payroll work type each is mapped to.](https://docs.astalty.com.au/assets/custom-allowances-settings-list.png)

## Mapping an Allowance to a Payroll Work Type

On Employment Hero, PayCat and QuickBooks Payroll, every custom allowance on a shift in a timesheet batch needs a work type before you can send the batch to payroll or export its payroll CSV. The **Raw shift data**, **SCHADS interpreted timesheet** and **Xero-formatted timesheet** exports don't need the mapping.

Set up the payroll side first. In your payroll platform, create a pay category for the allowance with the rate you pay per unit, then a work type that pays that pay category, and give the work type an **External ID**. Then map it in Astalty:

1. Go to **[Settings > Integrations](https://app.astalty.com.au/settings/integrations)**, select **Configure** on your payroll integration, and open **Custom Allowances**.
2. Open the allowance's actions menu and select **Edit Employment Hero Work Type Mapping**. The option is named after your payroll platform.
3. Choose the **Employment Hero Work Type**. The list comes from your payroll business, so connect the integration first. If your plan doesn't include the payroll integration, enter the work type's External ID in **Employment Hero Work Type External ID** instead. Both fields are named after your payroll platform.
4. Select **Save**.

![The Work Type Mapping drawer, mapping the Working from home custom allowance to the Working From Home Allowance work type in Employment Hero.](https://docs.astalty.com.au/assets/custom-allowances-employment-hero-mapping-guide.png)

The same mapping option is in each allowance's actions menu on **Settings > Scheduling > Custom Allowances**.

> **The work type must pay its own pay category**
>
> When the integration is connected, validating a timesheet batch checks each mapped work type in payroll. The export is blocked if the work type no longer exists, pays no pay category, or pays the employee's primary pay category, because the units would then be paid as ordinary hours. It is also blocked if the work type is one of the platform's own award work types paying a pay category that isn't a fixed rate, because payroll would apply its own rules rather than the units sent.

## Mapping an Allowance to a Xero Earnings Rate

On Xero, every custom allowance on a shift in a timesheet batch needs an earnings rate before you can send the batch with **Export Xero Timesheet (API)**. The **Raw shift data** and **Xero-formatted timesheet** exports don't need the mapping.

Set up the earnings rate in Xero first, at the rate you pay per unit. Then map it in Astalty:

1. Go to **[Settings > Integrations](https://app.astalty.com.au/settings/integrations)**, select **Configure** on Xero, and open **Custom Allowances**.
2. Open the allowance's actions menu and select **Edit Xero Earnings Rate Mapping**.
3. Choose the **Xero Earnings Rate**. The list comes from your Xero organisation, so connect the integration first.
4. Select **Save**.

The same mapping option is in each allowance's actions menu on **Settings > Scheduling > Custom Allowances**.

> **The earnings rate must be measured in hours**
>
> Xero only pays an allowance from a timesheet in hours, so an earnings rate that is a rate per unit needs a **Type of Units** of **Hours** or **Hour** - Xero accepts and pays both. Choosing one with any other Type of Units, such as Kilometres, shows a warning naming that unit, and the export is blocked until you choose another earnings rate or change it in Xero. Validating a timesheet batch checks each mapped earnings rate in Xero, and also blocks the export when the earnings rate has been deleted or archived there.

## Adding Custom Allowances to a Shift

Custom allowances belong to one worker's shift, not to the support, so each worker on a support can have different allowances. A shift can carry up to 20.

### When Creating a Support

When you create a Direct Support, Group Support, Flexible Group Support or internal event, the table of selected workers has a **Custom Allowances** column. The same column appears when you use **Add Attendees** on an existing internal event. Choose the allowances for each worker in their **Custom Allowances (optional)** field. Each worker's choices go on their own shift, and on every shift in the series when the support repeats.

![The Workers section of the create support form, with the Custom Allowances (optional) field open on Ken Kessler's row and Remote area loading and Working from home selected, each showing how it is paid.](https://docs.astalty.com.au/assets/custom-allowances-create-support-workers.png)

### On an Existing Shift

1. Open the support, select the three-dot menu next to the worker's shift and select **Edit Shift**.
2. Add or remove allowances in **Custom Allowances**.
3. For a shift in a recurring series, tick **Apply to this and all following shifts in the series** to give the following shifts the same allowances. Leave it unticked to change only this shift.
4. Select **Update Shift**.

![The Edit Shift drawer for Ceasar Hegmann's shift with Remote area loading and Working from home in the Custom Allowances field, and the Apply to this and all following shifts in the series checkbox below it.](https://docs.astalty.com.au/assets/custom-allowances-edit-shift.png)

Each allowance then shows as a badge on the worker's shift card.

![Ceasar Hegmann's shift card showing Working from home and Remote area loading badges below the shift's Published and Approved status.](https://docs.astalty.com.au/assets/custom-allowances-shift-card.png)

### Duplicating, Extending and Reassigning

- **Duplicating a support or cloning an internal event** copies each worker's custom allowances to the copy, except archived allowances.
- **Extending a recurring series** gives the new shifts the worker's active custom allowances.
- **Reassigning a shift** to another worker keeps its custom allowances, so the new worker is paid them. After a reassignment, check any allowance that depends on the person, such as working from home.

### When an Allowance Can't Be Added

The **Custom Allowances** field lets you remove allowances but not add them when:

- the allowance is archived
- custom allowances have been switched off for your account
- the shift is an unpaid break, which is never paid

Once a shift is in a timesheet batch, its custom allowances are locked and cannot be added or removed.

## How Per Hour Units Are Worked Out

A per hour allowance counts the shift's paid hours from its approved times, so approve the shift's hours in [Shift Approvals](https://docs.astalty.com.au/guide/scheduling/shift-approvals) before the batch is created.

| Shift                                                                                                                                                        | Units                                                                                                                                              |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| Most shifts                                                                                                                                                  | The approved start to end time, less any unpaid breaks. Paid breaks count. Across a daylight saving change, the hours actually worked are counted. |
| A shift with no approved times                                                                                                                               | 0 units, and no line is sent                                                                                                                       |
| A sleepover with a [sleepover window](https://docs.astalty.com.au/guide/scheduling/sleepover-window)                                                         | The active hours before and after the window, plus any approved active overnight periods inside it, less unpaid breaks                             |
| A sleepover support with no sleepover window                                                                                                                 | Only the approved active overnight periods. A sleepover with none gets 0 units.                                                                    |
| A SCHADS home care worker's [24-hour care shift](https://docs.astalty.com.au/guide/scheduling/scheduling-faq/schads-interpretations-in-astalty#24-hour-care) | 8 units, plus any approved time past the 24-hour period                                                                                            |

For example, a sleepover support from 3:00 PM to 9:00 AM with a 10:00 PM to 6:00 AM sleepover window and a 30-minute unpaid break gets 9.5 units: 7 hours before the window and 3 hours after it, less half an hour.

Units are rounded to two decimal places. A per shift allowance always sends its fixed units, whatever these rules give.

## Approving and Exporting Shifts With Allowances

When you expand a shift in [Shift Approvals](https://docs.astalty.com.au/guide/scheduling/shift-approvals), its **Custom Allowances** are listed with the shift hours. They cannot be changed from there.

![The Custom Allowances section of an expanded shift in Shift Approvals, listing Working from home and Remote area loading.](https://docs.astalty.com.au/assets/custom-allowances-shift-approval.png)

Custom allowances are sent with the rest of the shift when you send or export a [timesheet batch](https://docs.astalty.com.au/guide/scheduling/timesheet-batches):

- On Employment Hero, PayCat and QuickBooks Payroll, **Send to** your payroll platform, or **Export Employment Hero Timesheet (CSV)**, includes one line per allowance per shift. Both actions are named after your payroll platform. Validation stops the export when an allowance on a shift in the batch has no work type mapped, and its **Fix issue** button opens the integration's **Custom Allowances** page. See [Employment Hero validation errors](https://docs.astalty.com.au/guide/scheduling/timesheet-batches#employment-hero-validation-errors).
- On Xero, **Export Xero Timesheet (API)** adds the units to each worker's Xero timesheet on the mapped earnings rate. Validation stops the export when an allowance on a shift in the batch has no earnings rate mapped, or its earnings rate can't be used, and its **Fix issue** button opens the Xero integration's **Custom Allowances** page. See [Xero validation errors](https://docs.astalty.com.au/guide/scheduling/timesheet-batches#xero-validation-errors).
- **Raw shift data** adds a row for each allowance, with its units and the allowance name in **Comments**.
- **Xero-formatted timesheet** adds a row for each allowance, under the allowance's name, with its units on each day.
- **SCHADS interpreted timesheet** does not include custom allowances.

On Employment Hero, PayCat and QuickBooks Payroll, sending a batch again adds a second copy of every line, including allowance lines. To correct a batch you have already sent, use **Replace** instead.

## Cancelled Shifts

A shift cancelled with pay keeps its custom allowances. Each allowance's **On a shift cancelled with pay** setting decides whether it is still paid:

| On a shift cancelled with pay       | Units sent                                             | Use it for                                                                                                                  |
| ----------------------------------- | ------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------- |
| **Pays as if worked** (the default) | The units it would have sent had the shift been worked | An allowance that pays for the work, such as higher duties or a remote area loading                                         |
| **Does not pay**                    | None                                                   | An allowance that covers a cost the worker doesn't have when the shift is cancelled, such as working from home or a vehicle |

A shift cancelled with **No pay** is left out of timesheet batches, so its allowances are never sent. See [Support Cancellations](https://docs.astalty.com.au/guide/scheduling/support-cancellations).

## Changing or Archiving a Custom Allowance

To rename an allowance, select **Edit** from its actions menu. You can rename it at any time.

Once an allowance is on any shift in a timesheet batch, its **Paid**, **Units per shift** and **On a shift cancelled with pay** can no longer change, because a batch works out the units from them each time it is exported. To pay it differently, archive it and create a new allowance. The new allowance can reuse the archived one's name.

To stop an allowance being used, select **Archive** from its actions menu and confirm. An archived allowance cannot be added to shifts, but shifts that already have it keep it and still export it. Remove it from those shifts if it should not be paid. To bring it back, filter the list to **Archived** and select **Unarchive**. Unarchiving is refused while an active allowance has the same name.

## Where Else Custom Allowances Appear

- **[Shifts Export](https://docs.astalty.com.au/guide/exports/shifts-export) and [Completed Shifts Export](https://docs.astalty.com.au/guide/exports/completed-shifts-export)** add a **Custom Allowances** column listing each shift's allowances, once your account has shifts with allowances.
- **The shift's [audit trail](https://docs.astalty.com.au/guide/scheduling/support-audit-log)** records each time allowances are added or removed, and who made the change.
- **[Sleepover Migration](https://docs.astalty.com.au/guide/scheduling/sleepover-window#migration-eligibility)** does not merge supports whose shifts have custom allowances.

Astalty doesn't hold a rate for custom allowances, so they are not included in [Scheduling Costs](https://docs.astalty.com.au/guide/scheduling/scheduling-costs), the Award Interpretation tab of a timesheet batch, or [Staff Payments](https://docs.astalty.com.au/guide/finance/staff-payments).

## If Custom Allowances Are Switched Off

If custom allowances are switched off for your account after they have been used, nothing already on a shift is lost:

- Shifts that already have custom allowances keep them and still export them. You can remove allowances from a shift, but not add them.
- The **Custom Allowances** settings page becomes read-only, and payroll work type and earnings rate mappings can still be changed.
- Creating a timesheet batch warns you when shifts in the period still have custom allowances, so you can remove any that should not be paid.
