New: the Halo × Pennylane integration by Halentra is live. Take a look
Halentra
Home/Solutions/Halo/Release notes
Halo

Release notes

Current stable release
2.236.122
Latest beta
2.250.22

2.216.1

Unreleased

Released on Nov 7, 2025 · 158 updates

Added a new Mail Campaign Type: Nurture Campaign - Scheduled

#1080219

The existing Nurture Campaign type has been renamed to "Nurture Campaign - Triggered".


The new “Nurture Campaign – Scheduled” type functions similarly to the existing “Nurture Campaign – Triggered”, but with one key difference: rather than adding recipients based on updates to their associated entity (such as a User or Ticket record) or manually through a static Distribution List, this campaign type operates on a defined schedule.


At each scheduled interval, the campaign automatically checks the specified Recipient Distribution List to identify new users and begin the campaign for them. It will also remove (or cancel) the campaign for any users who are no longer part of that list, ensuring the campaign audience stays continuously in sync with the configured distribution list.

You can now use $ Chattranscript on a Ticket at any time when there is a linked Chat with an User

#1079619

Previously only populated when the variable was a part of the default details of a Ticket when it was being logged from a Chat.

Added $_INVOICELONGDESC to the available variables that can be used during pro-rata creation

#1079617

Added a setting to only apply date validation upon creation of entities

#1075315

There is now a setting on date custom fields to only apply the date validation upon creation of the entity, allowing updates to bypass the validation.


Settings have also been added at Ticket Type level to only apply Start/Target Date validation upon creation of the ticket.

Added the permission 'Can Override Device Change Who'

#1072389

The parameter "changetrackingwho" can be used in a payload to specify the agent against the change tracking record. This can either be the ID of the agent or the name of the agent.

Added the option 'Visible - Read Only' to asset type system field settings

#1069805

Added a setting to enable customer specific agreement reference generation

#1068707

When enabled, this setting changes how agreement references are generated, making them customer specific. 
Instead of checking all agreements, it now only looks at the selected customer's existing agreements when generating the next reference.

The setting can be found in Configuration > Agreements.

You can now map Halo Custom Fields to Sage Intacct fields where mappings are available

#1062129

Added a setting to Users Settings > Defaults to determine if a new Users' username should be set to their Email or not if there is already a User at the Site with the same Username

#1060115

Added two additional options to the tickets setting 'Sensitive Ticket restrictions'

#1056127

The new options are:

  • Users: Assigned user only  ||  Agents: Assigned team, Ticket followers, and Additional Agents
  • Users: Assigned user only  ||  Agents: Assigned agent (Team if unassigned), Ticket followers, and Additional Agents

Added settings to group by Agent Status in the Treeview, and to show a grouping of Agents by Status to Ticket Areas

#1056112

Two new settings have been added to Ticket Areas configuration:

  • Group Agents by their Status in the Treeview
  • Show a visible grouping for Agents in the Treeview based on their status

When the first setting is enabled, Agents in the Tree view will be ordered by their statuses sequence first, then ordered alphabetically within each status grouping.


When enabling the second setting, which you may only do if the first setting is enabled, a visual indicator of the Agents' statuses will be shown in the Treeview to clearly identify which Agents are on which status.


Offline agents will be shown last.

Unassigned Agent will be shown first, and ungrouped.

Applies to Tickets by Agent and Tickets by Team.


For example when viewing Tickets by Agent:

Added a setting for Asset Custom Buttons to disable the runbook queued confirmation popup

#1054838

Added a Chat flow action which can retrieve data from the User's browser local storage and map to Ticket or Chat Custom Fields

#1054416

Allowed non-integer IDs for multi-select custom fields

#1054352

This is only an option when using a custom integration lookup method and with "Value storage location" set to "Store a row for each field value".

Added new $ variables for Client Mention notifications

#1045900

$-CLIENTID

$-CRMNOTE

$-CRMDETAILS

$-CRMSUBJECT

$-CRMTIMESTAMP

Added "Mailbox" field to Ticket Types to allow Agents to set the default mailbox when creating new Tickets

#1044902

Added the v2 invoice merging method to allow more customisable merging options

#1032275

You can now use End Users and Site level Custom Fields on Ticket Column Profiles

#1029518

Added runbook ID as a filterable column on the integration runbook list view

#1029237

