Turn Kustomer customers into HubSpot contacts automatically

The moment support creates or updates a customer in Kustomer, their details land on the matching HubSpot contact, with no duplicates and no retyping.

Deterministic Code
KustomerHubSpotOperationsCustomer SupportData Sync
PromptCreate

I want the people my support team talks to in Kustomer to exist in our HubSpot CRM without anyone retyping them.

Trigger this with a webhook subscribed to Kustomer's customer created and customer updated events (kustomer.customer.create and kustomer.customer.update). The webhook payload tells us which customer changed.

First, load the full record using the Kustomer Get Customer by ID operation with the customer id from the webhook payload. Kustomer responses use a JSON:API envelope, so the fields to read live under data.attributes.

Take the customer's primary email address. If the customer has no email address at all, stop and do nothing. There is nothing to match on in HubSpot, and I would rather skip the record than create a contact we cannot deduplicate later.

Then look for an existing HubSpot contact with that email using Search Contacts, filtering on the email property. If there is no match, file a new one with Create Contact. If there is a match, patch the existing record with Update Contact using the HubSpot contact id returned by the search.

Map a fixed set of fields and do not infer or invent any values: first name, last name, primary email, primary phone and company. Also write the Kustomer customer id onto a dedicated HubSpot contact property, for example kustomer_customer_id, so the two records stay linked and future runs can tell where the contact came from.

Two rules matter. Skip any Kustomer customer that has no email address, because there is nothing to match on. And never overwrite a populated HubSpot field with an empty Kustomer value: when a value is missing or blank in Kustomer, leave the existing HubSpot value exactly as it is and only send the fields that actually carry a value.

Keep the mapping explicit and deterministic. Every step here is a known operation over structured fields, so nothing in this workflow needs judgement or generated text.

What does this prompt do?

  • Reacts the moment your support team creates or updates a customer in Kustomer, instead of waiting for a nightly sync.
  • Looks that person up in HubSpot by email address first, so you end up with one clean record rather than a pile of duplicates.
  • Creates the contact if they are new, or refreshes the existing one with their latest name, phone and company.
  • Stamps each HubSpot contact with its Kustomer reference, so the two records stay linked for every future update.

What do I need to use this?

  • A Kustomer account with admin access, so customer created and updated events can be sent to this workflow.
  • A HubSpot account where you can create and edit contacts.
  • One spare HubSpot contact property to hold the Kustomer reference. A short text field is all it takes.

How can I customize it?

  • Change which details carry across. Name, email, phone and company are mapped out of the box, and you can add your own fields to the list.
  • Narrow down who is worth syncing, for example only customers who have a company name against them.
  • Switch the matching rule if your team recognizes people by something other than their email address.

FAQs

Will this create duplicate contacts in HubSpot?
No. Every run searches HubSpot for an existing contact with the same email address before it writes anything, and only creates a new contact when there is genuinely no match.
What happens to Kustomer customers who have no email address?
They are skipped on purpose. Without an email there is nothing reliable to match on in HubSpot, so the workflow leaves your CRM untouched rather than guessing and creating a record you cannot clean up later.
Could this wipe out details we already have in HubSpot?
No. If a field is blank in Kustomer, the workflow leaves whatever is already in HubSpot exactly as it is. It only ever fills in or refreshes fields that actually have a value behind them.
Does this work on HubSpot Free?
Yes. It uses standard contact records, which come with every HubSpot plan including the free CRM. You just need room to add one custom contact property to store the Kustomer reference.
How quickly does a change in Kustomer show up in HubSpot?
Within moments. Kustomer tells the workflow as soon as a customer is created or updated, so sales and success see the same details support is looking at.

Related templates

Log Agorapulse social conversations to HubSpot contacts

Twice every weekday, the conversations from your social inbox land on the right HubSpot contact timelines, with a Slack recap for sales.

Agorapulse
HubSpot
Slack Bot
Agentic Task
Turn procurement portal tenders into CRM deals each morning

Every weekday at 7am, sign in to the tender portals you track, filter new notices against your bid criteria, and open a deal for the ones worth chasing.

Anchor Browser
Google Sheets
HubSpot
+1
Agentic Task
Clean up HubSpot contacts from your Amazon SES suppression list

Every morning, find the addresses that hard bounced or filed a spam complaint, update the matching HubSpot contacts, and post a short Slack recap.

Amazon SES
HubSpot
Slack Bot
Agentic Task
Provision customer entitlements in DynamoDB when a deal is won

When a HubSpot deal hits Closed Won, the customer's plan, seats and renewal dates land in your DynamoDB accounts table, with a Slack note showing what changed.

HubSpot
Amazon DynamoDB
Slack Bot
Agentic Task
Raise a Zoho Books invoice the moment a HubSpot deal is won

When a deal moves to closed won in HubSpot, we find or create the customer in Zoho Books, draft the invoice, and tell finance in Slack.

HubSpot
Zoho Books
Slack
Deterministic Code
File win-loss survey feedback on the right HubSpot deal

The moment someone finishes your win-loss survey, their answers land as a short note on the deal they belong to, not in a dashboard nobody opens.

SurveyMonkey
HubSpot
Slack Bot
Agentic Task

Stop retyping support customers into your CRM.

Every person your support team talks to in Kustomer shows up in HubSpot, complete and up to date, without anyone copying fields across.