GoHighLevel integrations

GoHighLevel books it. Jobber and ServiceM8 have it on the schedule.

CRM Connector brings GoHighLevel leads into Jobber as clients and visits, turns won opportunities into jobs, keeps contacts in sync both ways with your books, CRM or field service tool, and brings deals from your CRM into GoHighLevel as opportunities.

  • Connects with a Private Integration Token
  • Set up in five guided steps
  • 7 day free trial
GoHighLevel logo

Pairs with 20 systems

Watch

GoHighLevel in two minutes

See what syncs between GoHighLevel and your other business systems, and how to set it up.

What syncs

What GoHighLevel keeps in step

Contacts

Both ways
  • One way into Jobber as clients, and both ways with the other systems: name, company, email, phone and address stay in step.
  • Into GoHighLevel from every other system but Jobber: the same contact is looked up first, by email, then by phone, and updated instead of copied.
  • Housecall Pro customer tags can be copied onto the contact, a switch you turn on; a tag removed in Housecall Pro comes off again only when the sync added it.
  • A contact counts as a customer for the Customers only and Leads only filters when its GoHighLevel type says customer or when it has a won opportunity. Nobody is moved back to lead.

Appointments

Both ways
  • Into Jobber as visits, one way: an appointment booked in your GoHighLevel calendar becomes a Jobber visit and a moved one moves the visit.
  • Both ways with the ServiceM8 schedule, with title, start and end in step, whichever of the two starts the integration.
  • From the Simpro schedule, one way: a booking on a Simpro job becomes an appointment and a moved one moves it.
  • From Housecall Pro jobs, one way: each visit becomes an appointment, and a completed job marks it showed.
  • Into Housecall Pro, one way: a calendar appointment becomes a scheduled job that moves when the appointment moves.

Invoices

One way
  • One way into QuickBooks Online, Xero, FreshBooks, Zoho Books, FreeAgent or HubSpot.
  • Lines, total and dates travel; an invoice discount becomes one discount line.
  • Paid follows as a payment for the amount paid so far, so part payments top up.
  • A void follows too; FreeAgent records no payment or void, FreshBooks no void.
  • GoHighLevel invoices never go into Jobber.

Opportunities

One way
  • A won opportunity becomes a Jobber job, ServiceM8 work order, Housecall Pro job or CompanyCam project.
  • Or a draft invoice in QuickBooks Online, Xero, FreshBooks, Zoho Books or FreeAgent.
  • Lost and abandoned ones never become work.
  • Into Jobber an open one becomes a request, with the custom fields you pick in its note.
  • Into HubSpot, Pipedrive, Zoho CRM or ActiveCampaign, open or won ones become deals, and into Salesforce or Keap, opportunities (Keap on Max Classic).
  • Winning or losing one in GoHighLevel moves its deal or opportunity.
  • The other way, one way too: HubSpot, Pipedrive, Zoho CRM and ActiveCampaign deals, Salesforce and Keap opportunities, and Housecall Pro jobs or sent estimates become GoHighLevel opportunities.
  • A new one enters your first pipeline at its first stage; won and lost follow, and a closed one is never reopened.
  • One already lost before it first travelled is not created.
  • Custom pipelines and stages work as they are.
  • With Simpro, an open or won opportunity becomes a Simpro lead, and a sent Simpro quote an opportunity that follows it.

Works with

Pair GoHighLevel with any of these

Pick the second system in the setup wizard. Each tile lists what travels between the two, and How it syncs opens that pair's own page with every field and what is particular to the pairing.