Added an end date column for software licences

#1013163

Added ticket type groups to change tracking

#1009333

You can now set automatic invoice reminders

#1008361

To set this up, there is now a new setting under:

Configuration -> Billing -> Invoice Creation -> Invoice Creation Settings -> Send automated invoice reminders after X number of days


This allows you to set a global default for all invoices. You can set this to '0' to disable globally.


This can be overridden at customer level and there is also an option to exclude customers for automatic reminders:

Customer -> Billing -> Invoice Settings:


Once enabled, whenever you send an invoice, the reminder email will automatically be queued for the specified date in the future and is visible by filtering by 'Upcoming' in the 'Automations' tab of Backend Monitoring. The email which is sent will use the Invoice Reminder email template, which is accessible under ID 345.


The reminder will not get sent if the invoice gets paid, voided or deleted before the reminder is sent.

Added the setting 'Approval delegation when out of office' to user settings

#1005500

You can now choose to use Criteria Groups on Ticket Rules

#992806

This allows creation of Groups of Criteria on Ticket Rules meaning only one Criteria Group has to match for the Rule to apply.


This can be configured per Ticket Rule by enabling the "Use Criteria Groups" option on the Ticket Rule.

Added a "Restrict field visibility to specific entities" option for CRM note custom fields, enabling admins to control which entities (Client, Site, or User) the field appears on

#985216

Added new global Chat setting - "Prevent multiple agents from connecting to a live chat simultaneously"

#985181

Added 'Current Time' and 'Day of Week' as new Chat flow criteria

#984329

Added SLA response/resolution breached criteria for Ticket Lists and Ticket Areas

#983753

You can now set a custom refresh rate for widgets

#979334

By default all widgets refresh every 2 minutes. This can be increased or reduced but will be capped at a minimum of 30 seconds and a maximum of 1 hour.


You must enable the advanced setting 'Show custom refresh rate setting on widgets':



This will then show the following field when editing a widget on a dashboard:


Once data has loaded, a timeout will be set for the custom refresh rate. This does not mean data is loaded every, e.g 30 seconds, but instead 30 seconds after the data has loaded.


Added the "include_all_custom_fields" http parameter when listing Assets via the API

#972951

When set to true, all custom fields will be retrieved for every asset in the list.


Additionally, the "includeassetfields" parameter can now be used without specifying an assettype_id

Added a setting to give more control over which action fields copy to children when adding actions to parent tickets

#967903

The ticket type setting below has been removed:

In its place is the following, allowing for more customisation in which fields will be copied to children:

Added in a setting that allows you to define the default Rich Editor Toolbar style

#967368

You can now use $-APPOINTMENTBOOKING{X} to link an End User to a specific booking type

#963310

Replace X with the ID of the desired booking type

Added AI Acknowledgement Emails at Ticket Type Level

#920858

You can now enable AI-generated acknowledgement emails per ticket type.

Each ticket type can include a custom AI prompt to personalise the acknowledgement email body and you can also select a dedicated AI acknowledgement email template.


Use the new $ AIACKNOWLEDGEMENT variable in your template to insert the AI-generated email body.


This functionality only generates the email body content, allowing your existing greeting and sign-off to remain in the template.

If AI content generation fails, the system automatically falls back to the standard acknowledgement email and its template.


NOTE: To use AI acknowledgement emails, the "Create acknowledgement emails in the background using an Automation" setting must be enabled under Configuration > Email > General Settings.

Added a runbook setting to log a ticket after X failed attempts in a row

#896368

This is configured per integration runbook under the "Advanced" tab and will only trigger when there are 0 retries remaining for the last X results in a row.


Once a ticket has been created, another one won't be generated until after the next successful run.

Added a setting to Etilize to only show items with a Price

#804419
  1. Note that this setting only appears when either of TechData reseller or Ingram Micro Reseller integrations are enabled
  2. It also includes a follow up setting for how many priced items to wait for, the larger the number the longer the wait.

Added an individual toggle for kb article links per page when enabled

#787515

You can now import Subscription products from Microsoft CSP

#779249

Minor change to internal trial creation

Also in 2.216.1 · 2.208.101

#1093189

Fixed an issue with exporting query builder reports to excel

Also in 2.216.1 · 2.208.101

#1092415

Fixed an issue with searching for services

#1091581

