Welcome! This guide walks you through the process of integrating your GoHighLevel (GHL) CRM with your HealthSherpa Medicare account. This works with all GHL sub-brands too – GoGuru, DFY, AgentCRM, etc.
If you have any questions, email medicare-integrations@healthsherpa.com.
What this integration offers
With this integration in place, your workflow from GHL to quoting to enrollment is streamlined, eliminating the need for dual data entry.
Contacts from GHL automatically sync to HealthSherpa Medicare in real time – both when created and when updated.
Each GHL contact record gets a unique link into the HealthSherpa Medicare quoter, taking you directly into a quote tied to that contact record.
When you enroll, the enrollment form is pre-filled with the contact data originating from your GHL contact record.
Getting started
We’re currently onboarding agencies one-by-one. To get started:
We'll respond shortly after
We'll deliver you an API key
Before you begin
Create a HealthSherpa Medicare agency account.
Know your GHL sub-account location ID (the sub-account you want to sync).
Have a HealthSherpa Medicare agent account created for every downline agent.
Ensure user emails match between GHL accounts and HealthSherpa accounts .
Setting up the integration
To set up the integration, watch the video above, or follow the text instructions below.
Step 1. Install the HealthSherpa Medicare for Workflows App
Log in to your HealthSherpa Medicare account
Load the GHL installation link we’ve provided. Scroll down and click next.
Enter the API key we provided.
You'll be redirected to HealthSherpa Medicare, and will see an installation successful message.
Step 2. Add required custom fields
In GHL, go to Settings > Custom Fields and create two custom fields attached to the Contacts object:
hsmedicare_contact_id → HealthSherpa Medicare Contact ID
hsmedicare_redirect_url → HealthSherpa Medicare Redirect URL
Step 3. Set up your Workflows
⚠️ Important: Make sure each contact is assigned to an agent with a HealthSherpa account and is connected to your agency. The sync will not occur if there is no agent assigned to the Contact.
⚠️ Important: If you'll be updating a contact's assigned agent over time, this will require a separate custom Workflow – contact us for details.
Create Contact Workflow
Create a new workflow with the trigger: Contact Created
Add an Assign to User step and assign the contact to your agent
Add the Create Contact V1 workflow action defined in the HealthSherpa Medicare for Workflows app
Make any edits you need to the workflow action
Add a new step Update contact field that updates the two custom fields you defined with values returned from the previous action:
hsmedicare_contact_id: HealthSherpa Medicare For Workflows > Create Contact V1 > Contact ID
hsmedicare_redirect_url: HealthSherpa Medicare For Workflows > Update Contact V1 > Redirect URL
Update Contact Workflow
Create a new workflow and define your trigger when you want to update the contact record that was previously synced over
Add the Update Contact V1 workflow action defined in the HealthSherpa Medicare for Workflows app
Make any edits you need to the workflow action
Add a new step Update contact field that updates the redirect URL custom field you defined with the value returned from the previous action:
hsmedicare_redirect_url: HealthSherpa Medicare For Workflows > Update Contact V1 > Redirect URL
Field Reference & Validation
Below are the contact fields HealthSherpa expects, with their rules. Any optional fields that did not pass validation will be ignored and contact creation/update will sync so long as the required fields pass validation:
Field | Required? | Rules / Format |
external_id | Required (hidden) | Auto‑populated from contact.id |
agent_email | Required (hidden) | Auto‑populated from user.email |
first_name | Required | String, 1–100 chars |
last_name | Required | String, 1–100 chars |
Optional | Must be a valid email format if present | |
phone | Optional | Must be a valid US phone number if present and E.164 format |
address_1 / address_2 | Optional | Strings, max 100 chars each |
city | Optional | String, max 100 chars |
state | Optional | Must be a valid US state (e.g., TX or Texas) |
zip | Optional | 5-digit US ZIP code (e.g., 77001) |
birth_date | Optional | Use a Date Picker field |
sex | Optional | Must be male or female if provided |
type | Optional | Must be client or lead, defaults to lead |
medicare_number | Optional | String, max 100 chars |
medicaid_number | Optional | String, max 100 chars |
medicare_part_a_effective_date | Optional | Use a Date Picker field |
medicare_part_b_effective_date | Optional | Use a Date Picker field |
medicaid_eligible | Optional | true or false |
extra_help | Optional | true or false |