Jobber logoJobberContacts, Appointments, Won opportunities as jobs, Open opportunities as requestsOne way into JobberInto Jobber: new leads become clients, calendar bookings land on the schedule as visits, and a won opportunity becomes a job.About JobberHow it syncs
QuickBooks Online logoQuickBooks OnlineContacts, Won opportunities as draft invoices, Invoices from GoHighLevelContacts both ways and GoHighLevel invoices into QuickBooks; a won opportunity can become a draft invoice instead.About QuickBooks OnlineHow it syncs
Xero logoXeroContacts, Won opportunities as draft invoices, Invoices from GoHighLevelContacts both ways and GoHighLevel invoices into Xero, or a won opportunity as a draft invoice instead; Xero's second address line stays in Xero.About XeroHow it syncs
HubSpot logoHubSpotContacts, Opportunities and deals, Invoices from GoHighLevelContacts both ways, GoHighLevel invoices into HubSpot, and deals one way in the direction you pick.About HubSpotHow it syncs
Square logoSquareContactsGoHighLevel contacts and Square customers stay the same both ways, so marketing and the till share one customer list.About SquareHow it syncs
Stripe logoStripeContactsStripe customers and GoHighLevel contacts stay the same both ways, so your workflows reach everyone who paid online.About StripeHow it syncs
Housecall Pro logoHousecall ProContacts, Jobs or estimates as opportunities, Job visits into the calendar, Won opportunities as jobs, Appointments as scheduled jobs, Tags onto GoHighLevel contactsContacts both ways with Housecall Pro tags, jobs, estimates and visits into GoHighLevel, won opportunities and bookings as jobs.About Housecall ProHow it syncs
ServiceM8 logoServiceM8Contacts, Appointments, Won opportunities as jobsContacts and appointments both ways, with either system starting the integration, and a won opportunity becomes a ServiceM8 work order.About ServiceM8How it syncs
CompanyCam logoCompanyCamContacts, Won opportunities as projectsContacts both ways, and a won GoHighLevel opportunity becomes a CompanyCam project at the customer's address.About CompanyCamHow it syncs
Pipedrive logoPipedriveContacts, Opportunities and dealsContacts both ways, and deals one way in the direction you pick between GoHighLevel opportunities and Pipedrive deals.About PipedriveHow it syncs
FreshBooks logoFreshBooksContacts, Won opportunities as draft invoices, Invoices from GoHighLevelContacts both ways and GoHighLevel invoices into FreshBooks; a won opportunity can become a draft invoice instead.About FreshBooksHow it syncs
Salesforce logoSalesforceContacts, Opportunities, in the direction you pickContacts both ways, and opportunities one way in the direction you pick, from GoHighLevel into Salesforce or from Salesforce into GoHighLevel.About SalesforceHow it syncs
Zoho CRM logoZoho CRMContacts, Opportunities and dealsContacts both ways, and deals one way in the direction you pick between GoHighLevel opportunities and Zoho CRM deals.About Zoho CRMHow it syncs
Zoho Books logoZoho BooksContacts, Won opportunities as draft invoices, Invoices from GoHighLevelContacts both ways and GoHighLevel invoices into Zoho Books; a won opportunity can become a draft invoice instead.About Zoho BooksHow it syncs
FreeAgent logoFreeAgentContacts, Won opportunities as draft invoices, Invoices from GoHighLevelContacts both ways and GoHighLevel invoices into FreeAgent; a won opportunity can become a draft invoice instead.About FreeAgentHow it syncs
ActiveCampaign logoActiveCampaignContacts, Opportunities and dealsContacts both ways, and deals one way in the direction you pick between GoHighLevel opportunities and ActiveCampaign deals.About ActiveCampaignHow it syncs
Keap logoKeapContacts, Opportunities, in the direction you pickContacts both ways, and opportunities one way in the direction you pick, from GoHighLevel into Keap or from Keap into GoHighLevel (Keap Max Classic).About KeapHow it syncs
WooCommerce logoWooCommerceContactsContacts stay the same both ways, and GoHighLevel can tag the people who paid a WooCommerce order "customer" for a workflow to follow up.About WooCommerceHow it syncs
Simpro logoSimproContacts, Opportunities as Simpro leads, Simpro quotes as opportunities, Job schedules into the calendar, Tags from paid, overdue and completedContacts both ways, opportunities into Simpro leads, Simpro quotes and schedule into GoHighLevel, and tags for workflows.About SimproHow it syncs
Google Sheets logoGoogle SheetsContacts, Opportunities, AppointmentsOne way into GoHighLevelContacts, opportunities and appointments from your sheet land in GoHighLevel, ready for your workflows.About Google SheetsHow it syncs

Connecting

How GoHighLevel connects

Private Integration Token

Pasted key

GoHighLevel connects with a Private Integration Token from the sub account, under Settings, Private Integrations. Paste it and the Location ID into the wizard, on either side of the integration: there is no sign in button. Both are checked with GoHighLevel the moment you continue, so a wrong token or Location ID is refused right there. Appointments also need the Calendar ID and Assigned user ID. The token never expires.

