Zenoti + Shopify
Zenoti Shopify integration agency for salon and spa brands
We build the Shopify side of a salon or spa that books on Zenoti: booking-first pages, location pages, gift cards and memberships online, retail and tracking. For Gene Juarez, that is thirteen locations on one editable Shopify Plus theme, and any landing page reaches Zenoti booking in under a second.
Gene Juarez is our client; we built its Shopify Plus store and the Zenoti booking connection.
![]()
5.0 on Shopify Partners · Premier Verified on Clutch
Case study
Gene Juarez: Zenoti booking on a theme the team runs itself
Gene Juarez has run salons and spas in Washington since 1971. Thirteen locations book through Zenoti; retail, gift cards and content run on Shopify Plus.
The old theme was locked behind hard-coded sections, slow to load and slow to hand guests over to booking, and Zenoti bookings were miscounted in GA4, Meta and Google Ads. We rebuilt it as an editable section theme in which every Book Now opens the exact Zenoti webstore page for that service or location, and moved booking, gift card and product events to server-side tracking.
“Aqsa has been a tenacious and consistent collaborator. … We’re so pleased with the new theme and custom functionality.”
Gene Juarez marketing team
Disclosure: Gene Juarez is our client; we built its Shopify Plus store and the Zenoti booking connection.

- Homepage LCP
- 1200 ms
- Landing page to Zenoti booking
- < 1 s
- Developer tickets to change a campaign
- 0
- Locations on one theme
- 13
What we build
The website and Shopify side of a Zenoti business
For salon, spa, med spa and wellness groups on Zenoti: already on Shopify, on a site somewhere else, or moving onto Zenoti.
Zenoti runs
Booking, point of sale, memberships, payroll, forms and its AI receptionist.
We build
The storefront, location and service pages, gift cards and retail online, tracking, and the lifecycle email and SMS around it.
Booking
Zenoti offers an embeddable booking widget, a branded webstore and an API. We choose the hand-off page by page.
- Widget on the pageWhere a guest should book without leaving the page, the Zenoti booking widget sits in the theme section.
- Deep links to the webstoreEvery Book button opens the exact Zenoti webstore page for that service or location. This is how Gene Juarez guests reach booking in under a second.
- Live availabilityWhere times have to show inside the theme, availability comes from the Zenoti API.
- WebhooksZenoti events, such as a completed appointment, wired to the store and the email platform.
Locations
One template for every location, so a new branch is a new entry, not a new page build.
- Location pagesHours, team, services and a Book button that opens that location’s booking, with LocalBusiness schema that matches the Google Business Profile, where Zenoti’s Reserve with Google button appears.
- Local SEO across locationsLocation pages, schema and Business Profiles managed as one set.
- Franchise and multi-brandZenoti has a franchise edition. We build storefronts that know which location a guest is booking, with local control where franchisees need it.
- Beyond salons and spasZenoti also serves med spas, barbershops and fitness clubs, and the same build applies.
Gift cards and memberships
Zenoti’s webstore already sells gift cards, memberships and packages. We put them in front of shoppers from the store.
- Through the Zenoti webstoreThe quickest route: the store links to Zenoti’s own sale pages.
- In the Shopify checkoutThrough Zenoti’s gift card and membership sale APIs, next to retail products in one cart.
- One gift card balanceZenoti and Shopify gift cards reconciled, so a guest has one balance.
- Member pricing on retailZenoti membership status applied to products at the Shopify checkout through Shopify Functions.
Retail
Homecare and retail products on Shopify, tied to the services guests book.
- Products on treatment pagesEach treatment page carries the products used in it, so an appointment can start a basket.
- Replenishment subscriptionsHomecare on a cadence that matches the service interval.
- Reviews after deliveryReview requests sent after a product ships, not after the appointment.
- Data AI shopping tools can readStructured product and service data for AI shopping surfaces.
Tracking
Bookings are the conversion that matters, so they are counted where the ads are bought.
- Server-side booking eventsBooking, gift card and product events sent through your own Google Tag Manager server container to Meta and Google, matched and deduplicated.
- Clean switch-overThe native booking pixel off and server-side events on in the same release, so nothing double-counts.
- Consent and privacyConsent Mode v2 and Shopify’s customer privacy API wired across site, ads and email.
- One revenue reportService revenue, retail revenue and ad spend joined in one view of customer value.
Setup and migration
Client records, appointment history and staff schedules stay in your Zenoti account. Our part is the website, the store and the tracking, ready on the day booking switches over.
- API access that doesn’t lapseZenoti’s API uses keys set up at onboarding and access tokens that expire after 24 hours, so the connection refreshes them on its own.
- Booking links checkedEvery Book button tied to the right Zenoti location and service, checked against your centers before launch.
- Moving the site to ShopifyFrom WordPress, Wix or a custom build: a full URL map, 301s, structured-data parity and a rollback plan.
- Speed and ownershipA performance budget verified on production (Gene Juarez’s homepage LCP is 1200 ms), and the code in your own repository.
Retention
Lifecycle marketing that brings the same guests back
Zenoti records every visit and Shopify records every order. We send both to Klaviyo for email and to Postscript or Attentive for SMS, so these flows run on their own and Klaviyo reports the revenue each one brings back.
- BookA guest books on the site. A pre-visit message suggests add-on services and the products used in that treatment.
- VisitAfter checkout in Zenoti: a thank-you, a review request and the products used in the service.
- RebookA rebooking reminder on each service’s own cycle, which you set per service.
- ReplenishA reminder when a product bought on Shopify is due to run out, linking straight back to it.
- MembersRenewal dates, unused sessions and member prices in the store for members and package holders.
- Win backA return offer for guests with no visit or order in a period you choose. Birthdays and gift card balances run on the same data.
Process
From audit to launch in 6–10 weeks
A scoped integration usually takes 6–10 weeks, depending on how many locations there are and how much of the storefront changes. A full rebuild takes longer, and the timeline is written into the scope.
- 01
Free audit
Booking flow, storefront and tracking reviewed; written findings in one business day.
- 02
Scope and a fixed number
A written scope, timeline and price, agreed before any deposit.
- 03
Build, in weekly reviews
The engineer who scoped the work builds it, with a weekly review you can join.
- 04
Launch with a checklist
Booking links, redirects and tracking checked on production, then a written hand-over.
- 05
Thirty days after
Defect support for thirty days, then an optional retainer with the same engineer.
Get a quote
Build your Zenoti and Shopify quote
Pick a starting point, tick everything you need and send it. A senior engineer replies in writing within 12 hours with questions or a fixed quote.
FAQ
Straight answers.
Anything not answered here goes in the last box of the quote form, or on a call.
Does this replace Zenoti?
No. Zenoti stays your booking and operations system. We connect your Shopify storefront to Zenoti’s booking, gift card and membership data.
Do you work with Zenoti directly?
We work inside your own Zenoti account. You keep the account and its API keys, and we build on the booking widget, webstore and API that Zenoti publishes for its customers.
Can you set up Zenoti for us, or move us onto it?
We handle the website and store side of a Zenoti setup or migration: booking links per location and service, location pages, gift cards online, tracking and, if the site moves to Shopify, every URL mapped and redirected. Client records, appointment history and staff schedules stay with your Zenoti account.
Do you embed the Zenoti booking widget or link to the webstore?
Both, page by page. The widget is a code snippet added to a page so guests book without leaving it; the webstore is Zenoti’s branded booking site. Gene Juarez links each Book button to the exact webstore page for that service or location, which is how a guest reaches booking in under a second.
Can guests buy gift cards, memberships and packages online?
Yes. Zenoti’s webstore sells all three. If you want them in the Shopify checkout next to retail products, Zenoti’s gift card and membership sale APIs make that possible, and the scope says which route suits you.
Can you run our retention emails and SMS?
Yes. We set up Klaviyo, and Postscript or Attentive for SMS, on Zenoti visits and Shopify orders: post-visit, rebooking, replenishment, membership and win-back flows. They run on their own after launch, and a retainer keeps them tuned.
How long does it take?
A scoped integration usually runs 6–10 weeks, depending on how many locations there are and how much of the storefront needs rebuilding. The timeline is written into the scope before you sign.
What does it cost?
Each project is quoted on its scope: the number of locations, the booking hand-off you need and how much of the theme changes. Tick what you need in the quote builder and a senior engineer sends a fixed quote in writing, before any deposit.
Will moving the website hurt our local rankings?
Not when the move is planned: every URL is mapped and redirected, and location pages keep their content and schema. After its move, Gene Juarez saw no measurable drop in organic traffic to its location and service pages.
What happens on the audit?
We review your storefront, booking flow and analytics, then send written findings: where service clients drop out of retail, what your speed is costing, and the fix order ranked by revenue. You keep it whether or not you hire us.
Next step
Get a fixed quote for your Zenoti build
Tick what you need and send it. A senior engineer replies in writing within 12 hours. The audit is free if you would rather start there.
- Reply time
- Within 12 hours, in writing, from a senior engineer
- Before any deposit
- A written scope and a fixed quote