circle-info
Welcome to the new Sesami Help Portal with AI capabilities. Search your question and get your answer instantly!
githubEdit

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

  1. Customer books an appointment in Sesami

  2. Sesami Flow triggers and sends event data to Klaviyo via webhook

  3. Klaviyo receives the event as a custom metric (e.g., "Sesami Appointment Created")

  4. Klaviyo Flow triggers based on that metric

  5. Customer receives email or SMS with appointment details

Setup instructions

Step 1: Create a Flow in Sesami

  1. Open Sesami in your Shopify Admin

  2. Navigate to Settings > Flows

  3. 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

circle-info

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

circle-exclamation
  1. Log in to your Klaviyo account

  2. Navigate to Settings > API Keys

  3. Click Create Private API Key

  4. Name it "Sesami Integration" and choose Full Access Key

  5. Copy the generated Private API Key

Step 5: Add your API key to the Flow

  1. In your Sesami Flow settings, find the placeholder KLAVIYO_PRIVATE_API_KEY

  2. Replace it with your actual Klaviyo Private API Key

  3. 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:

Property
Example Value
Description

{{ 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_email }}

Team member email

{{ 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

  1. Log in to Klaviyo

  2. Navigate to Flows

  3. Click Create Flow

Step 2: Choose a Metric trigger

  1. Select Metric as your trigger type

  2. Search for "Sesami" in the metric dropdown

  3. 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

  1. Click Add Action

  2. Choose Email or SMS

  3. 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.

circle-info

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:

  1. Create a test booking in Sesami

  2. Check that the event appears in Klaviyo's Activity Feed or Metrics

  3. Verify that all appointment properties are populating correctly

  4. Test your Klaviyo Flow to ensure emails/SMS are sent properly

  5. Review the content to ensure all dynamic properties display correctly

circle-check

FAQ

chevron-rightWhat if I need to set more than one reminder flow?hashtag

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

chevron-rightCan I use Klaviyo for SMS as well as email?hashtag

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.

chevron-rightWhat happened to the public API key requirement?hashtag

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.

chevron-rightEvents aren't showing up in Klaviyo. What should I check?hashtag
  • 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

Last updated

Was this helpful?