Changelog

Follow new updates and improvements to Catch-e.

July 27th, 2026

This release brings a wave of new API capability to Catch-e. A full Approvals and Claims suite gives you control over Fleet Maintenance Approvals and Contract Claims end to end, backed by new reference data endpoints.

On top of that, the Whole of Life Driver Report now captures ECM amounts billed after a contract's end or suspend date for more accurate Employee Contributions and FBT, patchQuote handles Inclusion rules automatically on Contract Type changes, fuel cards can be created straight from the contract screen, and Adjustment Period budgets can now be managed through the API.

πŸš— Whole of Life Driver Report Enhancement

We've improved how Post-tax Collected (Employee Contribution) is calculated and displayed on the Whole of Life Driver Report.

Previously, ECM amounts from billings dated after a contract's end or suspend date were excluded from Employee Contribution calculations, even though those amounts were still billed against the lease. This could result in Employee Contributions being understated and FBT liabilities appearing higher than expected.

What's changed?

  • Employee Contribution calculations now include ECM amounts from billings that occur after the contract end or suspend date, where those billings relate to the lease.

  • This enhancement applies to ECM values sourced from both contract events and non-contract events.

  • FBT days available continue to be calculated using the actual contract end or suspend date and are not extended by the inclusion of later billings.

  • The Whole of Life Driver Report now more accurately reflects the total post-tax contributions collected over the life of the lease.

Benefits

  • More accurate Employee Contribution values.

  • Improved alignment between FBT calculations and actual lease billings.

  • More accurate Whole of Life reporting for post-tax contributions.

  • Reduced risk of overstated FBT liability calculations.

No action is required. This enhancement automatically applies to Whole of Life Driver Report calculations and ensures post-tax contributions are reflected based on all relevant lease billings, regardless of whether they occur before or after the contract end date.


πŸ”Œ New Approvals / Claims API Suite

We've released a new suite of Approvals / Claims APIs, providing programmatic access to create, manage, validate, post and un-post approvals through the Catch-e API. This enhancement modernises approval management and enables seamless integration with external applications and automated workflows.

Approvals APIs

Approval Management

Method

Endpoint

Purpose

GET

/fm/approvals

List and search approvals

POST

/fm/approvals

Create one or more approvals

GET

/fm/approvals/{approval_id}

Retrieve a single approval including maintenance lines

PUT

/fm/approvals/{approval_id}

Fully update an approval

PATCH

/fm/approvals/{approval_id}

Partially update an approval

DELETE

/fm/approvals/{approval_id}

Soft-delete an approval and maintenance lines

These endpoints support approval lifecycle management, including maintenance line creation and updates.

Approval Processing

Method

Endpoint

Purpose

POST

/fm/approvals/{approval_id}/check

Validate an approval before posting

POST

/fm/approvals/{approval_id}/post

Post an approval

POST

/fm/approvals/{approval_id}/unpost

Reverse a posted or history-only approval

These APIs allow approvals to be validated, posted and reversed programmatically while maintaining existing business rules and controls.

Reference Data APIs

Method

Endpoint

Purpose

GET

/fm/cause-codes

Retrieve Maintenance Cause Codes

GET

/fm/work-codes

Retrieve Maintenance Work Codes

GET

/fm/vmrs-codes

Retrieve VMRS Codes

These read-only endpoints provide access to the reference data used when creating and maintaining approval records and maintenance lines.

Benefits

  • Enables integration partners and internal applications to manage Fleet Maintenance Approvals through APIs.

  • Supports automation of approval workflows.

  • Provides validation capabilities prior to posting approvals.

  • Delivers secure permission-based access to approval processing functions.

  • Establishes a modern API foundation for future integrations and enhancements.

The new API suite includes support for approval validation, posting, un-posting, maintenance line management, reference code lookups, configurable business rules and role-based permissions. Existing approval functionality within Catch-e remains unchanged for users continuing to work through the standard application interface.

Claims APIs

Claim Management

Method

Endpoint

Purpose

POST

/fm/contract/claims

Create one or more claims

GET

/fm/contract/claims/{approval_id}