Resolved an issue with being unable to load Resource Booking Types with the Range defined as Minutes

#1091506

Resolved an issue with the Giacom integration importing Clients when they are not selected in the entities to import

Also in 2.216.1 · 2.208.101

#1091438

Fixed an issue with $-SYMPTOM not being set in the portal ticket confirmation screen

#1091051

Resolved a floating point UI issue affecting the main application view of Invoice Tax Total when using the Tax configuration to round tax after the total is calculated

Also in 2.216.1 · 2.208.101

#1090689

Added a hint to the "Roles that give an agent a named licence" setting

#1090044

Fixed an issue where contracts with a 2-yearly billing period could calculate incorrectly

Also in 2.216.1 · 2.208.101

#1089895

Fixed an issue with the Jamf integration not matching existing assets in Halo if you have reconfigured the Jamf integration as new

Also in 2.216.1 · 2.208.101

#1089865

Fixed a rare issue where rounding errors could occur on Invoices

Also in 2.216.1 · 2.208.101

#1089662

Fixed an issue with filtering values on quotations, sales orders and purchase orders

#1089612

Fixed an issue with adding dynamic field value visibility on dynamic sql fields

Also in 2.216.1 · 2.208.101

#1089252

Fixed typo when changing the icon against a dashboard

Also in 2.216.1 · 2.208.101

#1089220

Removed a hint from Custom Field setup, relating to using Integers as ID fields, that no longer applies

#1089010

Fixed a query builder issue with quote client field

Also in 2.216.1 · 2.208.101

#1088850

Fixed an issue where KB article creation failed even when the AI module was disabled

Also in 2.216.1 · 2.208.101

#1088800

Fixed an issue with deleting Azure Sentinel integration records

#1088695

Added a setting to allow the performance improvements to Device Change History to be enabled where appropriate

Also in 2.216.1 · 2.208.101

#1088687

Fixed a rare issue where unpopulated static single select fields could be set to a value of -1 while working on a ticket.

Also in 2.216.1 · 2.208.101

#1088671

Fixed an issue with the change management clash modal

#1088488

Fixed an issue with selecting AI suggestion type

Also in 2.216.1 · 2.208.101

#1088375

Fixed $ CF variables not populating for Dashboard Column Profiles

#1088108

Fixed an issue with removing single select asset field values

Also in 2.216.1 · 2.208.101

#1088097

Resolved an issue with the Test function on SQL calculated quantities returning an error when using $_INVOICELINEID

#1088042

Fixed an issue with currency displaying incorrectly in some cases

Also in 2.216.1 · 2.208.101

#1087887

Resolved an issue with being unable to update Sales Order lines price when using multi-currency and the system currency is in use

#1087871

Improved loading times with retrieving assets on tickets

Also in 2.216.1 · 2.208.93

#1087827

Minor performance improvement when loading Assets and their relationships

#1087794

Resolved an issue with Ninja System Tray emails failing to match Device ID when spaces exist in the numeric value

Also in 2.216.1 · 2.208.101

#1087752

Resolved an issue with Counter/Average widgets on dashboards showing "?" character instead of "0" when there is no data in the underlying report

Also in 2.216.1 · 2.208.101

#1087726

Fixed an error when attempting to import assets via the API without the _importtype property set

Also in 2.216.1 · 2.208.101

#1087395

Fixed an issue where any warnings thrown during the creation of a timesheet event, were not returned to the UI

Also in 2.216.1 · 2.208.101

#1087278

Fixed an issue with using non-supported time zones

Also in 2.216.1 · 2.208.101

#1086646

Minor change to a hint to reflect change in functionality around deleting Assets and Users when using Recurring Invoices

#1086590

Updated dark theme app background colour to increase contrast

#1086177

Resolved a UI issue with sending emails for Contracts when the details tab is pinned to the right side of the screen

#1086156

Resolved an error given when deleting an Invoice created from a Recurring Invoice when there are no previous Invoices or where there is a line with a value over 999,999

#1086012

Fixed an issue where attempting to add a Sales Mailbox email as a CRM note would not work

Also in 2.216.1 · 2.208.101

#1085947

Fixed an issue with assets not showing against users in some scenarios

Also in 2.216.1 · 2.208.101

#1085598

