HueLife Marketing Operations
HubSpot ⇄ WordPress · Event lifecycle

Creating an event, end to end

One pass from course creation to the day of the event, split by where the work happens. The HubSpot lane is where you author the class (the system of record); the WordPress lane is the removable adapter that renders the public event and feeds registrations back. Numbers ①–⑬ are the order of operations; rounded coral bubbles are customer touchpoints, placed in whichever system drives them (registration on WordPress, emails from HubSpot Workflows). Tickets are auto-created (Phase 2), the only routine human step is creating the Course.

Manual, you / an admin do it
Automated, runs hands-off
Customer touchpoint (rounded bubble), sits in the system that drives it
⇄ chip = cross-system handoff
HUBSPOT, system of record (you author here)
WORDPRESS, removable adapter (plugin + admin)
①Create the Course recordcohort_code · name · program_code · dates · venue · capacity · has_tiers · trainers · status = Scheduled
① ⇒ the Course creates the draft event in WordPress
②Plugin renders the TEC event as a DRAFTpoll ~15 min → create tribe_events (not public) · title · dates · venue · category → writes external_event_id back
③Plugin auto-creates the tickets4 tiers or single (has_tiers) · unlimited seats · prices cloned from prior cohort · AR fieldset replicated · hidden from shop
Exception only, review / adjust cloned prices for the first cohort of a program, or if prices drifted
④Event auto-PUBLISHESgoes live the moment tickets exist, no manual step; buying happens only on WordPress
⑤Prospect registers & pays on hue.life
⑥MakeWebBetter syncContact (marketable) + Deal + Line items → HubSpot
⑥ ⇒ ⑦ the registrant is synced back to HubSpot
⑦Course-Sync plugin stamps the registrationassociate Contact ↔ Course (860) · line item: cohort_code · program_code · tier · AR fields
You're registered + logistics
⑧Confirm go / no-gois_confirmed = Confirmed (go)
It's confirmed / running
T-7 reminder, hotel, parking
T-1 reminder, final details / join link
⑨ ⇄ ⑩ a Course date/venue change updates the live event
⑨Logistics change? edit the Course→ last_logistics_change
⑩Plugin updates / cancels the TEC eventFlow C
Details updated
⑪ ⇒ ⑫ check-in feeds attendance back to HubSpot
⑪Day of: check in attendeesEvent Tickets roster
⑫Status = Completed + attendanceAttended / No-show
Feedback survey
Certificate / thank-you
⑬Report: revenue & headcountroll up by cohort / program / tier

Who does what

The same flow as three lists, every manual touch, every hands-off step, every customer email.

Manual, you / an admin

  1. HubSpot: create the Course record, logistics, has_tiers, status = Scheduled ①
  2. HubSpot: confirm go / no-go once enrollment is met ⑧
  3. HubSpot: edit the Course if a date/venue changes ⑨
  4. WordPress: check in attendees on the day ⑪
  5. HubSpot: mark Completed + attendance after ⑫

Exception only: review the auto-cloned ticket prices for the first-ever cohort of a program, or if prices have drifted.

Automated, hands-off

  • Plugin renders the TEC event as a draft & writes external_event_id back ②
  • Plugin auto-creates the tickets, 4 tiers or single, unlimited seats, prices cloned from the prior cohort, AR fieldset replicated ③
  • Event auto-publishes the moment tickets exist ④
  • MakeWebBetter syncs the registrant → marketable Contact + Deal + Line items ⑥
  • Course-Sync plugin associates Contact ↔ Course + stamps the line item (cohort / program / tier / AR) ⑦
  • Plugin updates / cancels the event on any Course change ⑩
  • Reporting rolls up revenue & headcount by cohort / program / tier ⑬

Customer, Workflow emails

  • You're registered + logistics
  • It's confirmed / running
  • T-7 reminder, hotel, parking
  • T-1 reminder, final details / join link
  • Details updated (fires only on a change)
  • Feedback survey
  • Certificate / thank-you
Exception, cancellation. You set course_status = Cancelled (+ cancellation_reason) in HubSpot → a Workflow sends the cancellation notice to all associated attendees → the plugin cancels the TEC event (Flow C). On a refund, MakeWebBetter moves the deal stage; the contact↔Course association is kept and flagged, never deleted, so the deal stage handles revenue exclusion while the attendance history stays intact.