Retrieve a single claim including maintenance lines

PUT

/fm/contract/claims/{approval_id}

Fully update a claim

DELETE

/fm/contract/claims/{approval_id}

Soft-delete a claim and maintenance lines

These endpoints support claim lifecycle management, including maintenance line creation and updates.

Claim Processing

Method

Endpoint

Purpose

POST

/fm/contract/claims/{approval_id}/check

Validate a claim before posting

POST

/fm/contract/claims/{approval_id}/post

Post a claim

POST

/fm/contract/claims/{approval_id}/unpost

Reverse a posted or history-only claim

These APIs allow claims to be validated, posted and reversed programmatically while maintaining existing business rules and controls.

Benefits

  • Enables integration partners and internal applications to manage Contract Claims through APIs.

  • Supports automation of claims workflows.

  • Provides validation capabilities prior to posting claims.

  • Delivers secure permission-based access to claims processing functions.

  • Establishes a modern API foundation for future integrations and enhancements.

The new API suite includes support for claim validation, posting, un-posting, maintenance line management, batch creation, configurable business rules and role-based permissions. Existing claims functionality within Catch-e remains unchanged for users continuing to work through the standard application interface.


✨ New API: getContractPayRunDates

We've introduced a new getContractPayRunDates API that returns the available pay run dates for a contract, providing a simple way for integrations to retrieve billing periods and payment schedules associated with Salary Packaging contracts.

For each pay run, the API returns:

  • Pay Run Date

  • Billing Period

  • Billing Period Item Number

To ensure results are meaningful and easy to consume:

  • Duplicate budget records created by multiple posting classes are automatically consolidated into a single pay run entry.

  • Budget rows with uninitialised dates are excluded from the response.

  • Results are returned in billing period order.

The API also includes validation to ensure:

  • The contract exists.

  • The contract is linked to a valid Salary Package Item.

  • The caller has the required Contract:PayRunDates permission.

This new API provides a reliable source of contract pay run information for integrations and automated processes, making it easier to retrieve key payroll scheduling data from Catch-e.

πŸ“„ API Update: getContractBillingStatus

getContractBillingStatus can now return billing status information for a specific contract.

The endpoint provides detailed billing insights, including billing periods, life budget balances, rental billing summaries, lease structure information, and billing configuration details. This enables external systems and integrations to more effectively monitor billing activity and forecast upcoming contract billings.

Typical Use Cases

  • Determine whether billing has commenced for a contract.

  • Retrieve previous and upcoming billing periods and dates.

  • Review life budget values, including billed and remaining amounts.

  • Access rental billing summaries for initial, previous, next, and final billings.

  • Validate billing schedules and billing structures for reporting and integration purposes.

  • Support customer service and operational teams with real-time billing status information.

Benefits

  • Increased visibility into contract billing activity.

  • Simplified integration with external reporting and financial systems.

  • Improved forecasting through access to upcoming billing dates and periods.

  • Faster troubleshooting and reconciliation of contract billing queries.

  • Reduced manual effort when monitoring contract billing progress and budget utilisation.


πŸš€ Add Fuel Cards Directly from a Contract

Creating fuel cards is now faster and easier.

When viewing an eligible contract that does not already have a linked card, users will see a new Add Card link directly on the Contract screen. Selecting the link opens the Cards screen in create mode, automatically populates the Contract ID, and places the cursor in the Supplier Code field so card creation can begin immediately.

The Add Card link is available when:

  • The contract is associated with Posting Class Code F (Fuel).

  • The Contract Type is Accruals or Expenses - Approvals.

  • No card is currently linked to the contract.

  • The contract is being viewed in read-only mode.

This enhancement helps:

  • Reduce manual copying of Contract IDs.

  • Speed up card creation.

  • Minimise navigation between contracts and card management screens.

Existing behaviour remains unchanged for contracts that already have a linked card, with the existing card hyperlink continuing to display.


πŸ”„ Enhanced Inclusion Validation for Contract Type Changes via patchQuote API

We've strengthened how the patchQuote API manages Inclusion products when quotes are updated, ensuring Inclusion selections always align with the configured rules for the selected Contract Type.

