Agreement Item Funding Rollover
Overview
Many NDIS providers structure their Service Agreements as sequential, period-based Agreement Items (for example, quarterly) to match how the NDIS releases funds. When a period ends with unspent funds, those funds need to carry forward to the next period so they are not lost.
Agreement Item Funding Rollover automates this process. When an Agreement Item's period ends with a positive remaining balance, Maica transfers that balance to the next matching Agreement Item on the same Service Agreement. You can also trigger rollover manually via a Quick Action on the Agreement Item, and individual items can be excluded from the process entirely.
Rollover operates within a single Service Agreement. Cross-Service Agreement rollover is not supported.
Where do I find it?
Rollover runs automatically in the background and does not require manual interaction in most cases. When you do need to trigger it manually, open the relevant Agreement Item record and use the Process Rollover Quick Action.
How it works
Automatic rollover
Maica runs a scheduled batch job daily (by default at 1:00 AM) that processes Agreement Items whose period ended the previous day. For each eligible item, the system:
Calculates the remaining balance on the source Agreement Item (Total Allocated minus Expenditure and Committed). Because Total Allocated already includes any prior rollover amounts, this gives the correct remaining funds.
Finds the next sequential Agreement Item on the same Service Agreement that matches by Product (for stated items) or Support Category (for category items).
If a match is found and the remaining amount is positive, transfers the funds to the target item.
Marks the source item as processed and records the audit trail on both items.
If the rollover amount is zero or negative (the period was fully spent or overspent), the source item is simply marked as processed with no funds transferred.
Manual rollover
You can also trigger rollover manually using the Process Rollover Quick Action on any Agreement Item record. This is useful when:
You need to roll over funds before the scheduled job runs
The automatic process did not find a matching target and you want to select one manually
You want to override the auto-detected target with a different Agreement Item
The Quick Action presents a preview screen showing:
The source item's financial summary (allocated, expenditure, committed, remaining)
The auto-detected target item (if one was found)
An option to select a different target from eligible items on the same Service Agreement
Rollover can only be processed once per Agreement Item. Once processed, the source item cannot be rolled over again, and the target item cannot receive a second rollover.
Target matching logic
When looking for the next sequential Agreement Item, the system applies the following rules:
Same Service Agreement. The target must belong to the same Service Agreement as the source.
Product or Category match. The target must share the same Product (for stated items) or the same Support Category (for category items).
Date window. The target's Start Date must fall on or after the source's End Date, within the configured gap tolerance.
Not excluded. The target must not have the Exclude from Rollover checkbox checked.
Not already received rollover. The target must not already have a Rollover Amount In value.
Earliest wins. If multiple candidates match, the one with the earliest Start Date is selected.
Configuring rollover
Service Agreement settings (Custom Setting)
Navigate to Service Agreement Settings (Custom Settings) to configure the following org-wide defaults:
Enable Agreement Item Rollover
Master switch for the automatic rollover batch job. When unchecked, the scheduled job runs but does not process any items.
Default Rollover Gap Tolerance
The default maximum number of days allowed between a source item's End Date and a target item's Start Date for automatic matching. Set to 1 for the standard NDIS pattern where the next period starts the day after the previous one ends (for example, Q1 ends 31 March, Q2 starts 1 April). Set to 0 only if target periods start on the same day the previous period ends.
Rollover Processing Time
The time of day (in 24-hour format, for example 01:00) when the daily rollover batch job runs. Defaults to 1:00 AM if not specified.
Service Agreement-level settings
Each Service Agreement has settings that control rollover behaviour for its Agreement Items:
Enable Funding Rollover
Enables rollover processing for this Service Agreement's items. Must be checked for both automatic and manual rollover to work.
Rollover Gap Tolerance
Overrides the org-wide default gap tolerance for this specific Service Agreement. Leave blank to use the org default.
The Service Agreement must also have a Status of Active for the automatic batch job to pick up its items. Manual rollover via the Quick Action does not require Active status.
Agreement Item-level settings
Exclude from Rollover
When checked, this item will not participate in the rollover process. It will not send funds to a future period and will not be selected as a target for incoming funds. Use this for one-off purchases, trial periods, or items that should remain budget-isolated.
The Exclude from Rollover checkbox must be set before the period ends for it to take effect on the automatic batch job.
Rollover fields on Agreement Item
After rollover has been processed, the following fields are populated on the source and target Agreement Items.
Source item (funds sent)
Rollover Amount Out
The amount of unspent funds transferred to the next period.
Rollover Date Out
The date when the rollover was processed.
Rollover Target Item Name
The name of the Agreement Item that received the funds.
Rollover Processed
Checked when rollover processing is complete.
Rollover Processed Date
The date when processing occurred.
Target item (funds received)
Rollover Amount In
The amount of unspent funds received from the previous period. This amount is automatically incorporated into Total Allocated, increasing the net budget.
Rollover Date In
The date when the rollover funds were received.
Rollover Source Item Name
The name of the Agreement Item that sent the funds.
How Total Allocated reflects rollover
Total Allocated is the net budget field. It is calculated automatically as:
After rollover, the source item's Total Allocated decreases (funds moved out) and the target item's Total Allocated increases (funds received). This means Total Remaining (Total Allocated minus Expenditure minus Committed) is automatically correct on both items without any additional formula fields.
The Service Agreement-level Total Allocated (a rollup summary of all child Agreement Items) remains unchanged after rollover, because the decrease on the source item exactly offsets the increase on the target item.
Example walkthrough
Consider a participant with quarterly Agreement Items for Support Coordination:
Q1 (Jan-Mar)
$5,000
$3,200
$1,800
Q2 (Apr-Jun)
$5,000
--
--
The batch job runs at 1:00 AM on 1 April.
It finds the Q1 item ended yesterday with $1,800 remaining (Total Allocated minus Expenditure and Committed).
It matches Q2 as the next sequential item (same product, start date within tolerance).
$1,800 is transferred: Q1 gets Rollover Amount Out = $1,800, Q2 gets Rollover Amount In = $1,800.
Total Allocated automatically recalculates on both items:
Q1's Total Allocated decreases to $5,000 − $1,800 = $3,200 (funds moved out).
Q2's Total Allocated increases to $5,000 + $1,800 = $6,800 (funds received).
Q1's Total Remaining = $3,200 − ($3,200 + $0) = $0 (fully spent or rolled).
Q2's Total Remaining = $6,800 − ($0 + $0) = $6,800 (full net budget available).
The Service Agreement's rollup Total Allocated remains $10,000 throughout. Rollover moves funds between periods, it does not create or destroy them.
Troubleshooting
Rollover did not run automatically
Verify Enable Agreement Item Rollover is checked in Service Agreement Settings.
Verify the Service Agreement has Enable Funding Rollover checked and Status is Active.
Verify the Agreement Item is not marked as Exclude from Rollover.
Check the Default Rollover Gap Tolerance. If set to
0, the target's Start Date must exactly equal the source's End Date. For the standard NDIS pattern (next period starts the day after), set this to at least1.
"Already been processed" error on the Quick Action
The source Agreement Item has already had rollover processed. Each item can only be rolled over once. Check the Rollover Processed checkbox and Rollover Amount Out field to see what happened.
"Already has a rollover amount" error on the Quick Action
The selected target Agreement Item has already received rollover funds from another source. Each target can only receive one rollover. Select a different target item.
No auto-detected target found
The system could not find a matching Agreement Item. This can happen when:
No future Agreement Item exists with the same Product or Support Category
The gap between periods exceeds the configured tolerance
All matching candidates are excluded from rollover or already have rollover amounts
Use the manual target selection in the Quick Action to choose an eligible item.
Last updated
Was this helpful?