# Add HubSpot account context to new HappyFox tickets

> Every 30 minutes we match new HappyFox tickets to their HubSpot account and drop a private briefing into the ticket, so agents never reply blind.

- Workflow type: agent
- Services: HappyFox, HubSpot, Slack Bot
- Categories: Customer Support, Sales
- Published: 2026-08-14

## What it does

- Checks for new, still unassigned tickets every 30 minutes during business hours and works out who the requester actually is.
- Matches the requester to your CRM, falling back to a match on the company email domain when there is no personal record.
- Posts a short agent-only note on the ticket with the company name, open deal value, deal stage, upcoming renewal date, and the account owner.
- Tags each ticket with its account tier so saved views and reports can filter on it, and alerts your account team in Slack when a high value account or a near term renewal is involved.

## What you'll need

- A HappyFox help desk account that can read tickets, add private notes, and edit tags
- A HubSpot account holding your contacts, companies, and deals
- A Slack workspace and a channel where account team alerts should land
- The tag names you use for account tiers, for example Enterprise, Mid-Market, and SMB

## Prompt

Every 30 minutes during business hours, enrich brand new HappyFox tickets with account context from HubSpot so support agents never answer blind. Use HappyFox List Tickets to page through tickets created since the last run that are still unassigned, and handle pagination yourself rather than assuming a single page covers the window.

Before doing any work on a ticket, check whether it already carries an account briefing note from a previous run, and skip those tickets entirely so reruns never double-post. Open every note you write with the same recognizable first line, for example "Account briefing", so this check stays reliable over time.

For each remaining ticket, take the requester's email address and run HubSpot Search Contacts on it. When there is no contact hit, fall back to HubSpot Search Companies matched on the email domain. Once you have identified the company, run HubSpot Search Deals to pull that company's open pipeline value, the stage of each open deal, and any renewal closing in the next 90 days. Capture the account owner along the way.

Write the result back into the ticket using HappyFox Add Staff Private Note as a short agent-only briefing. Keep it scannable rather than narrative: company name, total open pipeline value, the stage of the largest open deal, the renewal date if there is one, the account owner's name, and any prior context worth knowing before replying. This is an internal note, never a customer-visible reply.

Then use HappyFox Update Ticket Tags to tag the ticket with the account tier, so saved views and reports can filter on it. Derive the tier from the account's value using boundaries that are easy to find and change.

When the matched account has open pipeline above a configurable threshold, or has a renewal closing inside 30 days, treat the ticket as an escalation. Raise the ticket priority on that same Add Staff Private Note call rather than making a separate update, and post a Slack Bot Send a Message alert to the account team channel that names the account owner, states plainly why the ticket was flagged, and links directly to the ticket.

HappyFox sets priority by numeric id rather than by name, so resolve ids first with HappyFox List Priorities and map the priority you want to its id before updating anything. Do not hardcode the numbers, since they differ between help desks.

When no CRM match is found, say so plainly in the note instead of inventing context. A note reading "No HubSpot match for this email address or domain" is far more useful to an agent than a confident guess. Never fabricate a company name, deal value, renewal date, or account owner.

Keep the open pipeline threshold, the renewal window, the account tier boundaries, and the Slack channel as obvious named values at the top of the workflow so they are easy to tune without rereading the logic.

## How to customize

- Change the open pipeline amount that counts as a high value account, and the account tier boundaries used for tagging
- Change the renewal window that triggers an escalation, which starts at 30 days for alerts and 90 days for the briefing
- Change how often it runs and which Slack channel the account team alerts go to

## FAQ

### Will the customer see any of this?

No. The briefing is added as an internal, agent-only private note, so it is visible to your team inside the ticket but never sent to the person who wrote in.

### What happens if the requester is not in our CRM?

The note says so plainly, something like no matching account found for this email or domain. It will not guess at a company name, deal size, or owner, because a wrong briefing is worse than none.

### Will it post duplicate notes if it runs again?

No. Before writing anything it checks whether the ticket already carries an account briefing from a previous run and skips those tickets, so you can safely rerun it.

### Does this work on a free HubSpot account?

Yes, as long as your contacts, companies, and deals live in HubSpot. Accounts with richer deal and renewal data simply produce a more detailed briefing.

### How does it match someone who used a personal email address?

It first looks for the exact person, then falls back to matching the company on the email domain. Generic domains like gmail.com will usually come back with no match, which the note will state honestly.

Use this prompt in General Input: https://www.generalinput.com/prompts/add-hubspot-account-context-to-new-happyfox-tickets