With this enhancement:

  • Unavailable Inclusions can no longer be added to a quote. If an API request attempts to add an Inclusion that is configured as unavailable for the selected Contract Type, the request is rejected with a validation error.

  • Unavailable Inclusions are automatically removed when a Contract Type change makes them ineligible for the quote. Audit records are created to track these updates.

  • Preselected Inclusions are automatically added when a Contract Type change occurs and only a single valid plan exists for the Inclusion.

  • Contract Type changes are prevented if a required Preselected Inclusion has multiple plan options and cannot be automatically resolved. The API returns a validation error, allowing a plan to be selected before the change proceeds.

  • All validation is enforced regardless of the override_warnings_flag, ensuring Contract Type and Inclusion rules remain consistent across all quote updates.

This update improves data integrity, reduces manual intervention, and ensures Inclusion products remain compliant with Contract Type-specific business rules throughout the quote lifecycle.


🐞 Bug Fix: Support Updating Adjustment Period Budgets via Contract Budget APIs

We've resolved an issue where the updateContractBudgets API could only update the original budget entry for a billing period (billing_period_item_no = 1), making it impossible to update budgets associated with Adjustment Period entries.

As part of this fix:

  • The updateContractBudgets API now supports an optional billing_period_item_no parameter, allowing budget amounts to be updated against a specific billing period item.

  • The insertContractBudgets API now supports an optional billing_period_item_no parameter, enabling callers to create budget entries using a specified item number when required.

  • Validation has been improved to prevent duplicate item numbers within the same contract and billing period, returning a clear 422 validation error instead of a database error.

  • Existing integrations remain unaffected, with both APIs continuing to default to the original behaviour when billing_period_item_no is not supplied.

This fix enables Adjustment Period budget entries to be inserted and updated correctly through the API, addressing a limitation reported by Positive Salary Packaging.

July 13th, 2026

Changelog

Welcome to the latest Catch-e release! This is a big sprint for our API suite, with major upgrades to Quoting, Contracts and Card Services, plus a set of quality-of-life improvements and new integrations. Here's everything that's landed.


Quoting

Smarter field updates in patchQuote

Selected fields in the patchQuote API have moved from SET to OVERRIDE behaviour. Previously, a value sent as SET could still be overwritten by the system's default strategies (for example when a variant change re-triggered defaults). Fields declared as OVERRIDE now take precedence over system-calculated values, so the figure you send is the figure that sticks.

The updated fields by section:

  • Vehicle Details: warranty_kms, warranty_mths

  • Pricing Details: bonus_amount_net, dealer_discount_net, dealer_rebate_net, discount_net, margin_net, rebate_net

  • Registration/CTP Details: reg_initial_net, ctp_initial_net, plate_year, premium_plates_net

  • Vehicle Trade Details: trade_in_amount_net, deposit_net, disposal_fee

  • FBT Details: fbt_business_use, previous_fbt_value

If you integrate with patchQuote, values you supply for these fields will now reliably override system defaults rather than being recalculated over the top of. No payload changes are required, the fields behave more predictably, exactly as most integrations already expect.


Contracts & Payments

New Contract Payments API suite

Five new endpoints let you read and manage contract payment structures and their payment schedules via the API, no more needing to work through the UI for payment variations:

  • GET /fm/contract/payment-structures β€” list payment structures for a contract, with optional filters for payment_type (finance, comprehensive-insurance, finance-principal-interest, management-fee, roadside-assistance, sundry-payment) and status_flag (defaults to active)

  • GET /fm/contract/payment-structures/{id}/vary β€” retrieve a single payment structure

  • PATCH /fm/contract/payment-structures/{id}/vary β€” vary a payment structure, including schedule timing (periods_deferred, first_payment_due, payment_interval, due_day), placing payments on hold, and setting stop dates

  • GET /fm/contract/payment-schedules β€” paginated schedules for a payment structure, with optional payment_period_no filter

  • PATCH /fm/contract/payment-schedules β€” bulk-edit schedule payment_date, amount_net and amount_gst in a single batch

