Go Live: Cliniko and Gohighlevel Sync
Map Cliniko businesses, practitioners and appointment types to Gohighlevel calendars, choose the push direction, enable the webhook and test the sync before going live.
The webhook is what makes the sync real-time. Cliniko sends an event the moment an appointment or patient record changes, and the integration turns that event into an updated Gohighlevel contact, appointment and custom field values - typically within a few seconds.
You copy the webhook URL from your Universal Plugins dashboard, paste it into Cliniko's webhook settings and save. A test booking confirms the path end to end: create an appointment in Cliniko, then watch the contact appear in Gohighlevel with the practitioner, service, date and time populated.
If a test does not arrive, the usual causes are a webhook saved on the wrong Cliniko account, a calendar mapping that has not been completed, or the custom fields not yet imported - each is checkable in a minute from the dashboard.
What the webhook does
The webhook is the trigger that makes the sync real-time. Cliniko sends an event the instant an appointment or patient record changes, and the integration turns that event into an updated Gohighlevel contact, appointment and set of custom field values - usually within a few seconds, not on a schedule.
Without it the connection is dormant: mapping and custom fields can be complete and correct, but nothing will move until Cliniko has somewhere to send its events.
Saving it correctly
Copy the webhook URL from your Universal Plugins dashboard using the copy button, open webhook settings in Cliniko, paste it and save. Then create a test appointment and watch for the contact in Gohighlevel with practitioner, service, date and time filled in. That single test proves the webhook, the mapping and the fields all at once.
Make sure you are signed into the same Cliniko account that you connected. Saving the webhook on a second account of the same practice is the single most common reason a first test never arrives.
If nothing arrives
Work through the usual causes: the webhook saved on the wrong Cliniko account, an incomplete calendar mapping for the practitioner you tested with, custom fields not yet imported, or a renamed field key breaking the workflow that was supposed to react.
Re-run the test after each change rather than altering several things at once, so you know which fix mattered.