Quickstart
This guide gets you from "installed" to "first booking" with the fewest steps.
What you'll set up
Services - Shopify products representing bookable services
Resources - Team members, rooms, equipment, or other assets needed to deliver services
Availability - Working hours and scheduling rules for resources
Storefront integration - Booking buttons and calendar on your online store
Time estimate: 15-30 minutes for a basic setup with one service and one team member.
Before you start
Make sure you have:
Admin access in your Shopify store
A list of services you want to offer:
Service name (e.g., "60-Minute Massage", "Dog Grooming")
Duration (e.g., 30 minutes, 1 hour, 2 hours)
Price
Resource information:
Team member names and their working hours
Room or equipment requirements (if applicable)

Add service to Sesami
You can create a service directly in Sesami or add an existing product from Shopify.
- in Sesami
Enter a clear title (e.g., "Haircut", "Massage", "Consultation")
Keep the title simple - this appears in booking confirmations and calendars
Add the description
Add variant "duration", unit, and price Create variants like "30 Minutes", "1 Hour", "90 Minutes"
Click to create the service

-in Shopify
In your Shopify Admin, go to Products > Add product
Enter a clear product title that describes the service, such as Haircut, Massage, or Consultation
Click Add variant and create the "Duration" variant and its options, such as 30 Minutes, 1 Hour, or 90 Minutes
Set a price for each duration option
Click Save to create the product

Repeat for each service type you want to offer.
Best practice: Use variants for different durations of the same service. For example, one product "Massage" with variants "30 Minutes", "1 Hour", and "90 Minutes" instead of three separate products.
Create resources and set availability
Resources are what your service needs to happen - team members, rooms, equipment, etc. You'll create them and set their availability.
Note: In the current Shopify Admin interface, resources are labeled as "Team Members". This will be updated to "Resources" in an upcoming release.
Add the Resource name and the Resource type
For staff: Add each team member by name (e.g., "Sarah", "Alex", "Jamie")
For rooms/equipment: Add them as team members for now (e.g., "Room 1", "Camera Kit A")
Set its Working hours and add the availability rules (e.g., Monday-Friday, 9:00 AM - 5:00 PM)
Click to create the resource
Example setup:
Team member "Sarah" → Available Monday-Friday, 9 AM - 5 PM
Room "Treatment Room 1" → Available Monday-Saturday, 8 AM - 8 PM
Good to know: Don't worry if you haven't configured all your resources yet. You can set availability for a single resource now, then create additional resources or update existing resource availability later in Admin Portal: Resources.

Add a booking to your storefront
Make the booking calendar accessible to customers on your online store

Theme App Embed (Recommended - Modern Themes) - Most Shopify 2.0 themes support app embeds
Optional: If you're using an older Shopify theme, a headless storefront (such as Hydrogen), or a custom website, you can skip this step and refer to our Dev Docs for integration instructions.
Step 1: Enable app embed
From the Sesami dashboard, click Customize Theme in the Embed booking experience section.
It will open the Theme Editor with the App embeds panel (usually in the left sidebar or theme settings)
Locate the Sesami Booking App and turn the toggle on to enable the app to be embedded in your theme.
Save


Step 2: Add to Product
Next, add the Sesami booking block to your product template by opening a product template
In the Product information section, click Add block and select the Sesami booking button
Place the block above the Buy buttons
Save your theme changes.
The booking widget will now appear on your storefront product pages, allowing customers to select available booking times.


