Sesami Flows and Klaviyo
Integrate Sesami with Klaviyo to power advanced email and SMS marketing for your booking business.
What is Klaviyo?
Klaviyo is a marketing automation platform used primarily for email marketing and SMS marketing. As strategic partners with Sesami, Klaviyo provides powerful customer communication tools for appointment-based businesses.
Why integrate Sesami with Klaviyo?
You can streamline all your customer-facing interactions by feeding Sesami event data into Klaviyo and triggering all communications (Email or SMS) via Klaviyo. For many businesses already using Klaviyo to send order confirmations, SMS marketing messages, and other communications, sending booking confirmations and appointment reminders also through Klaviyo creates a unified customer experience.
Common use cases
Email and SMS flows:
Appointment confirmation flow
Appointment rescheduling flow
Appointment cancellation flow
Appointment reminder flow (24 hours prior, or custom timing)
Appointment completion flow
Combined integrations:
Request customer reviews with review platforms (Okendo, Yotpo, Trustpilot, etc.)
Invite to or track loyalty programs post-appointment (LoyaltyLion, Swell, etc.)
Personalize appointment emails (Limespot, Nosto, etc.)
How it works
Sesami uses Sesami Flows to send booking events to Klaviyo in real-time. When an appointment is created, rescheduled, canceled, or completed, Sesami pushes that event data to Klaviyo as a custom metric. You then create Flows in Klaviyo that trigger email or SMS messages based on these metrics.
The flow of data
Customer books an appointment in Sesami
Sesami Flow triggers and sends event data to Klaviyo via webhook
Klaviyo receives the event as a custom metric (e.g., "Sesami Appointment Created")
Klaviyo Flow triggers based on that metric
Customer receives email or SMS with appointment details
Setup instructions
Step 1: Create a Flow in Sesami
Open Sesami in your Shopify Admin
Navigate to Settings > Flows
Click Create a Flow
Step 2: Choose a Klaviyo preset
Select from the available Klaviyo Flow presets:
Klaviyo event, appointment created
Klaviyo event, appointment rescheduled
Klaviyo event, appointment canceled
Klaviyo event, appointment completed
Klaviyo event, appointment reminder 24 hours prior
You can create as many reminder Flows as needed by duplicating the reminder preset and changing the trigger timing.
Step 3: Review Flow settings
Review the general Flow settings to understand the trigger conditions and webhook configuration.
Step 4: Get your Klaviyo Private API Key
Important: As of June 12, 2024, Sesami Flows use Klaviyo's Private API Key (not the public key). Make sure you create a Private key.
Log in to your Klaviyo account
Navigate to Settings > API Keys
Click Create Private API Key
Name it "Sesami Integration" and choose Full Access Key
Copy the generated Private API Key
Step 5: Add your API key to the Flow
In your Sesami Flow settings, find the placeholder
KLAVIYO_PRIVATE_API_KEYReplace it with your actual Klaviyo Private API Key
Save the Flow
That's it! Repeat these steps for each Klaviyo event you want to send to Klaviyo.
Available event properties
When Sesami sends appointment data to Klaviyo, the following properties are included and can be used in your Klaviyo email or SMS templates:
{{ event.appointment_id }}
62e144124a6d0b9ed42ffb55
Unique appointment ID
{{ event.datetime }}
July 29, 2022 at 04:30 PM
Appointment date and time
{{ event.order_id }}
4447608111157
Shopify order ID
{{ event.quantity }}
1
Number of bookings
{{ event.service_name }}
Tattoo Removal
Name of the service
{{ event.service_description }}
Please arrive 15 minutes early
Service instructions
{{ event.service_duration }}
30
Duration in minutes
{{ event.service_price }}
149
Service price
{{ event.service_location }}
100 Beverly Hills, LA
Service location
{{ event.service_image_url }}
https://cdn.shopify.com/...
Service image URL
{{ event.team_member }}
David
Assigned team member name
{{ event.team_member_description }}
David has ten years of experience
Team member bio
{{ event.team_member_phone }}
0000000000
Team member phone
{{ event.variant_title }}
30 minutes
Product variant title
{{ event.customer_management_link }}
https://r.sesami.co/1234
Link for customer to manage booking
{{ event.line_item_properties }}
Question/Answer pairs
Custom form responses
Setting up Flows in Klaviyo
Once Sesami is sending events to Klaviyo, you need to create Flows in Klaviyo to send communications to customers.
Step 1: Create a Flow in Klaviyo
Log in to Klaviyo
Navigate to Flows
Click Create Flow
Step 2: Choose a Metric trigger
Select Metric as your trigger type
Search for "Sesami" in the metric dropdown
Choose the appropriate metric:
Sesami Appointment Created
Sesami Appointment Rescheduled
Sesami Appointment Canceled
Sesami Appointment Completed
Sesami Appointment Reminder
Step 3: Add an Email or SMS action
Click Add Action
Choose Email or SMS
Design your message template
Step 4: Use event properties in your template
When editing your email or SMS content, you can access all booking-related properties using the syntax shown in the table above. For example:
{{ event.datetime }}- Shows the appointment date and time{{ event.service_name }}- Shows the service name{{ event.team_member }}- Shows the assigned team member{{ event.customer_management_link }}- Provides a link for customers to reschedule or cancel
Step 5: Make your Flow live
Once you've designed your message and tested it, set your Flow to Live to start sending automated messages.
Mark your Klaviyo Flows as transactional. Booking confirmations, reminders, reschedule/cancel notices, and similar appointment communications are transactional — not marketing. Marking them as transactional in Klaviyo ensures they're sent to all customers regardless of marketing consent, and keeps your marketing deliverability clean.
In Klaviyo, open the Flow's message action, go to Additional options, and toggle Smart Sending off and set the message type to Transactional.
Testing your integration
Before going live, test the integration:
Create a test booking in Sesami
Check that the event appears in Klaviyo's Activity Feed or Metrics
Verify that all appointment properties are populating correctly
Test your Klaviyo Flow to ensure emails/SMS are sent properly
Review the content to ensure all dynamic properties display correctly
Pro tip: Create a test customer email address and make test bookings to verify the complete customer experience before enabling Flows for live customers.
FAQ
What if I need to set more than one reminder flow?
You can build as many reminder flows as you want by creating new Flows using the Klaviyo reminder preset and changing the trigger timing in the Flow configuration. For example, you could send reminders at:
7 days before appointment
24 hours before appointment
2 hours before appointment
Can I use Klaviyo for SMS as well as email?
Yes! Klaviyo supports both email and SMS. As long as you have SMS enabled in your Klaviyo account and have collected customer phone numbers with consent, you can use SMS actions in your Klaviyo Flows.
What happened to the public API key requirement?
As of June 12, 2024, Sesami updated all Flow presets to use Klaviyo's Private API Key instead of the public key, matching Klaviyo's updated API requirements. Always use a Private key when setting up new integrations.
Events aren't showing up in Klaviyo. What should I check?
Verify your Klaviyo Private API Key is correct and has Full Access
Ensure the Flow is enabled in Sesami
Check that you've made a test booking after setting up the Flow
Review Sesami Flow logs to see if the webhook was sent successfully
Check Klaviyo's Activity Feed to see if events are being received
Related
Sesami Flows - Overview of Sesami's automation system
Email and Webhook Actions - Understanding action types
Klaviyo Integration Overview - General Klaviyo patterns
Notification Emails - Default Sesami notification system
Last updated
Was this helpful?
