Integrations
How-toConnect GoHighLevel
Create a GoHighLevel Contact for every booking, plus an optional Opportunity and Appointment, and filter booking times by your team's GoHighLevel calendars.
Updated Sep 30, 2026
The GoHighLevel integration sends every new booking into one GoHighLevel sub-account. It always creates a Contact. It can also create an Opportunity in a pipeline and an Appointment on a calendar. It can import your GoHighLevel users as technicians, so customers only see times when someone is free.
Connect GoHighLevel
- 1
Turn on GoHighLevel
In the sidebar, under Integrations, click Browse (or Manage). Switch GoHighLevel on, then click GoHighLevel to open its setup page.
- 2
Click Connect
In the Connection card, click Connect. GoHighLevel opens in the same tab.
- 3
Choose the sub-account
Pick the sub-account (location) to install into and approve access. GoHighLevel sends you back to the setup page.
- 4
Confirm the sub-account
If you connected with an agency login, pick the sub-account in the Sub-account card and click Save sub-account. If you connected from a sub-account, the card shows its Location ID and Company ID instead.
- 5
Send a test lead
Click Send test lead. When you see "Test lead pushed. Check Recent activity below for the Contact id.", the Contact's id shows in Recent activity. Click it to open the Contact in GoHighLevel.
The test creates a real Contact named "Test Customer" with an email like
test-…@servicereserve.com. Delete it in GoHighLevel when you're done.
Choose what runs
The Features card has three switches. Change them, then click Save features. Each feature keeps its settings while it's off.
Lead creation
On by default. Every booking creates a Contact with the customer's name, email, phone, company, address, and source. If a Contact with the same email already exists, GoHighLevel reuses it.
To also create an Opportunity, pick a Pipeline and an Initial stage under the switch, then click Save pipeline. Leave them empty to create only a Contact.
Switching Lead creation off pauses every push, including Opportunities and Appointments.
Appointment creation
Needs Lead creation on. Pick a Calendar under the switch and click Save calendar. Every booking with a preferred time then gets an Appointment on that calendar, linked to the Contact.
- The appointment starts at the date and time the customer picked, in the calendar's time zone.
- It lasts 60 minutes.
- Bookings without a time picker skip the appointment. The Contact and Opportunity are still created.
Choose "don't create appointments" in the Calendar list to stop.
Schedule integration
Imports your GoHighLevel users as ServiceReserve technicians. The booking form then only offers times when a technician's GoHighLevel calendar is free. See Import technicians.
Field mapping
The Field mapping card shows when Lead creation is on. It has a Contact tab and, once you've saved a pipeline, an Opportunity tab.
Tags
On the Contact tab, enter tags in Tags to apply, separated by commas or new lines, then click Save tags. Every new Contact gets these tags. Most GoHighLevel automations start from a tag.
Custom fields
Standard Contact fields are always filled in. You can also send these booking details to your own GoHighLevel custom fields:
| ServiceReserve field | What it contains |
|---|---|
| Request ID | The ServiceReserve request id |
| Selected services | The services the customer picked, with prices |
| Intake answers | Answers to the category and service questions |
| Attribution | UTM values, referrer, and landing page |
| Request URL | A link back to the request in ServiceReserve |
| Full description | All of the above in one block of text |
Pick a custom field for each row you want, or leave it on "don't write to GoHighLevel". Rows are pre-filled when a custom field's name matches. Review them, then click Save mapping. Click Refresh fields after you add custom fields in GoHighLevel.
The Opportunity tab works the same way and writes to the Opportunity's custom fields.
Import technicians
- 1
Turn on Schedule integration
In Features, switch on Schedule integration and click Save features. A Technicians card appears.
- 2
Pick users
Check the GoHighLevel users who take jobs.
- 3
Save
Click Save technicians. New technicians get your default form, service area, and schedule.
- 4
Adjust routing
Open Technicians in the sidebar to change each technician's form, service area, or schedule, or to remove one.
Check deliveries
The Recent activity card lists the last 50 bookings sent to GoHighLevel. Successful rows link to the Contact. Failed rows show the error.
Stop sending bookings
Switch the toggle in the page header to Disabled. Nothing is sent while it's off. Your connection and settings stay saved.
Troubleshooting
- Send test lead is greyed out. Pick a sub-account first. The button's tooltip reads "Pick a sub-account below before sending a test."
- "GoHighLevel: pick a sub-account on the setup page before pushing leads." Pick and save a sub-account in the Sub-account card.
- "Your previously-saved sub-account isn't covered by this reconnect." The last reconnect didn't include your saved sub-account. Pick a sub-account again, then re-pick the pipeline and calendar.
- "No sub-accounts available." Check that the GoHighLevel agency has at least one location, then click Reconnect.
- "Couldn't reach GoHighLevel: …" A list failed to load. Click Reconnect, then reload the page.
- "This sub-account has no pipelines yet." Create one in GoHighLevel under Opportunities → Pipelines, then reload the page.
- "This sub-account has no active calendars." Create one in GoHighLevel under Calendars → Create, then reload the page.
- "GoHighLevel credentials have neither locationId nor companyId — reconnect the integration." Click Reconnect.
- "Re-enable the GoHighLevel integration first." The integration is paused. Switch the page-header toggle on.
Related
Which apps ServiceReserve connects to, how to turn an integration on, and how to check what it sent.
Create a Housecall Pro lead or job for every booking and route bookings to your Housecall Pro technicians.
Create a Lead in Zoho CRM for every booking and choose which Zoho fields each detail goes to.