Additional Details

  • Four new permissions control access: ContractPaymentStructures:Get, ContractPaymentStructures:Vary, ContractPaymentSchedules:Get and ContractPaymentSchedules:Edit.

  • All changes write audit records, and batch schedule edits are all-or-nothing, so if any row in a batch fails validation, the whole batch rolls back so your data stays consistent.

  • Posted and history-only schedules are protected and can't be edited via the API.

New getContractEvents API

A new GET /fm/contract/events endpoint returns a paginated list of contract events, with optional filters for:

  • contract_id β€” events for a specific contract

  • posting_class_id β€” events for a specific posting class

  • table_name β€” one of fm_drivers, fm_client_cost_centres or fm_client_divisions

  • status_flag β€” active or deleted (defaults to active)

Filters can be combined and pagination is supported via page and page_size. Access is controlled by a new ContractEvents:Get permission, and responses follow the standard HAL format you'll know from our other collection endpoints. Ideal for audit trails, syncing contract activity into your own systems, or triggering downstream workflows.

FBT fields added to the Contracts API

The getContract and getContracts endpoints can now return a full FBT summary for a contract, bringing the API to parity with the FBT tab in Catch-e. A new opt-in embed=fbt parameter returns an _embedded.fbt object containing:

  • fbt_year_ending β€” the FBT year the figures are calculated for

  • start_of_year_date β€” start of the FBT year for the contract

  • fbt_year_days β€” days in this FBT year

  • gross_up_rate

  • tax_rate

  • budget_statutory_rate and actual_statutory_rate

  • budget_fringe_benefit and actual_fringe_benefit

Additional Details

  • The FBT fields are opt-in via embed=fbt on both GET /fm/contracts/{contract_id} and GET /fm/contracts. If you don't request them, your existing responses are completely unchanged β€” no integration changes required.

  • An optional fbt_year_ending=YYYY parameter calculates the fields for a specific FBT year, defaulting to the current FBT year when not supplied.

  • FBT fields are returned for contracts with an applicable FBT benefit type (operating, statutory or exempt). Contracts that can't support the calculation are silently skipped rather than breaking the response.

  • On the collection endpoint the FBT calculation runs per eligible contract on the page, so expect longer response times when using embed=fbt on lists. Swagger has been updated with the new parameters and response shape.


Card Services

New bulk import APIs for Cards

A full batch-based card import workflow is now available via the API. Upload a CSV of cards for a selected supplier and Catch-e validates every row, classifies each as create, update, invalid, duplicate or unauthorised, processes the valid rows, and gives you downloadable reports:

  • Upload & Validate β€” creates an import batch, validates all rows, and returns summary counts before anything is committed

  • Process β€” creates new cards and updates existing ones, returning a summary of created, updated, failed and skipped rows

  • GET /fm/cards/imports/{importBatchId}/errors β€” download an error CSV of invalid, duplicate or unauthorised rows

  • GET /fm/cards/imports/{importBatchId}/result β€” download a result CSV with the final outcome of every row, including the card_id for successful rows

Additional Details

  • Create vs update is determined automatically by supplier + card number, and each row must include a contract_id or reg_no.

  • Duplicate rows within the same file are detected and rejected with a clear reason, and blank optional values on updates won't overwrite existing data.

  • The workflow respects your Cards:Create and Cards:Update permissions independently β€” missing one won't block the other β€” and every successful create or update writes normal card audit history.

  • Frontend UI for managing bulk import for Cards is coming in the next few weeks.


Other enhancements

Residual Basis default at Client level

You can now set a default Residual Basis at the client level, with support in both the Catch-e UI and the API.

New quotes and contracts pick up the client's default Residual Basis automatically, reducing manual selection and keeping residual treatment consistent across a client's portfolio. Swagger documentation covers the updated API behaviour.

Automated LCC clearing with a client-level retention flag

Luxury Car Charge (LCC) clearing is now automated, and a new client-level retention flag lets you control whether LCC is retained or cleared for each client.

This removes a manual clearing step from your workflow. Set the retention flag once per client and Catch-e handles the rest.