Resolved an issue with the creation of Recurring Invoice lines for a new Recurring Invoice from a Sales Order failing to use the Item Group automatic group creation

#1085466

Fixed an issue with multicurrency and negative numbers on invoices and quotes

#1085432

Fixed an issue with setting the primary asset status field to mandatory

Also in 2.216.1 · 2.208.101

#1085136

Fixed an error generating PDFs where the filename contains a comma

Also in 2.216.1 · 2.208.101

#1084786

Fixed an issue with the display of product item tax settings

Also in 2.216.1 · 2.208.101

#1084720

Fixed an issue where Email fields could fail to render when using Intellisense

#1084669

Fixed an issue where ServiceNow State mappings for service requests were not working

Also in 2.216.1 · 2.208.101

#1084609

Fixed an issue with the AI-generated KB Summary

Also in 2.216.1 · 2.208.101

#1084446

Fixed the fticketreference field being limited to 20 characters

#1084435

Resolved an issue when Date Done is configured to be the start time of an action causes the action to move by the "time taken" value when editing and saving

Also in 2.216.1 · 2.208.101

#1084387

Fixed an issue with approval delegation not updated the user field in the approval record

Also in 2.216.1 · 2.208.101

#1084314

Improved Addigy webhook logging

Also in 2.216.1 · 2.208.101

#1083908

Added a setting to use start and end tags to match onto phone numbers in email rules

#1083898

Start and end tags can now be used to match onto a phone number in the email subject using email rules of type 'Phone number in subject'.

Fixed an issue where Composite Reports couldn't be accessed by non-admins when using Read/Write permissions

Also in 2.216.1 · 2.208.101

#1083827

Fixed a minor issue with the ConnectWise Automate device import

Also in 2.216.1 · 2.208.101

#1083709

Fixed the Jira Software "test connection" appearing successful despite incorrect credentials

Also in 2.216.1 · 2.208.101

#1083202

Resolved an issue with Contract failing to be passed from the Recurring Invoice to the created Invoice

#1083189

Added index IX_id_include

#1083073

Fixed an issue where the action note for Agent Bookings would display incorrectly in some timezones

Also in 2.216.1 · 2.208.101

#1082811

Fixed an issue where Microsoft CSP subscription prices wouldn't import for Australian subscriptions

Also in 2.216.1 · 2.208.101

#1082774

Fixed an issue with n-central site mappings

Also in 2.216.1 · 2.208.101

#1082722

Fixed an issue when trying to edit stock bins as non-admin agent

Also in 2.216.1 · 2.208.101

#1082695

Fixed an issue with top level setting in the service configuration page

Also in 2.216.1 · 2.208.101

#1082401

Resolved an error thrown when creating new tickets with the Google maps address finding feature enabled

#1082124

Fixed an issue where ticket would should NaN

Also in 2.216.1 · 2.208.101

#1082103

Fixed an issue when the action number was not included in the Audit table when editing customfields

Also in 2.216.1 · 2.208.101

#1082099

Resolved an issue with payment webhooks failing when using multiple instances of Quickbooks Online at the same time

#1081923

Fixed an issue where the Halo Integrator would process all connections for the Dynamics 365 CRM Integration even if not enabled

Also in 2.216.1 · 2.208.101

#1081906

Fixed an issue where the halo_url parameter could not be used in the Access Token URL in custom integrations

#1081854

Fixed a visual issue where the username field on the SolarWinds Orion configuration page would appear blank

Also in 2.216.1 · 2.208.101

#1081842

Added a setting to allow users to access Tickets when no organisations have access to the Ticket Type

#1081380

Fixed an issue where admins cannot edit other agent accounts if they have an organisational group override

Also in 2.216.1 · 2.208.101

#1081302

Resolved an issue with actions added by Agents with accent characters in names failing to correctly be treated as an Agent in some cases

#1080827

Resolved a UI issue relating to select menus appearing behind calendars when creating a Contract schedule

#1080779

Fixed an issue with the notes tab on billing entities showing without the CRM permission

#1080548

Fixed reference error on Asset Types

#1080332

Fixed an issue with roadmap notes on the portal

Also in 2.216.1 · 2.208.101

#1080176

Added search functionality for Service Category dropdowns

#1080163

Fixed an issue where the status of a ticket would not update after an approval was rejected

Also in 2.216.1 · 2.208.101

#1080143

