Solution Design · Working Document · April 2026

Affinity Education,
parent journey & platform architecture

Four views of the same proposal: how the systems fit together, what the parent experiences, how tour bookings happen, and how it lands in phases.

Prepared for
Affinity Education Group
Prepared by
Saxon Booth, HubSpot · Adrian Bortignon, Kongo
View 01

Systems & data flow

Five layers, each with a distinct job. Xap remains the operational system of record. Storypark continues day-to-day parent comms. Snowflake feeds a new middleware availability engine, which HubSpot sits on top of as the engagement layer.

Top of stack
Channels
Website & AI Agent
Parent self-serve, web chat, WhatsApp, Facebook Messenger, email
FST · 1800 line
Family Services Team, working inside HubSpot as their primary workspace
Centre Director
Logs tour outcomes in Xap. Free View-Only seat in HubSpot from Phase 1
Orchestrated by
Engagement
HubSpot
Marketing · Service · Content · Data Hub
Acquires, nurtures, converts and retains families. Orchestrates the parent journey. Consumes availability data.
Breeze AI · Customer Agent
24/7 enquiry handling, real-time availability lookup, tour booking, lead qualification
Calls
Middleware
Availability Engine
Purpose-built rules engine, to be built
Room capacity + current enrolments + rostered staff + legislated ratios. Returns a definitive availability answer via API.
Queries
Data Foundation
Snowflake
Data warehouse
Aggregates data from Xap and other systems. Feeds Tableau. Integration layer between Xap and HubSpot via bi-directional connector.
Fed by
Operational Systems
Xap & Storypark
Xap, and other CCMSs
System of record for enrolments, billing, CCS, attendance, rostering, compliance. Tour bookings managed here.
Storypark
Day-to-day operational comms between educators and parents. Daily updates, incident reports, learning journals, photos.
View 02

The parent journey, end to end

A walkthrough of a single family moving from first touch to enrolled. Click Next to advance Sarah and Bobby through each stage. Every touchpoint is automated, personalised, and centrally orchestrated by HubSpot.

Illustrative family
Sarah & Bobby
Sarah is searching for childcare for her son Bobby (age 1) in the Parramatta area. Her preferred centre, North Parramatta, turns out to be full.
01 02 03 04 05 06 07 08
Tuesday · 9:00pm

Google ad, then chat

Sarah finds Milestones via a Google ad and opens the chat widget. The AI Customer Agent captures Bobby's age and preferred location, then calls the availability engine.

HubSpot · AI Agent Availability Engine
Tuesday · 9:05pm

Definitive answer, smart redirect

North Parramatta is full. Westmead, 1.2km away, has Toddler room availability on Tuesdays and Thursdays. The agent suggests Westmead. Sarah agrees. Tour booked for Thursday 10am, created in Xap via API. Sarah is also added to the North Parramatta waitlist.

Availability Engine Xap · booking HubSpot · waitlist
Wednesday · 8:00am

Confirmation email from Jane

A HubSpot workflow sends Sarah a personalised confirmation. The email appears from Jane Smith, Centre Director at Milestones Westmead, using owner personalisation tokens. Centrally orchestrated. Jane was not involved in sending it.

HubSpot · Workflow
Thursday · 10:00am

Tour conducted

Sarah arrives at Milestones Westmead. Jane conducts the tour and logs the outcome in Xap: tour completed, interested in Toddler room, concerned about 7am drop-off availability.

Xap
Thursday · 2:00pm

AI-generated follow-up, sent from Jane

The tour outcome syncs to HubSpot via Snowflake. A workflow triggers an AI action that reads Jane's notes and generates a personalised follow-up, sent from Jane's name via owner tokens. The email addresses the drop-off concern directly.

Xap Snowflake sync HubSpot · AI Action
Thursday · 6:00pm

Sarah replies

Jane sees the reply in the centre's Outlook shared mailbox and responds personally. The exchange is logged on the HubSpot timeline automatically.

Outlook · Shared mailbox HubSpot · Timeline
+2 weeks

Spot opens at North Parramatta

The availability engine detects the change. A workflow triggers an instant notification to Sarah: "Great news, a Toddler room spot has opened at North Parramatta on Tuesdays. Would you like to transfer Bobby's enrolment?"

Availability Engine HubSpot · Workflow
Post-enrolment

Automated onboarding & ongoing operations

Sarah receives automated onboarding, milestone comms and NPS surveys via HubSpot. Day-to-day operational updates, Bobby's activities, daily reports, incident notifications, continue via Storypark, as today.

HubSpot · Lifecycle Storypark · Daily ops
01 / 08
View 03

Three booking pathways, one engine