Banking

Three new financial institutions for Driver/Employee bank accounts

Three financial institutions have been added, so Driver and Employee bank accounts with these BSBs can now be created and updated without validation errors:

  • BSB 671-000 β€” Cuscal Limited (People First Bank)

  • BSB 772-772 β€” Revolut Payments Australia Pty Ltd

  • BSB 840-303 β€” Zepto Payments Pty Ltd

Previously, attempting to save a bank account with one of these BSBs failed with a "financial institution not found" style validation error. These institutions are now available across all relevant screens and APIs, and existing BSB validation is unaffected.


Integrations & Data

New JATO vehicle data integration

Catch-e now integrates with JATO, a leading global provider of vehicle specification and pricing data. Reach out to us if you need help with this.

G-NAF address database updated to May 2026

Catch-e's address validation now runs on the May 2026 release of the G-NAF (Geocoded National Address File) database.

The May 2026 release adds around 41,000 addresses nationally, bringing the total to over 15.9 million Australian addresses, and retires roughly 7,000 invalid lot-numbered addresses in Queensland. Address lookups and validation in Catch-e now reflect this latest data.


Lily Improvements

Thank you to everyone for adopting Lily! We have continued to improve Lily’s base training dataset, improving over 20 articles in the past 2 weeks. We will continue to improve Lily’s training context and start rolling out new features over the coming months.


Questions

If you'd like more detail on any of these changes or want a hand with the new APIs, contact us through Lily. We’re more than happy to help. Don’t forget to check out our new customer portals:

support.catch-e.com.au

help.catch-e.com.au

feedback.catch-e.com.au

July 9th, 2026

Changelog

πŸ”Œ New API Endpoints: Posting Classes

We've expanded the Catch-e API suite to include Posting Classes, providing API consumers with direct access to posting class reference data alongside existing Posting Maps functionality.

✨ What's New

getPostingClasses
Retrieve a collection of Posting Class records.

getPostingClass
Retrieve a specific Posting Class using its unique posting_class_id.

Enhanced Validation
Request validation has been added for collection filters and posting_class_id lookups, ensuring consistent API behaviour and responses.

Permissions
PostingClasses:Get permission has been introduced to control access to these endpoints.

Updated API Documentation
Find the full API Swagger documentation here.


πŸ› οΈ Improved patchQuote and createQuote API Client Margin Validation

We've enhanced the patchQuote and createQuote APIs to provide stronger validation of the client_margin_rate field, ensuring client margin values comply with configured business rules.

πŸ”„ What's Changed

Validation for client_margin_rate Updates
These APIs now validate the client_margin_rate field whenever it is included in a request payload.

Support for Configurable Negative Margins
Negative client_margin_rate values are now evaluated against the qt.client_margin_allow_negative_flag global control, ensuring API behaviour aligns with business configuration settings.

Effective-Date Aware Processing
The validation logic respects the effective date of the applicable global control, ensuring the correct business rules are applied based on the quote date.

Improved Error Handling
Where negative client margins are not permitted, the API returns a clear validation message to assist developers in troubleshooting failed requests.

πŸ“‹ Additional Details

  • Positive client_margin_rate values continue to be accepted and processed successfully.

  • Negative client_margin_rate values are permitted when the applicable client_margin_allow_negative_flag control allows them.

  • Invalid or non-numeric client_margin_rate values are rejected during validation.

  • Successful updates continue to recalculate and return related finance values, for example: finance_rate, client_margin_net, finance_pmt_net, finance_pmt_gst

  • Existing behaviour remains unchanged when client_margin_rate is not included in the request payload.


πŸš€ Contract APIs Now Available in Production

Having recently announced an β€œEarly Access” period for our new Contract APIs, we are please to advised they are now available in Production.

βœ… Production ready Contract API endpoints

  • getContract

  • getContracts

  • createContract

  • patchContract

❀️ Thank You

Thank you to everyone who participated in the Early Access opportunity and provided valuable feedback. Your input has helped shape and refine these APIs for general availability.


Salary Packaging