What you need

  • A CRM Connector account. Connecting happens inside the app.
  • A GoHighLevel sub account with permission to create a private integration.
  • Give the token the view scopes for what you sync (View Custom Fields for custom fields in a Jobber request note or mapped with HubSpot), and to receive records also Edit Contacts, Edit Calendar Events and Edit Opportunities.
  • An AI agent also needs View Conversations and View Conversation Messages to read conversations, View Location Tasks to search all tasks, and the estimate scopes for estimates.

You create this key in GoHighLevel and can withdraw it there at any time.

Good to know

How GoHighLevel behaves

What is true for GoHighLevel whichever system you pair it with. What is particular to one pairing is on that pair's own page, linked from its tile above.

  • Money tags, only when you switch them on

    • Contacts synced with QuickBooks Online, Xero, ServiceM8, Simpro or WooCommerce can get tags.
    • "customer" once they paid an invoice or a WooCommerce order, "overdue" while an invoice is past due.
    • "job completed" after a finished ServiceM8 or Simpro job.
    • Works with contacts one way into GoHighLevel or both ways.
    • Off until you switch it on, because a tag can start your GoHighLevel workflows: check which ones listen to these tags first.
    • "customer" and "job completed" stay; "overdue" goes once nothing is past due.
    • No other tag is ever touched.
  • One opportunity per contact, unless you allow more

    • A location that allows only one opportunity per contact refuses a second one for the same contact.
    • Switch on Allow Duplicate Opportunities in GoHighLevel and it goes through on the next sync.
  • Tags power a filter

    • Only contacts carrying one of the tags you choose start travelling out of GoHighLevel.
    • A contact that already travelled keeps syncing even when the tag is removed.
    • An opportunity, invoice or appointment of an untagged contact waits up to 30 days for the contact, travels once the contact is tagged, and is otherwise left alone until it changes.
    How filters work both ways
  • One calendar, one team member

    • Appointments sync into the GoHighLevel calendar you pick by its Calendar ID and new ones are assigned to the team member you pick by the Assigned user ID.
    • Both are asked for once, when you add appointments.
    • A reassignment made in GoHighLevel is kept when the appointment moves.
  • At most every 30 minutes

    • A GoHighLevel sync runs at most every 30 minutes, on every plan, so the location's own API budget stays free for its workflows.
  • Invoices go out only

    • Nothing is written into GoHighLevel invoices.
    • GoHighLevel cannot list only the invoices that changed, so each run reads the invoice list; a sync from date keeps older invoices out.
  • Phone numbers in international form

    • GoHighLevel only stores phone numbers with a country code.
    • A national number gets its country from the address, contact or sub account.
    • A number that still cannot be made international shows as a failed record.
    • A phone emptied in the other system on a two way sync is emptied in GoHighLevel too.
  • Every contact needs an email or a phone

    • GoHighLevel needs an email address or a phone number on every contact, so a contact with neither is not created there and shows in Activity with that reason.
    • A phone number that already belongs to somebody with another email is left off a new contact, so two people sharing a number are never merged.
    • In a location that allows no duplicate contacts, a contact without an email whose phone number another contact already has cannot be told apart, so it is not created and Activity says so.
    • When an updated contact's phone number belongs to another GoHighLevel contact, the rest of the contact is still updated and GoHighLevel keeps the number it has.
  • One street line, country set once

    • GoHighLevel has no second address line, so line 2 stays in the other system and is never wiped.
    • GoHighLevel takes the country only when a contact is created; later changes stay in the system where they were made.
  • GoHighLevel invoices or won opportunities, not both

    GoHighLevel invoices and won opportunities as draft invoices cannot both run between the same GoHighLevel and books accounts, in one integration or two, or the same sale would be billed twice.

  • Daily limits respected

    • GoHighLevel has strict per location limits.
    • Only contacts changed since the last run are read, the integration waits when GoHighLevel asks it to slow down, and when a daily budget is spent it waits for the moment GoHighLevel says it refills instead of failing.

FAQ

Questions about GoHighLevel?

Answers about GoHighLevel itself. Duplicates, deletions, a dropped connection, how often a sync can run and custom fields are explained once, for every system, on How syncing works.

Get started

Ready to connect GoHighLevel?Start your 7 day free trial

Sign in to GoHighLevel and the system you want to pair it with, confirm what syncs, and watch the first sync run.