Parents can book a tour through three channels. All three query the same availability engine, write to the same HubSpot CRM record, and create the tour booking in Xap. One system of record. Three ways in.

Pathway 01
Parent self-serve
Website · AI Customer Agent
  1. Parent opens chat or visits the website
  2. AI agent captures child age and preferred centre
  3. Calls the availability engine, receives a definitive answer
  4. If available, books the tour, created in Xap via API
  5. If full, suggests nearest centres with availability and distances
  6. If parent prefers the full centre, offers waitlist with auto-notifications
  7. Qualifies the lead in parallel, updates HubSpot contact record
Pathway 02
FST call centre
1800 number, FST agent in HubSpot
  1. Parent calls the FST line
  2. FST agent opens or creates the contact record in HubSpot
  3. Clicks Check Availability on a custom CRM card, a UI extension
  4. Card displays status, available days, nearest alternatives with distances
  5. Clicks Book Tour, a custom action calls the Xap tour booking API
  6. Tour appears in the CM's Xap calendar exactly as it does today
  7. Full parent history visible if already in the CRM
Pathway 03
After-hours agent
AI Customer Agent, out of FST hours
  1. Parent enquires at 9pm on a Sunday
  2. Instant, intelligent response from the AI agent
  3. Real-time availability check with a definitive answer
  4. Tour booked, created in Xap via API, without a human
  5. Lead qualified, HubSpot contact record created
  6. Automated confirmation email, personalised from the CM via owner tokens
  7. Operates across web chat, WhatsApp, Messenger, email
Calls the engine
Calls the engine
Calls the engine
Shared middleware
Availability Engine
Room capacity + current enrolments + rostered staff + legislated ratios. Returns a definitive answer. Same logic. Same answer. Three entry points.
Booking written to
Xap
System of record. Tour appears in CM calendar. Feeds the downstream pipeline: waitlist, enrolment, billing, CCS.
CRM record updated in
HubSpot
Single source of parent engagement truth. Conversation history, timeline, lifecycle stage, attribution, waitlist status.
Design options to validate in the technical workshop. Option A, preferred, writes all tour bookings to Xap via API. Option B extends the availability engine into a booking engine, reducing dependency on Xap's API. Option C, contingency, uses HubSpot Meetings Tool where Xap API is not viable. The technical workshop determines which option is feasible based on Xap's API capabilities.
View 04

Phased roadmap

Three phases. Lifecycle expansion is the proposed direction of travel. CM paid seats are a separate, optional, evidence-based decision at each phase.

01
Foundation
Digitise pre & post-enrolment
Pre-enrolment, core
  • Marketing attribution, closed-loop
  • FST help desk with SLAs and playbooks
  • AI Customer Agent, 24/7
  • Availability engine integration
  • Tour workflow automation
  • Waitlist automation based on real vacancies
  • CMS migration to Content Hub Enterprise
  • Snowflake bi-directional connector
Post-enrolment, included
  • Onboarding sequences
  • NPS and satisfaction surveys
  • Room transition notifications
  • Milestone comms
  • Additional-day upselling
Centre Director involvement
None, free View-Only seats only
02
Expand
Deepen lifecycle · optional CM pilot
Lifecycle expansion
  • Churn detection & intervention
  • NPS detractor follow-up with auto-escalation
  • Parent complaint handling, workflow-tracked
  • UI extension for Xap booking inside HubSpot
  • Predictive availability forecasting
Optional CM pilot
  • 20–30 pilot centres on paid seats
  • Mobile app: tour context, task queue, outcome logging
  • Tracked personal follow-up
  • Measure tour-to-enrolment and retention vs. non-pilot
  • Seat pricing pre-negotiated at contract signature
Centre Director involvement
Optional, 20–30 CM Core Seats if pilot activated
03
Scale
Complete lifecycle · optional rollout
Lifecycle completion
  • Advanced AI: predictive occupancy, catchment analysis
  • Cross-centre demand routing
  • Automated performance coaching
  • Storypark integration or consolidation assessment
  • Network optimisation using availability data
Optional full CM rollout
  • CM Core Seats across all 250+ centres
  • Full CM behaviour visibility
  • Coaching and benchmarking network-wide
  • Activated only if Phase 2 pilot proved ROI
Centre Director involvement
Optional, 250+ CM Core Seats if pilot proved ROI

The trade-off regarding CMs

The full parent lifecycle, pre and post-enrolment, can be brought into HubSpot without giving CMs paid seats. Centralised automation delivers a transformed parent experience either way. CM seats add CM-side transformation: mobile context before tours, tracked personal follow-up, and behaviour benchmarking across the network. Two paths. Either works. The question is whether you also want to transform the CM experience.