βš™οΈ Automated Pay Run Invoicing & Reporting

We've introduced a new automation feature that streamlines the pay run invoicing process by automatically generating invoices and providing visibility of pay run status through a companion review report.

✨ What's Changed

Automatic Pay Run Invoice Generation
Pay run invoices can now be generated automatically using a scheduled job, removing the need to manually create invoices from the Pay Runs screen.

Scheduled Processing
Administrators can configure the frequency, execution time, and report recipients through System Administration β†’ Scheduler Jobs, ensuring invoices are processed consistently and on schedule.

Pay Run Status Review Report
A companion report is generated alongside invoice creation, providing visibility of pay runs that are pending, open, or past due before export to your accounting system.

Flexible Report Delivery Options
Reports can be delivered via email, made available in the Report Queue for download, or generated as a CSV file for further review and processing.

πŸ“‹ Additional Details

  • Reduces manual effort associated with pay run invoice generation.

  • Supports proactive review and correction of pay run data before export to accounting systems.

  • Updated pay run data can be re-imported and the process re-run to generate an updated invoice batch.

  • A Pay Run Invoice Date Review report is available to support data validation and exception management.


πŸ” Improved Driver Portal Lockout Recovery

We've enhanced the Driver Portal login experience to make it easier for drivers to regain access to their accounts after multiple unsuccessful login attempts.

✨ What's Changed

Automatic Password Recovery
When a driver reaches the configured maximum login attempt threshold. The system can now automatically trigger the password reset process where a valid email address is registered against the driver account.

Configurable Login Attempt Limits (maximum 8)
The maximum number of failed login attempts is now controlled via a configurable setting, providing greater flexibility for organisations.

Improved User Experience
Drivers now receive clearer messaging when an account is locked and, where applicable, are informed that a password reset email has been sent to their registered email address.

πŸ“‹ Additional Details

  • Existing two-factor authentication (2FA) lockout behaviour remains unchanged.

  • Auto-recovery only applies when enabled through system configuration.

  • Password reset emails are only sent when a valid email address is available for the driver.

  • The existing "Forgot Password" process continues to function as before.

  • Enhances self-service account recovery and reduces administrator intervention for driver login lockouts.


🐞 Improved Driver Tyre Claim Quantity Tracking

We've enhanced the Driver Portal tyre reimbursement process to ensure tyre claims accurately record the number of tyres selected by the driver.

βœ… Issue Resolved

Accurate Tyre Quantities Recorded
When drivers submit a tyre reimbursement claim, the correct tyre quantity is now recorded rather than defaulting all claims to a quantity of 1.

Improved Tyre Allowance Tracking
Tyre allowances will now be reduced by the actual number of tyres claimed, helping ensure balances remain accurate and up to date.

Support for Multi-Tyre Claims
Claims submitted for multiple tyres (such as 2 or 4 tyres) will correctly record the corresponding quantity against the maintenance record.

Existing Claim Processing Preserved
Fuel claims and all non-tyre reimbursement claims continue to behave as they do today, ensuring no impact to existing claim processes.


πŸ–₯️ Updated Contract Types Details Screen Layout

We've refreshed the Fleet β†’ Controls β†’ Accounts β†’ Contract Types β†’ Details screen to provide a cleaner, more consistent, and easier-to-use experience without changing any existing functionality.

πŸ”„ What's Changed

Posting Map ID Now Visible
Previously, the Contract Type's numeric identifier was not displayed on the Details screen. A new read-only Posting Map ID field is now shown near the Status field, making it easier to reference Contract Types for support, administration, and integration purposes.

Data Fields Expanded - Left column
Several fields in the left-hand section of the screen were previously narrow and difficult to work with, particularly when viewing longer values. Text entry fields within the main Contract Type details area, have been widened to make information easier to read, review and maintain. e.g.: Map Code

Order Address Flags Relocated
The Order Address Flags section (Invoice To, Delivery For, Registration To, and Registration Notification To) previously occupied the top-right section of the screen. These fields have been moved to the bottom of the left-hand column, creating a more logical layout and making better use of available screen space.