Fixed missing web.config rule for the Audio Recorder for on-premise customers

#1080066

Resolved an issue with using Actions with "Issue Item" system use as part of an Action group triggering a different Action

Also in 2.216.1 · 2.208.101

#1079999

Fixed an issue preventing items on a sales order being added to an existing purchase order even when the Date Sent field was empty

Also in 2.216.1 · 2.208.101

#1079884

Resolved a slowness issue when loading forecasting on a ticket or on a timesheet

#1079742

Fixed an issue where API only agents were unable to authenticate using a password grant type

Also in 2.216.1 · 2.208.101

#1079677

Fixed minor spelling issue within custom fields

Also in 2.216.1 · 2.208.101

#1079479

Resolved an issue meaning that some errors/warnings given when adding timesheet entries are not shown.

Also in 2.216.1 · 2.208.101

#1079422

Fixed an issue with device change tracking of asset relationships

Also in 2.216.1 · 2.208.101

#1079326

Fixed an issue with updating the primary service on a ticket via an action.

Also in 2.216.1 · 2.208.101

#1079241

Resolved an issue with exporting Decimal columns to Excel formatting with Date/Time instead of Decimal format

#1079124

Fixed issue with duplicate Automated Tickets being created

#1079094

Resolved an issue with Prepay rounding sometimes showing time output as 00:60 instead of 01:00

#1079090

Fixed an issue with automatically adding CC'd users to followers

#1078823

Resolved an issue with payment webhooks failing when using multiple instances of Quickbooks Online at the same time

Also in 2.216.1 · 2.208.101

#1078805

Fixed an issue with QuickBooks Online items not being able to be imported in rare cases due to an issue with invalid cast as integer

#1077106

Fixed a minor issue with budgets applied from templates when using days instead of hours

Also in 2.216.1 · 2.208.101

#1076907

Added SKU to Quote Line Import mappings

Also in 2.216.1 · 2.208.101

#1076877

Fixed an issue with Jamf Asset Tag mappings for mobile devices

Also in 2.216.1 · 2.208.101

#1076559

Fixed an issue with the event and notification condition display

#1076544

Fixed an issue where Custom Field values could incorrectly display as Dates in Audit logs

#1076531

Fixed an issue when cloning recurring invoices with meter readings

#1076092

Updated style of the app menu drop down (when the left hand sidebar is not in use)

#1073340

Fixed a minor tax issue with adding groups to invoices with Avalara enabled

Also in 2.216.1 · 2.208.101

#1073013

Fixed an issue where extension attribute mappings couldn't be added for mobile devices in Jamf

#1072924

Added extra validation on ServiceNow Action webhooks

#1067733

Fixed an issue where removing a recurring invoice line did not clear all linked sales order lines

#1067619

Fixed an issue with importing tickets with multi-select fields

Also in 2.216.1 · 2.208.101

#1065629

Fixed an issue with continuing a call after logging call notes to a ticket

Also in 2.216.1 · 2.208.101

#1065125

Added the ability calculate Target Hours on Timesheets using Shift hours for Agents using Shifts

#1061898

This option can be found in the Timesheets section in Time Management when shifts are enabled

Fixed an issue with using 'Action to perform when editing workflow progress' when the action is in an action group

#1061434

Fixed an issue where Quote Approval fields wouldn't display in some cases

#1056557

Fixed Category Note visibility issues

#1054925

Fixed an issue where AI Report Analysis could not be obtained without report write permissions

#1049982

Resolved an issue with showing the "Cancel appointment" system use action for the end user portal

#1049053

Fixed a minor issue with some integrations not displaying asset identifiers in logs when failing to update the asset in integrator imports

#1036718

Fixed a minor configuration issue with the SyncroMSP integration

Also in 2.216.1 · 2.208.101

#1009016

Fixed an issue when using the FAQ list user role restrictions

#1006125

Improved the default prompt for the report AI analysis functionality. The custom prompt field on the report now acts as a full override instead of appending to the system default prompt.

#984928

Fixed an issue with custom fields that use a custom integration method with a filter

Also in 2.216.1 · 2.208.101

#975606

Fixed an issue where the Product field wouldn't update when matching a rule on Actions

Also in 2.216.1 · 2.208.101

#842849

Fixed an issue where custom fields were not copied over when cloning a ticket template

#790115