By
El Copeland
November 25, 2025
•
20 min read
By the [run]Book
News
Solutions
Tutorials

In Episode 12 of By the [run]Book, Mendy and Connor continue their deep dive into HaloPSA release v2.204, covering the second half of this massive update. They break down critical enhancements across SLAs, custom fields, assets, chat, Google Workspace, billing, documentation, and integration workflows. This episode is ideal for MSP operators, service managers, and Halo administrators looking to understand not just what changed—but how those changes impact real-world processes.
Here's a few Key impactful updates featured in this episode:
· ATimezone option has been added to Agent details (998146)
Ensures holiday/PTO allowances calculate correctly based on each agent’s actualtimezone—preventing mid-day rollovers for distributed teams.
· Improvementsto the Google Workspace integration (987605)Updated user-matching options to now allow the use of both username and email.
· Restrictedasset relationship types (897671)
Allows admins to control which relationship types can be used between differentasset classes, preventing illogical or messy asset mappings.
· Separatepermission for impersonating users (747369)Impersonation no longer requires full admin rights, enabling safertroubleshooting and testing by leads, onboarding teams, or QA staff.
· Optionto select different email templates when sending invoices (574826)
Staff can now choose from multiple invoice email templates—helpful for voided,corrected, or specialized billing communications.
· NewSLA setting: user replies reset the response target even when on hold (920093)
Fixes unpredictable SLA behavior by ensuring user updates always reset theresponse timer, eliminating false breaches.
· Ticketlist filters now support Client, Site, and User custom fields (965190)
A major visibility upgrade that allows filtering by Client, Site, User customfields, and other options.
· Pre-paybalance type can now be set per contract (758980)
MSPs can now choose hours or currency on a per-contract basis—ideal for clientswith mixed prepay models like retainer hours and project funds.
Watch Now: By the [run]Book: Episode 12
For easier tracking, check out haloreleases.remmy.dev to filter and search HaloPSA updates by ID, version, and keyword.
Full Feature review:
A Timezone option has been added to Agent details which initially will only be used to ensure that the Holiday allowance calculations are correct | v2.204 #998146 | 2:04
Ensures holiday allowance calculations respect each agent’s timezone.
Various Embeddable Chat Widget API improvements | v2.204 #993194 | 7:42
Adds more customization and event capabilities to Halo’s external chat widget.
Various improvements to SAF management | v2.204 #987889 | 9:23
Enhances the Service Architecture Framework.
Improvements to the Google Workspace integration | v2.204 #987605 | 13:02
Adjusts Google user matching behavior.
Added a ticket setting to show the department a team belongs to when assigning/re-assigning | v2.204 #983485 | 15:29
Displays department context during ticket assignment.
The FAQ list now shows in the portal URL when navigating through the Knowledge Base | v2.204 #983353 | 16:02
Improves navigation clarity when browsing FAQs.
Slack notifications can now be triggered by CRM Note updates, Site updates and specific Agent Actions | v2.204 #982479 | 16:27
Expands Slack integration coverage.
Added Agent Team Mappings to Microsoft Entra ID | v2.204 #979667 | 16:36
Allows syncing team membership from Entra ID.
The change management fields ‘Impact’ and ‘Risk’ can now be used in Risk Score calculations | v2.204 #975163 | 19:31
Improves accuracy of Change Management scoring.
Added a general Ticket setting that when enabled, the Can Edit Advanced Ticket Details permission is required to bulk change Ticket Priority | v2.204 #971319 | 21:58
Adds protection against mass-priority edits.
Charge Rates/Types can now be ordered by a sequence number set on the Charge Rate/Type setup | v2.204 #969791 | 22:33
Enables custom sorting of charge rates.
Minor report Chart filtering UX improvements | v2.204 #969514 | 23:20
Improves visual continuity when filtering dashboard charts.
You can now use Client, Site and User Custom Fields as criteria for Ticket List filters | v2.204 #965190 | 24:58
Significantly expands filter capabilities.
Added option to send an Email to a specified Agent when a Runbook fails | v2.204 #957580 | 27:45
New notification option for automation failures.
Added a notification trigger for when a User uploads a document to a specific folder | v2.204 #955651 | 27:53
Useful for client-upload workflows.
Added Access Control to Folders when using Document Management | v2.204 #955650 | 28:09
Brings permissioning to folder-level document storage.
‘Top Level’ field now available when creating an Account/Prospect from the new Opportunity screen | v2.204 #923428 | 30:08
Allows proper top-level assignment for accounts/prospects.
Customer & Site level custom fields now have the option to be displayed under the customer record when logging a ticket | v2.204 #920539 | 32:06
Surfaces client metadata during ticket creation.
Added a global SLA setting to allow user updates to reset the response target regardless of whether the ticket is on hold | v2.204 #920093 | 34:13
Fixes a major SLA limitation.
Added the ability to restrict the allowed relationship types when relating assets | v2.204 #897671 | 39:30
Prevents invalid asset relationship mappings.
You can now import Service Level Agreements (SLAs) & Priorities using an XLS spreadsheet | v2.204 #841750 | 40:34
Enables bulk-import of SLA structures.
Added asset and service business and technical owners as notification recipients | v2.204 #801201 | 41:42
Provides more targeted asset/service notifications.
Improvements to the Jira Software integration | v2.204 #796046 | 43:04
Enhances mapping, syncing, and mention handling.
Unapproved holidays now show with a dotted border | v2.204 #795392 | 44:59
Better visibility in calendars.
You can now save emails from Mail Campaigns as email templates | v2.204 #762793 | 45:06
Allows reuse of campaign email layouts.
Pre-pay balance type can now be set per contract | v2.204 #758980 | 46:33
Adds contract-specific prepay logic.
You can now view the amount of hours invoiced so far on the billing tab of a ticket | v2.204 #749755 | 48:13
Adds visibility into billed time totals.
Added a separate permission for impersonating users | v2.204 #747369 | 48:37
Impersonation no longer requires full admin.
Added option to select different email templates when sending out invoices | v2.204 #574826 | 49:02
Choose among different invoice email templates.
Creating a Purchase Order from a Sales Order line will now set the Sales Order line Supplier field and updating the Purchase Order line price will update the Sales Order line cost | v2.204 #417125 | 50:38
Fixes cost/supplier syncing between SO → PO.

