---
title: How we built a custom service catalogue in HubSpot using UI extensions and automation
description: Discover how we engineered a custom service catalogue in HubSpot with UI extensions and automation for a leading financial advisory firm, enhancing operational efficiency and revenue tracking.
image: https://www.engaging.io/hubfs/amy-hirschi-JaoVGh5aJ3E-unsplash.jpg
---

[Skip to content](https://www.engaging.io/blog/how-we-built-a-custom-service-catalogue-in-hubspot-using-ui-extensions-and-automation#main-content)

[![Engaging.io logo](https://www.engaging.io/hs-fs/hubfs/raw_assets/public/Engaging-2025/images/site-logo-pack/Engaging-Logo-2026.png?width=143&name=Engaging-Logo-2026.png)](https://www.engaging.io)

[Case studies](https://www.engaging.io/case-studies)  Services  Industries  Products  About us

![search icon](https://www.engaging.io/hs-fs/hubfs/raw_assets/public/Engaging-2025/images/module-icons/main-search-icon-HR.png?width=44&name=main-search-icon-HR.png)

![search close icon](https://www.engaging.io/hs-fs/hubfs/raw_assets/public/Engaging-2025/images/module-icons/main-search-close-HR.png?width=24&name=main-search-close-HR.png)

[Get in touch](https://www.engaging.io/contact-us)

[AI services](https://www.engaging.io/ai-services) [Custom integrations and configuration](https://www.engaging.io/services/custom-hubspot-integrations-and-system-sync-solutions) [CRM migration and onboarding](https://www.engaging.io/services/crm-migration-to-hubspot-onboarding-implementation-services) [Custom membership portals](https://www.engaging.io/services/custom-hubspot-membership-portals-secure-self-service-platforms) [Data migrations](https://www.engaging.io/services/crm-hubspot-data-migrations) [Data cleansing](https://www.engaging.io/services/data-cleansing) [Data lakes and architecture](https://www.engaging.io/services/enterprise-data-lake-architecture-build) [Digital transformation and change management](https://www.engaging.io/services/digital-transformation-services-change-management) [Websites](https://www.engaging.io/services/hubspot-cms-websites)

[Sports and entertainment](https://www.engaging.io/sports-and-entertainment) [Medical and health](https://www.engaging.io/medical-and-health) [Education](https://www.engaging.io/education) [Restaurants and clubs](https://www.engaging.io/restaurants-and-clubs) [Experience and travel](https://www.engaging.io/experience-and-travel) [Finance](https://www.engaging.io/finance) [Property development and real estate](https://www.engaging.io/property-development-and-real-estate)

[JinnSync](https://www.engaging.io/our-products/jinnsync) [MailSync](https://www.engaging.io/our-products/mailsync) [Real Estate Syncer](https://www.engaging.io/our-products/real-estate-syncer)

[Who we are](https://www.engaging.io/who-we-are) [Life at Engaging](https://www.engaging.io/life-at-engaging) [Blog](https://www.engaging.io/blog)

[![Engaging.io logo](https://www.engaging.io/hs-fs/hubfs/raw_assets/public/Engaging-2025/images/site-logo-pack/Engaging-Logo-2026.png?width=143&name=Engaging-Logo-2026.png)](https://www.engaging.io)

![menu-default-icon](https://www.engaging.io/hs-fs/hubfs/raw_assets/public/Engaging-2025/images/module-icons/Menu-default.png?width=30&name=Menu-default.png) ![menu-default-icon](https://www.engaging.io/hs-fs/hubfs/raw_assets/public/Engaging-2025/images/module-icons/Menu-close.png?width=30&name=Menu-close.png)

[Get in touch](https://www.engaging.io/contact-us)

![search icon](https://www.engaging.io/hs-fs/hubfs/raw_assets/public/Engaging-2025/images/module-icons/main-search-icon-HR.png?width=44&name=main-search-icon-HR.png)

![search close icon](https://www.engaging.io/hs-fs/hubfs/raw_assets/public/Engaging-2025/images/module-icons/main-search-close-HR.png?width=24&name=main-search-close-HR.png)

[Case studies](https://www.engaging.io/case-studies)

 Services

[AI services](https://www.engaging.io/ai-services) [Custom integrations and configuration](https://www.engaging.io/services/custom-hubspot-integrations-and-system-sync-solutions) [CRM migration and onboarding](https://www.engaging.io/services/crm-migration-to-hubspot-onboarding-implementation-services) [Custom membership portals](https://www.engaging.io/services/custom-hubspot-membership-portals-secure-self-service-platforms) [Data migrations](https://www.engaging.io/services/crm-hubspot-data-migrations) [Data cleansing](https://www.engaging.io/services/data-cleansing) [Data lakes and architecture](https://www.engaging.io/services/enterprise-data-lake-architecture-build) [Digital transformation and change management](https://www.engaging.io/services/digital-transformation-services-change-management) [Websites](https://www.engaging.io/services/hubspot-cms-websites)

 Industries

[Sports and entertainment](https://www.engaging.io/sports-and-entertainment) [Medical and health](https://www.engaging.io/medical-and-health) [Education](https://www.engaging.io/education) [Restaurants and clubs](https://www.engaging.io/restaurants-and-clubs) [Experience and travel](https://www.engaging.io/experience-and-travel) [Finance](https://www.engaging.io/finance) [Property development and real estate](https://www.engaging.io/property-development-and-real-estate)

 Products

[JinnSync](https://www.engaging.io/our-products/jinnsync) [MailSync](https://www.engaging.io/our-products/mailsync) [Real Estate Syncer](https://www.engaging.io/our-products/real-estate-syncer)

 About us

[Who we are](https://www.engaging.io/who-we-are) [Life at Engaging](https://www.engaging.io/life-at-engaging) [Blog](https://www.engaging.io/blog)

[Blogs](https://www.engaging.io/blog)

 Custom Integrations and Configuration, Industry : Finance

# How we built a custom service catalogue in HubSpot using UI extensions and automation

By Kiara Robinson on Jul 15, 2026

Narrate this article

How we built a custom service catalogue in HubSpot using UI extensions and automation

5:11

![Woman providing financial service advice with a laptop open in front of her](https://www.engaging.io/hubfs/amy-hirschi-JaoVGh5aJ3E-unsplash.jpg)

Professional services organisations rarely sell a single, simple product. They sell bundled services, advisory engagements, and structured fee arrangements that span multiple business units and timelines.

For our client, one of Australia’s largest financial advisory and accounting firms, this complexity created a structural challenge inside HubSpot:

- Hundreds of service SKUs
- Multiple service lines and families
- Different billing models (upfront vs ongoing fees)
- Operational tasks that needed to trigger automatically when services were sold

Standard CRM product libraries can struggle when organisations need to represent hierarchical service structures rather than simple products.

To solve this, Engaging.io designed and implemented a custom Service Catalog architecture using HubSpot UI Extensions and automation workflows. The result was a system that allowed our client to manage complex service offerings while maintaining accurate forecasting, operational task creation, and revenue reporting.

 

## Building the custom service catalogue using HubSpot UI extensions

Using **HubSpot UI Extensions**, Engaging.io created a custom interface embedded directly within HubSpot records. This extension allowed our clients teams to select services through a **structured service hierarchy** rather than a flat product list.

### The catalogue structure included:

- Service line
- Service family
- Individual service SKU

This hierarchy allowed services to be organised in a way that mirrored how our client actually delivers its advisory offerings. From a user perspective, the experience looked like a structured catalogue rather than a generic CRM product selector.

The interface enabled teams to:

- Browse services by advisory category
- Select services aligned with the firm's organisational structure
- Maintain consistency across offices and teams
- Reduce errors in service selection

The system effectively became a custom service configuration interface inside HubSpot.

## Automating operational workflows from service selection

The catalogue was only one part of the solution, the second component was automation tied to each service selection.When a service is added to a deal, the system automatically generates the operational activities required to deliver it.

These activities are created using the **HubSpot Ticket object**, which acts as a structured operational workflow. This automation creates:

- Delivery tasks
- Operational milestones
- Service tracking records
- Forecast dates tied to service completion

This approach ensures that selling a service automatically initiates the operational workflow required to deliver it. One of the biggest benefits of this architecture is the connection between **service delivery and financial forecasting**.

Each service in the catalogue is linked to revenue structures, so when a service is selected the automation populates key revenue tracking properties, allowing leadership to track the full lifecycle of a service engagement.

## A CRM architecture designed for advisory firms

By combining UI extensions, automation workflows, and structured revenue tracking, our client’s HubSpot implementation introduced a scalable model for professional services CRM management. The system achieved several key outcomes:

- Structured service catalogue aligned with the firm’s advisory model
- Automated operational task creation for every service sold
- Accurate revenue forecasting tied to delivery milestones
- Improved reporting across fee structures and service completion

This architecture transforms HubSpot from a simple CRM into a service operations platform for advisory organisations.

## Engineering CRM systems for real-world business models

Many professional services organisations struggle with a structural gap between sales systems and operational delivery systems. Deals are tracked in the CRM, but the work itself often lives in separate project tools, spreadsheets, or internal processes. This disconnect limits forecasting accuracy and creates manual coordination between teams.

For our client, the custom Service Catalogue architecture solved this by embedding service selection, operational workflows, and revenue tracking directly inside HubSpot. When a service is added, automation creates the associated delivery activities using the Ticket object, while key forecasting and billing milestones are populated automatically.

This creates a unified system where sales triggers delivery, delivery updates forecasting, and forecasting drives reporting. The result is improved operational visibility, reduced manual handoffs, and clearer insight into the full lifecycle of each service engagement.

More broadly, this implementation demonstrates how CRM architecture can be adapted to reflect the realities of complex advisory businesses. By combining UI extensions, automation, and structured service hierarchies, the system gives our client a scalable way to manage hundreds of advisory services while maintaining operational clarity and accurate revenue reporting.

#### Other Blogs

#### [Systems integration + 2 more Want Smarter AI? Start with Clean Data: Your 6-Step CRM Clean-Up Guide Kiara Robinson Sep 16, 2025 See More](https://www.engaging.io/blog/want-smarter-ai-start-with-clean-data-your-6-step-crm-clean-up-guide)

#### [Digital Transformation & Change Mgmt + 3 more Why healthcare organisations are choosing HubSpot Kiara Robinson Aug 11, 2026 See More](https://www.engaging.io/blog/why-healthcare-organisations-are-choosing-hubspot)

#### [Befuddled by blockchain? You might want to check out these useful links... Michelle O'Keeffe Sep 29, 2025 See More](https://www.engaging.io/blog/befuddled-by-blockchain-you-might-want-to-check-out-these-useful-links)

### Get in touch, We love to talk

Stay ahead with expert insights

Subscribe to our newsletter for the latest strategies and smart solutions to drive business growth.

#### Services

[AI services](https://www.engaging.io/ai-services) [Custom integrations and configuration](https://www.engaging.io/services/custom-hubspot-integrations-and-system-sync-solutions) [CRM migration and onboarding](https://www.engaging.io/services/crm-migration-to-hubspot-onboarding-implementation-services) [Custom membership portals](https://www.engaging.io/services/custom-hubspot-membership-portals-secure-self-service-platforms) [Data migrations](https://www.engaging.io/services/crm-hubspot-data-migrations) [Data cleansing](https://www.engaging.io/services/data-cleansing) [Data lakes and architecture](https://www.engaging.io/services/enterprise-data-lake-architecture-build) [Digital transformation and change management](https://www.engaging.io/services/digital-transformation-services-change-management) [Websites](https://www.engaging.io/services/hubspot-cms-websites)

#### Industries

[Sports and entertainment](https://www.engaging.io/sports-and-entertainment) [Medical and health](https://www.engaging.io/medical-and-health) [Education](https://www.engaging.io/education) [Restaurants and clubs](https://www.engaging.io/restaurants-and-clubs) [Experience and travel](https://www.engaging.io/experience-and-travel) [Finance](https://www.engaging.io/finance) [Property development and real estate](https://www.engaging.io/property-development-and-real-estate)

#### PRODUCTS

[JinnSync](https://www.engaging.io/our-products/jinnsync) [MailSync](https://www.engaging.io/our-products/mailsync) [Real Estate Syncer](https://www.engaging.io/our-products/real-estate-syncer)

#### COMPANY

[Case studies](https://www.engaging.io/case-studies) [Who we are](https://www.engaging.io/who-we-are) [Life at Engaging](https://www.engaging.io/life-at-engaging) [Blog](https://www.engaging.io/blog) [Contact us](https://www.engaging.io/contact-us)

#### FOLLOW US

[![Linkedin](https://www.engaging.io/hs-fs/hubfs/Linkedin.png?width=28&name=Linkedin.png)](https://au.linkedin.com/company/engaging) [![YouTube](https://www.engaging.io/hs-fs/hubfs/Icon%20-%20YouTube.png?width=28&name=Icon%20-%20YouTube.png)](https://www.youtube.com/channel/UCoRbiw8pELknyb6K6i4E5Og)

### Good work with good people

[Privacy Policy & Terms of Service](https://www.engaging.io/privacy-and-terms)

[![engaging-logo](https://www.engaging.io/hs-fs/hubfs/raw_assets/public/Engaging-2025/images/site-logo-pack/short-form-logo/eio-logo-pink.png?width=90&name=eio-logo-pink.png)](https://www.engaging.io/)

© Copyright 2026, Engaging.io, all rights reserved

```json
{
  "@context" : "https://schema.org",
  "@type" : "BlogPosting",
  "author" : {
    "@type" : "Person",
    "name" : "Kiara Robinson",
    "url" : "https://www.engaging.io/blog/author/kiara-robinson"
  },
  "dateModified" : "2026-07-15T02:55:00.882Z",
  "datePublished" : "2026-07-15T02:55:00.000Z",
  "headline" : "How we built a custom service catalogue in HubSpot using UI extensions and automation",
  "image" : [ "https://www.engaging.io/hubfs/amy-hirschi-JaoVGh5aJ3E-unsplash.jpg" ],
  "mainEntityOfPage" : {
    "@id" : "https://www.engaging.io/blog/how-we-built-a-custom-service-catalogue-in-hubspot-using-ui-extensions-and-automation",
    "@type" : "WebPage"
  },
  "publisher" : {
    "@type" : "Organization",
    "logo" : {
      "@type" : "ImageObject",
      "url" : "https://www.engaging.io/hubfs/Engaging-Logo-2021.png"
    },
    "name" : "Engaging.io"
  }
}
```