Manual Integration (Older Themes)
For older themes without app embed support:
In your theme editor, add a button or link to product pages
Link to the product page with the Sesami calendar active
Or contact support for theme-specific integration help
Pro tip: Add a "Book Now" navigation link in your main menu pointing to a collection of all bookable services.
Test end-to-end
Before going live, test a complete booking flow:
Open your store in an incognito/private browser window (to see the customer view)
Navigate to a service product page
Check that the booking calendar appears with available time slots
Select a date and time
Add to cart and proceed through checkout
Complete the purchase (use Shopify's test mode or make a real booking)
Verify the booking appears in Sesami Admin under Bookings
Check on mobile - Test the same flow on a mobile device
What to verify:
Available time slots match your resource availability
The correct timezone is displayed
Booking appears assigned to the correct resource
Times don't overlap if you book multiple appointments
If no time slots appear, see the troubleshooting section below.
Troubleshooting
Calendar doesn't appear on the product page
Check:
Sesami app embed is enabled in Theme Settings
Product has a sesami-service tag in Shopify
Sesami is enabled in Sesami Settings
You're viewing the published theme (not a draft/unpublished version)
Service is configured in Sesami with the product linked
Service is not working or shows errors
Check:
The product is added as a service in Sesami
Resources are assigned to the service
Required resources are enabled (not disabled)
Duration variant format is correct (e.g., "30 Minutes", "1 Hour" - no extra spaces, in English)
No available time slots showing
The most common issue! Check:
Resources are assigned to the service (Step 2)
Availability is set for assigned resources (Step 2)
The booking window allows future bookings (check advanced settings)
No block-offs are covering all available dates
Buy buttons are hidden or removed on the product page
See: No Availability
Timezone looks wrong
Go to Sesami > Settings > Timezone
Verify your store's timezone matches your physical location
Check resource availability is set in the correct timezone
Clear browser cache and test in incognito mode
See: Timezone Mismatch
Checkout behavior is unexpected
If checkout is skipped when you expected it (or vice versa):
Check if Instant Booking is enabled (skips checkout)
Verify deposit settings (may change checkout flow)
Review product pricing (free products may skip checkout)
See: Instant Booking | Deposits
Booking shows "Assigned to: No one"
This happens when time slots become unavailable during checkout:
Enable Reservation Period in Sesami Settings
Enable Cart Validation to check availability before checkout
Customers see "Session expired" or "Invalid link" errors
Common causes:
Links expired - Customer tried to reschedule/cancel after the deadline
Browser cookies blocked - Check browser settings, especially Safari
Cache issues - Clear browser cache and try again
Next Steps
Once you have basic bookings working, consider:
Email notifications - Set up confirmation and reminder emails
Google Calendar sync - Two-way sync with team member calendars
Customer rescheduling - Allow customers to reschedule or cancel
Group appointments - Enable multiple bookings per time slot
Deposits - Collect partial payment at booking time
Point of Sale - Take bookings in-person
Need Help?
Free Onboarding Call - Book a session with our Customer Success team
White-Glove Setup Service - Get professional help with theme integration and setup
Professional Services - Custom development for unique requirements
Support - Email help@sesami.co for assistance
Related
Resources Guide - Detailed resource configuration
Availability Setup - Advanced availability options
Sesami Admin Portal - Overview of admin interface
Services Configuration - Advanced service settings
Create service products in Shopify
Create a Shopify product for each bookable service:
In Shopify Admin, go to Products > Add product
Enter a clear product title without duration (e.g., "Haircut", "Massage", "Consultation")
Keep the title simple - this appears in booking confirmations and calendars
Add variants for different durations:
Click Add variant
Create variants like "30 Minutes", "1 Hour", "90 Minutes"
Set the price for each duration variant
Add a description, images, and other product details as needed
Save the product
Repeat for each service type you want to offer.
Best practice: Use variants for different durations of the same service. For example, one product "Massage" with variants "30 Minutes", "1 Hour", and "90 Minutes" instead of three separate products.
Create resources and set availability
Resources are what your service needs to happen - team members, rooms, equipment, etc. You'll create them and set their availability.
Note: In the current Shopify Admin interface, resources are labeled as "Team Members". This will be updated to "Resources" in an upcoming release.
Open Sesami in your Shopify Admin
Navigate to Team Members (Resources)
Click Add Team Member and create your resources:
For staff: Add each team member by name (e.g., "Sarah", "Alex", "Jamie")
For rooms/equipment: Add them as team members for now (e.g., "Room 1", "Camera Kit A")
For each resource, set their availability:
Click on the resource name
Go to the Availability tab
Add availability rules (e.g., Monday-Friday, 9:00 AM - 5:00 PM)
Save the schedule
Example setup:
Team member "Sarah" → Available Monday-Friday, 9 AM - 5 PM
Room "Treatment Room 1" → Available Monday-Saturday, 8 AM - 8 PM
Link services to resources
Tell Sesami which resources are needed for each service:
Open Sesami in your Shopify Admin
Navigate to Services
Select a service product
Go to the Resources section
Choose which resource types are required:
Select Team member if the service requires a staff member
Select Room if the service requires a physical space
Select Equipment if specific tools are needed
Optionally, assign specific resources:
Check Specific resources only to limit the service to certain team members or rooms
Leave unchecked to allow any available resource of that type
Save
Example configurations:
Haircut: Requires "Stylist" (any stylist can do it)
Facial Treatment: Requires "Esthetician" + "Treatment Room" (both needed)
Private Training: Requires specific resource "Personal Trainer - Sarah" only
Common mistake: If you don't link any resources, no availability slots will appear! Every service must have at least one resource type assigned.
Add booking to your storefront
Make the booking calendar accessible to customers on your online store:
Option 1: Theme App Embed (Recommended - Modern Themes)
Most Shopify 2.0 themes support app embeds:
In Shopify Admin, go to Online Store > Themes
Click Customize on your active theme
Click on App embeds (usually in the left sidebar or theme settings)
Enable the Sesami app embed
Save
The booking calendar will now automatically appear on your service product pages.
Important Note: The Buy Button cannot be hidden or removed from the product template. The Buy Button is required to display booking availability on the calendar. If you prefer not to display the Buy Button to customers, you can enable the “Auto-add to cart / Skip cart” option. This removes the button from the booking flow.
Option 2: Manual Integration (Older Themes)
For older themes without app embed support:
In your theme editor, add a button or link to product pages
Link to the product page with the Sesami calendar active
Or contact support for theme-specific integration help
See: Shopify Online Store Setup
Pro tip: Add a "Book Now" navigation link in your main menu pointing to a collection of all bookable services.
Test end-to-end
Before going live, test a complete booking flow:
Open your store in an incognito/private browser window (to see the customer view)
Navigate to a service product page
Check that the booking calendar appears with available time slots
Select a date and time
Add to cart and proceed through checkout
Complete the purchase (use Shopify's test mode or make a real booking)
Verify the booking appears in Sesami Admin under Bookings
Check on mobile - Test the same flow on a mobile device
What to verify:
Available time slots match your resource availability
Correct timezone is displayed
Booking appears assigned to the correct resource
Times don't overlap if you book multiple appointments
If no time slots appear, see the troubleshooting section below.
Troubleshooting
Calendar doesn't appear on the product page
Check:
Sesami app embed is enabled in Theme Settings
Product has a sesami-service tag in Shopify
Sesami is enabled in Sesami Settings
You're viewing the published theme (not a draft/unpublished version)
Service is configured in Sesami with the product linked
Service is not working or shows errors
Check:
The product is added as a service in Sesami
Resources are assigned to the service
Required resources are enabled (not disabled)
Duration variant format is correct (e.g., "30 Minutes", "1 Hour" - no extra spaces, in English)
No available time slots showing
The most common issue! Check:
Resources are assigned to the service (Step 2)
Availability is set for assigned resources (Step 2)
The booking window allows future bookings (check advanced settings)
No block-offs are covering all available dates
Buy buttons are hidden or removed on the product page
See: No Availability
Timezone looks wrong
Go to Sesami > Settings > Timezone
Verify your store's timezone matches your physical location
Check resource availability is set in the correct timezone
Clear browser cache and test in incognito mode
See: Timezone Mismatch
Checkout behavior is unexpected
If checkout is skipped when you expected it (or vice versa):
Check if Instant Booking is enabled (skips checkout)
Verify deposit settings (may change checkout flow)
Review product pricing (free products may skip checkout)
See: Instant Booking | Deposits
Booking shows "Assigned to: No one"
This happens when time slots become unavailable during checkout:
Enable Reservation Period in Sesami Settings
Enable Cart Validation to check availability before checkout
Customers see "Session expired" or "Invalid link" errors
Common causes:
Links expired - Customer tried to reschedule/cancel after the deadline
Browser cookies blocked - Check browser settings, especially Safari
Cache issues - Clear browser cache and try again
Next Steps
Once you have basic bookings working, consider:
Email notifications - Set up confirmation and reminder emails
Google Calendar sync - Two-way sync with team member calendars
Customer rescheduling - Allow customers to reschedule or cancel
Group appointments - Enable multiple bookings per time slot
Deposits - Collect partial payment at booking time
Point of Sale - Take bookings in-person
Need Help?
Free Onboarding Call - Book a session with our Customer Success team
White-Glove Setup Service - Get professional help with theme integration and setup
Professional Services - Custom development for unique requirements
Support - Email help@sesami.co for assistance
Related
Resources Guide - Detailed resource configuration
Availability Setup - Advanced availability options
Sesami Admin Portal - Overview of admin interface
Services Configuration - Advanced service settings
Last updated
Was this helpful?