In this episode of By the Runbook, the team continues through the HaloPSA 2.212 release notes and spends time unpacking what several of these changes actually mean in practice. The conversation covers workflow design, mail campaigns, ticket views, reporting, and automation behavior, with especially useful commentary for MSPs trying to decide what to enable, what to ignore, and what to be careful with.
Watch Now: By the [run]Book: Episode 18
For easier tracking, check out haloreleases.remmy.dev to filter and search HaloPSA updates by ID, version, and keyword.
Check out MSP Blueprint for info on runbooks: MSPBlueprint
This allows the ticket screen to automatically refresh when a background automation completes.
Expands qualification matching to include custom field criteria.
Adds delayed and retry-based webhook processing options.
This change limits the available “From” addresses on a ticket action to mailboxes the assigned team can actually access.
Adds Email Address as another attribute option for follower behavior on the portal.
Allows changes to Mail Campaigns after they have started.
Restricts pipeline stages based on opportunity type.
Adds webhook processing options including delayed and retry handling.
Adds the ability to hide tickets from the change calendar.
Adds Service Users as a selectable option in distribution and user lists.
Allows campaigns to be sent from sales mailboxes.
Adds a warning when an action email will fail.
Adds asset relationship mapping during SQL imports.
Adds an isRunning field to asset discovery.
Expands qualification matching with custom field rules.
Allows ticket view to auto-refresh after automation runs.
Adds ability to update currency values on quotes.
Requires comments for negative KB feedback.
Adds control for showing nested tickets.
Enhances AI reporting capabilities.
Restricts KB edits to owners only.
Adds translation support in the portal.
Adds secondary MAC address support.
Adds character limits to text fields.
Adds more fields for OLA and rule reporting.
Prevents approvals from email replies.
Extends field copying to deeper ticket levels.
Adds primary asset as a runbook condition.
Adds AgentID variable for lookups.
Adds reporting changes to config tracking.
Adds filter profiles to child ticket views.
Adds more configuration options to other open tickets view.

