Skip to main content

Changelog - 21 September 2026

🆕 New Features

🔓 Clear System Locks — self-service management of system locks

Admin users can now view and clear stale system locks directly from a new System → Clear Locks screen, without needing to contact Catch-e support for most stale-lock situations.

This is available when:

  • You're logged in with the Admin role — no other standard role can see the menu item or the screen

Additional Details:

  • The screen sits under System, directly below Workgroups and above Change Password

  • Filter the current lock list by User Login and/or Table Name (Table Name includes process-style entries, not just database tables), then click Go to refresh the list

  • Ticking one lock automatically selects every other lock held by the same session, so a user's full set of locks can be cleared in one action

  • Certain critical locks — locks on an entire table, and locks tied to billing or system configuration records — are highlighted; they can't be deleted from this screen, so contact Catch-e support if one needs to be cleared

  • If the table behind a selected lock is affected by a long-running database query, deletion is blocked until the query clears; if it needs to be cleared urgently, contact Catch-e support

  • If a selected lock has already been cleared by someone else (or expired) by the time you click Delete, you're shown an alert rather than the request silently failing or partly succeeding

  • Every deletion is recorded in an audit trail noting who originally held the lock and who deleted it; deleting an active session's lock signs that user out immediately


📋 New "Resources" menu

Internal users can now access Catch-e's Feedback, Roadmap, Changelog, Status, Developers and Trust pages directly from a new Resources dropdown menu, without leaving the app.

This is available when:

  • The user's role is an internal role — the menu is not shown to external/client-facing roles.

Additional Details

  • The Resources menu sits alongside System in the top navigation.

  • Each link (Feedback, Roadmap, Changelog, Status, Developers, Trust) opens in a new tab.


⬆️ Enhancements

🏦 Configurable financier margin rates for quotes

Quotes can now apply a configurable interest rate margin — an increase or a discount — to the financier's base rate, in addition to the existing Client Margin. This replaces a piece of older, client-specific discount logic with a generic mechanism that Catch-e can configure by financier, and optionally by make, model or variant.

This is available when:

  • A margin rate has been configured that matches the quote’s financier (and, where applicable, its make, model or variant)

  • The quote's Variant, Quote Date, Client Code or Contract Type changes — the margin is re-resolved on each of those triggers (a Term change alone does not re-derive it)

Additional details:

  • The Financier Margin field sits on the Quote → Finance tab, directly below Client Margin: a discount shows in red, an increase in black

  • Financier Rate is now calculated as Base Rate + Client Margin + Financier Margin

  • Where more than one configured rate could match a quote, only the single most specific one applies — margins are never added together

  • A related fix: Client Margin now rounds to 2 decimal places before it's added into the Financier Rate, correcting a rare rounding/precision issue

  • Every Financier Margin change — made in the UI or via the API — is recorded in the audit trail

  • The API also now returns the resolved financier_margin_rate on quote create/update responses (the legacy create-quote endpoint used by some older integrations does not include it)


🔧 patchQuote updates

The patchQuote API can now accept seven additional fields, delivered across two updates.

Finance details

  • Early Termination Fee

  • Budget Financed

  • Residual Rate — editable on novated quotes only; on non-novated quotes any submitted rate is ignored and it continues to be derived from the Residual Amount as before

Additional fee fields

  • REVS/PPSR Fee

  • Fuel on Delivery Fee

  • Delivery Fee

  • Other Brokerage

All seven fields accept zero and are validated to reject empty, negative, non-numeric or over-precision values. Early Termination Fee, Budget Financed, and Residual Rate on novated quotes hold whatever value is explicitly set, including through later changes to the quote.

The four additional fee fields work a little differently: an explicit value wins when sent alongside another change in the same request, but — matching how these fields already behave on the Quotes screen — a separate, later request that recalculates the quote can still reset one back to zero.

Existing quotes and patch requests that don't reference any of these fields continue to save exactly as before.


💸 Salary-packaging transactions now update as soon as a receipt is posted or un-posted

Posting or un-posting a receipt batch now updates the linked salary-packaging transactions straight away, instead of waiting for a background update.

When the receipts against a pay-run billing add up to the full invoiced amount, the employee's packaging transactions move from Pending to Posted at the moment the receipt is posted. If a receipt is later un-posted and the billing is no longer fully receipted, those transactions move back to Pending, at the moment the receipt is un-posted.

For employees this means packaging transactions appear on their statement, and count towards their balance brought forward, as soon as the funds behind them are actually received — and disappear again, just as promptly, if a receipt is un-posted.

For finance teams it means packaging status reflects funds received in real time, in both directions.

Every change is recorded in the audit trail against the user who posted or un-posted the receipt.