Loading page…
Loading page…
Loading page…
Loading page…

An outdoor education provider in Australia runs three children’s programs — a playgroup, a kindergarten session, and a school day — on set weekdays, sold by the term, four terms a year. Families book through Bookeo embedded directly on their WordPress website, where Bookeo reliably handles bookings, payments, and automated reminders.
The operational bottleneck was everything that happened after the booking. The business owner had no consolidated view of which families were actively enrolled right now, and no institutional memory of which programs a family had attended in earlier terms. Because families rebook term after term, that historical data was the single most valuable asset the business possessed — yet it remained trapped inside an unsearchable transactional booking list.
The client had three clear operational requirements:
The digital agency managing the client’s marketing infrastructure had already selected GoHighLevel (GHL) as the CRM. The project brief was firm: keep Bookeo exactly as it is, sync every booking into GoHighLevel automatically, and do it without custom engineering — avoiding high-maintenance bespoke code for a straightforward data pipe.

We engineered a reliable, zero-code pipeline across three distinct layers: Bookeo triggers on every confirmed booking, Zapier maps the data payload to a GoHighLevel contact, and an internal GoHighLevel workflow routes the contact into the appropriate program stage.
1. Inside GoHighLevel:
We established a dedicated Families pipeline containing stages for each core program — Playgroup, Kindy, and School — alongside New Enquiry and Previous Family stages. We configured two key custom fields on the contact record:
2. Inside Zapier:
A streamlined two-step Zap listens for Bookeo’s New Booking trigger and calls LeadConnector’s Add/Update Contact action. It pushes the parent’s full name, email, phone number, physical address, both custom fields, sets the Lead Source to Bookeo, and applies the crucial architectural component: writing the Bookeo product name directly into the contact’s tags.

3. Inside GoHighLevel Automation Workflows:
A native GHL workflow triggers instantly whenever an incoming booking tag is applied. An internal conditional branch inspects the Session field and divides execution across three routes. Each branch creates or updates an opportunity card within the matching stage, titled with the family surname and session name. Because the logic updates rather than duplicates, re-enrolling families simply move across the board. Backward movements were deliberately enabled so families transitioning from Previous Family seamlessly reactivate into an active term stage.

The client’s highest-priority requirement was also the easiest to over-engineer: they needed the CRM pipeline to show who is enrolled right now, while simultaneously maintaining an immutable history of every program a family has ever attended across multiple years.
Rather than writing complex custom database lookup tables or synchronization scripts, we resolved this with a robust naming architecture: the tag applied to each contact mirrors the Bookeo product name verbatim.
Because every term’s sessions are named uniquely (e.g., Term 3 2026 – Tuesday Playgroup, Term 4 2026 – Kindy), each subsequent booking adds an incremental tag. Tags are never purged. Over time, each family’s contact profile accumulates a self-documenting chronological attendance record: no lookup tables, no recurring calendar scripts, and zero administrative overhead at the turn of the new year.
The pipeline answers “who is here this term.” The tags answer “who has ever been here.”
Two operational questions, two simple data structures, powered by a single automation.


Schedule A Call To Discuss Your Idea. After Understanding Your Goals And Requirements, We'll Send You A Proposal. Once Approved, We'll Get Started To Achieve The Success.

Jakirul Islam
CEO & Founder
Not Interested To Submit The Form?
Book A Call Directly