Episode 17 warps up the breakdown of version 2.21 and begins 2.212, highlighting impactful updates across billing, SLA visibility, and ticket management. The team dives into major improvements like dynamic ticket filters, default billing templates, and better billing tab access controls. This episode is especially useful for MSPs looking to tighten billing accuracy, improve reporting visibility, and streamline ticket workflows.
Watch Now: By the [run]Book: Episode 17
For easier tracking, check out haloreleases.remmy.dev to filter and search HaloPSA updates by ID, version, and keyword.
The Billing tab is now visible to agents without requiring full billing permissions, with actions locked based on access.
Tickets on hold can now be included in SLA breached filters.
You can now define a default billing template applied automatically when creating a new customer.
Dynamic filters can now be used on ticket lists for more flexible querying.
This helps keep recurring invoices aligned when item third-party IDs change.
Recurring invoices now get the same due date option already available at customer setup.
This adds more control to portal-based approval workflows.
This extends alternate invoicing behavior down to the site level.
This helps prevent tickets from disappearing into inactive-agent limbo.
More ticket list criteria means more practical operational views.
This update improves the ManageEngine Endpoint Central integration.
Halo now supports generic OpenID Connect SSO.
You can now duplicate item bundles instead of rebuilding them manually.
This adds more naming flexibility to the UI.
This makes SLA breach reporting more honest and more useful.
A major improvement for standard billing configuration.
This adds more flexibility to meter-driven recurring billing.
Dynamic ticket filters add a much stronger filtering experience.
Cloning custom fields speeds up admin work.
This update improves chart label readability.
This update refines the encryption update workflow.
This improves call handling context.
This gives more control over quantity precision.
This improves flexibility when linking work records from sales orders.
This adds better billing visibility without fully exposing billing controls.
Spreadsheet imports can now target existing tickets by ID.
A small UI cleanup on the ticket details pane.
This adds flexibility for co-managed support models.
This improves control over CSP user mapping behavior.
This adds clarification around tax rate usage in Xero-linked setups.
This makes Avalara tenant cleanup easier from the client billing tab.
This is a strong automation improvement.
Custom table row deletion gets more precise.
This cleans up recurring invoice visibility.
This is a documentation/config clarity improvement.
Ticket rule assignment now supports more role-based options.
Approval rule logic gets another useful condition.
Supplier-related configuration gets more flexible.
Project templates now get more dynamic input from sales-order-driven creation.
This expands visibility in quote and sales order line views.
This makes customer/site control more precise.
The API docs continue to improve.
This improves ticket logging layout flexibility in the agent app.
This is an important reliability improvement for payment processing.
This adds more flexibility when services are generated from assets.
This improves parent/child ticket data behavior.
Third-party ID linking is now available across more entities.
Query Builder gets another field for reporting logic.
This expands visibility of account/prospect records in top-level views.
Custom buttons now get access control.
This adds polish to the opportunity creation experience.
This is one of the biggest integration-facing updates in the episode.

In Episode 16 of By the [run]Book, Mendy and Robbie continue reviewing HaloPSA v2.210, covering a wide range of updates across billing, workflows, integrations, AI, and asset management. The episode highlights several settings MSPs should review immediately—especially a billing change that can lock recalculation—as well as improvements to ticket automation, AI categorization, and service desk efficiency.
Watch Now: By the [run]Book: Episode 16
For easier tracking, check out haloreleases.remmy.dev to filter and search HaloPSA updates by ID, version, and keyword.
Editing billing time allocation will lock billing recalculation | v2.21 #1044274
A setting has been added to Billing configuration so that editing the billing time allocation on an action will lock the ticket from billing recalculation.
Credit notes can default to today’s date | v2.21 #1042924
A setting has been added to Credit Note configuration so that the Credit Date is set to today's date instead of the Invoice Date.
Auto-assign the next unassigned ticket when closing a ticket | v2.21 #1003964
Added a new setting that automatically assigns an Agent the next available Unassigned Ticket when they close a Ticket.
Parent tickets can inherit dates from child tickets | v2.21 #975755
Added a new Ticket Type setting: "Automatically set Start Date and Target Date based on Child Tickets".
This setting adds a new option for grouping ticket entities during invoice creation in the Ready for Invoicing area.
This setting locks a ticket from billing recalculation when billing time allocation is edited on an action.
A new variable has been added for adjusted opportunity value.
Workflow steps now require an outcome to be selected.
Invoices can now default to the customer’s main site address.
Credit notes can now default to today’s date instead of the original invoice date.
Halo can now remove FW: and RE: prefixes when creating tickets from email subjects.
AI generated summaries can now be displayed in ticket column profiles.
A new advanced setting enables configuration change tracking for Services.
A global setting can now display the asset DID as a read-only field.
Custom integrations can now use separate credentials per instance.
The Main Site Address field can now be used in client and site column profiles.
The instances area has been updated with a new loading method to improve performance.
Tickets generated from Contract Schedules can now be created a specified number of days before the appointment date.
Additional ownership-related fields are now available in asset column profiles.
Asset dependency diagrams can now display customizable fields.
The client API endpoint can now return website data when requested.
The Twilio WhatsApp integration has received multiple improvements.
Assignment rules can now be disabled during Salesforce sync.
Runbooks triggered via webhook can now use a secret URI parameter for authentication.
HubSpot quote imports now include a default user field.
Agents can automatically receive the next unassigned ticket when they close one.
Chat Bot input steps can now access browser local storage.
Additional configuration options are now available for asset system fields.
Asset custom buttons now support dynamic visibility.
Asset fields can now perform SQL lookups.
Stock bins can now be selected for non-serialized assets.
Date custom fields now support validation rules relative to the current date.
Workflow Stage can now be used in the report query builder.
The New Relic integration has received improvements.
The phone number requirement for anonymous portal tickets can now be configured per ticket type.
Parent tickets can automatically derive start and target dates from their child tickets.
AI can now suggest ticket categories from a configurable list.
A new setting expands how Agent Site Restrictions apply to users and organizations.
Halo now allows configuration of how appointment unique IDs are generated.