Quote Request Email Field Enhanced
The Quote Request Email To field has been moved from the middle of the screen to the top-right section and expanded in width, making email addresses easier to view and edit.

Cleaner Screen Alignment and Spacing
Inconsistent field spacing, alignment issues, and blank gaps between sections have been removed to provide a more streamlined and professional-looking layout.

πŸ“‹ Additional Details

  • No changes have been made to underlying functionality or business processes.

  • No database or API changes were required.

  • The update focuses solely on improving usability, readability and screen consistency.

  • Existing Contract Type data and behaviour remain unchanged.

June 29th, 2026

Changelog

Luxury Car Tax (LCT) 2026/27 Update

The Australian Taxation Office (ATO) has updated the Luxury Car Tax thresholds and car cost limits for the 2026/27 financial year.

These new values will automatically apply to all quotes with an effective date on or after 1 July 2026.

For more information please visit;

PAYG Tax Rate 2026/27 Update

The Australian Government has introduced updates to the PAYG income tax rates for the 2026/27 financial year.

These changes will automatically apply across all relevant tax tables and withholding schedules from 1 July 2026.

For more information please visit;

June 26th, 2026

New Feature

We’re introducing a new set of Contract APIs! These endpoints are available to trial in Staging, giving you an early opportunity to explore and provide feedback as we continue to refine them.

✨ What’s included

  • getContract
    Retrieve a single contract by its ID for quick access to detailed information.

  • getContracts
    Fetch a list of contracts, enabling efficient browsing, filtering, and bulk operations.

  • createContract
    Create new contracts programmatically to integrate contract creation into your workflows.

  • patchContract
    Apply partial updates to existing contracts without needing to replace the entire record.

⚠️ Important

  • These APIs are not yet production-ready

  • Functionality may change as we continue development

  • We encourage you to test and trial in Staging only

πŸ’‘ Why try it now?

Early access allows you to start shaping your integrations and provide feedback that helps us deliver a more robust final release.


🚧 Coming Soon: Contract Payments APIs

We’re working on a new set of Contract Payments APIs, currently still in development. These endpoints are not yet available, but will be released soonβ€”so stay tuned for further updates.

✨ What’s planned

  • getContractPaymentStructures
    Retrieve payment structures associated with a contract.

  • getContractPaymentSchedules
    Access detailed payment schedules, including timing and amounts.

  • varyContractPaymentStructures
    Update and adjust contract payment structures as needed.

  • editContractPaymentSchedules
    Modify payment schedules to reflect changes in payment arrangements.

⚠️ Status

  • Currently under development

  • Not yet available in Staging or Production

  • Details and functionality may evolve ahead of release

πŸ‘€ Watch this space

We’ll share another update as soon as these APIs are ready for testing.

June 18th, 2026

Changelog

πŸ“… 2026 Deployment Schedule Updated

We’ve published the 2026 deployment schedule to help you plan upcoming releases and UAT activities.

What’s new

  • Deployment dates from June 2026 onwards are now available

  • Includes aligned Sprint close timelines for better planning

Where to find it

🌸 Friendly Reminder: Lily Is Here to Help

Just a reminder that Lily is available to assist you throughout the platform.

What Lily can do

  • Provide contextual guidance while you work

  • Guide you to get help directly within the app

  • Source useful information when you need it

  • Submit support requests

How to use Lily

  • Look for Lily within the platform and interact as needed

  • No setup required β€” Lily is ready when you are

πŸ”’ Commission Lock Now Available on Quotes

We’ve introduced a new Commission Lock feature to give you greater control over quote values.

What’s new

  • You can now lock Commission Rate and Commission Fee at the quote level in the Quotes / Finance tab

  • When locked, commission values will no longer be automatically recalculated

  • A visual lock control is available directly in the quote UI

How it works

  • Locked commission values are preserved across quote updates

  • Users cannot manually edit commission fields while the lock is enabled

  • System recalculations will respect the lock by default

Flexibility retained

  • Commission can still be recalculated when required via system processes

  • Certain scenarios (e.g. agreed lessee rate rules) may still override the lock

Why this matters

