HubSpot
Send the leads your agents capture straight into HubSpot. When a visitor is captured (see Lead Capture), ChatterMate creates or updates the matching contact — deduplicated by email — and attaches the AI qualification summary as a note. It’s a one-way push (ChatterMate → HubSpot). Nothing is read back or overwritten in ChatterMate.On ChatterMate Cloud, CRM Sync is a Pro feature. Self-hosted deployments have it built in — you just register your own HubSpot app (see Self-hosted setup).
What gets pushed
Repeat captures of the same email update the existing contact instead of creating duplicates.
Connecting HubSpot (Cloud)
Go to Settings → Integrations, find the CRM section, and:- Click Connect on the HubSpot card.
- Authorize ChatterMate in HubSpot’s OAuth screen.
- You’re returned to the Integrations page and the card shows Connected with your portal name.
One HubSpot account connects to one ChatterMate organization. Connecting requires the Manage Organization permission.
Turning on sync for an agent
Connecting HubSpot doesn’t move any leads on its own — you choose per agent which CRM its captured leads go to. Open an agent → Lead Capture tab → Sync to CRM → HubSpot. Every lead that agent captures is then queued for HubSpot automatically.Manual “Sync now” for a person
Open People, select a person, and use Sync to CRM in the detail drawer to push them on demand. This sends them to every connected CRM and shows where they’ve already been synced, with a link to the created record. Use it to backfill people captured before HubSpot was connected.Failure handling
CRM problems never interrupt a conversation. Syncs run in the background and retry with backoff:- Not connected — no lead is queued; the agent’s Lead Capture tab shows an inline warning.
- Temporary errors (rate limits, network) — retried automatically.
- Expired connection — the HubSpot card shows Reconnect; reconnecting automatically re-queues leads that failed while it was down.
- Permanent failures — surfaced as a recent-failure count on the card.
Self-hosted setup
Self-hosted ChatterMate has CRM Sync built in with no plan restriction — you bring your own HubSpot app so tokens stay in your infrastructure.1. Register a HubSpot app
Create an app in the HubSpot developer portal:- Redirect URL:
https://<your-backend-domain>/api/v1/crm/hubspot/callback - Scopes:
crm.objects.contacts.read crm.objects.contacts.write
BACKEND_URL, so make sure that’s set to your public backend origin. Copy the app’s Client ID and Client Secret.
2. Set the credentials
Add tobackend/.env:
3. Run the sync worker
CRM pushes are processed by a dedicated worker. Add it to your Compose stack alongside the backend:The worker polls a database queue — no Celery or extra broker needed. The same worker handles Pipedrive too.