This enhancement ensures you can maintain agreed commission values while still complying with required system rules.

πŸ‘οΈ ABN Tooltip on Client Name

We’ve improved visibility of client details by adding a quick-access ABN display.

What’s new

  • The client’s ABN now appears on hover over β€œClient Name” in the Quotes / Contract tab

  • Displayed in a small pop-up tooltip for easy viewing

How it works

  • Simply move your mouse over the β€œClient Name” to view the ABN

  • No clicks or navigation required

Why this matters

This enhancement makes key information quickly accessible while maintaining the existing layout and user experience.

🧾 BPAY Payments Batch Creation Issue Resolved + Bank Account Selection Added

We’ve fixed an issue preventing batch creation and improved flexibility in the BPAY Payments screen.

βœ… Fix

  • Resolved an issue where users were unable to create new batches or generate print files

  • Updated selection logic so contracts are now correctly included based on eligibility

  • Contracts are no longer restricted to those linked to salary-packaged types only

πŸ”§ Improvement

  • Added a new Bank Account field to the BPAY Payments screen

  • This supports clients with multiple companies and bank accounts

How it works

  • If only one eligible bank account exists, it will be automatically displayed

  • If multiple accounts exist, users can select from a dropdown list

Why this matters

This update restores critical functionality and ensures the BPAY Payments feature works reliably across all client setups, including those with multiple bank accounts.

πŸ”„ Improved Scheduler Job Parent & Child Status Management

We’ve enhanced how Parent and Child Job statuses are managed to improve usability, accuracy, and auditability.

βœ… What’s improved

  • You are now prompted when changing a Parent Job status: "Do you want to update the status of all child jobs as well?"

  • Option to update Child Jobs automatically in line with the Parent Job

  • Audit history is now recorded for both Parent and updated Child Jobs

How it works

  • If Yes is selected:

    • All Child Jobs in Active or Inactive states will match the Parent Job status

    • Jobs in other states (e.g. aborted) remain unchanged

    • Audit history is created for all affected records

  • If No is selected:

    • Only the Parent Job is updated

    • Existing behaviour is maintained

    • Audit history is recorded for the Parent Job only

Why this matters

This reduces manual effort, minimises the risk of missed updates, and ensures better data integrity and traceability across scheduled processes.

πŸ“Š Enhanced getContractFunds API Breakdown

We’ve enhanced the getContractFunds API to provide greater visibility into financial data.

βœ… What’s new

  • Added net and GST breakdowns for both budget and actual amounts

  • Existing fields remain unchanged and continue to display gross values

New fields

  • budget_net

  • budget_gst

  • actual_net

  • actual_gst

How it works

  • Gross values are still returned in the existing budget and actual fields

  • Additional fields now provide a clear split between net and GST components

Why this matters

This improvement gives better transparency and flexibility for reporting, making it easier to analyse and reconcile financial data.

πŸ“… 2026 Deployment Schedule Updated

We’ve published the 2026 deployment schedule to help you plan upcoming releases and UAT activities.

What’s new

  • Deployment dates from June 2026 onwards are now available

  • Includes aligned Sprint close timelines for better planning

Where to find it

🌸 Friendly Reminder: Lily Is Here to Help

Just a reminder that Lily is available to assist you throughout the platform.

What Lily can do

  • Provide contextual guidance while you work

  • Guide you to get help directly within the app

  • Surface useful information when you need it

  • Submit support requests

How to use Lily

  • Look for Lily within the platform and interact as needed

  • No setup required β€” Lily is ready when you are

May 29th, 2026

New Feature

We’ve launched Lily, a smarter way to get help, find answers, and contact supportβ€”all in one place.


✨ New

  • Chat with Lily
    Instantly ask questions or get help directly within the app.

  • Create Support Requests via Lily
    Lily can submit support requests on your behalf, no need to leave the page.

  • Help Centre Access
    Browse help articles and guides directly from the assistant.


πŸ”§ Improved

  • Recent Activity View
    Easily access your previous support conversations.

  • Enhanced Search Experience
    Faster, more relevant results when searching for help.