The Qliva storefront gives your patients a place to browse and buy products — supplements, consumables, or anything else your clinic sells — without leaving the patient portal. You can connect it to your existing ecommerce platform or run it entirely through Qliva and Stripe.
Storefront Modes
Qliva supports five storefront modes. Choose the one that fits your clinic's setup.
| Mode | Products managed in | Checkout via | Best for |
|---|---|---|---|
| Stripe Native | Qliva | Stripe | Clinics without an existing ecommerce store |
| Shopify Full | Shopify (embedded) | Shopify | Clinics with an existing Shopify store |
| Shopify Partial | Qliva (synced from Shopify) | Stripe | Hybrid: Shopify catalogue, Stripe checkout |
| Squarespace Full | Squarespace (link out) | Squarespace | Clinics with an existing Squarespace Commerce store |
| Squarespace Partial | Qliva (synced from Squarespace) | Stripe + verification | Hybrid: Squarespace catalogue, Stripe checkout |
Stripe Native
Stripe Native keeps everything inside Qliva. There's no separate ecommerce platform to manage.
- Import your existing Stripe products into Qliva, or create new ones directly in the Admin Portal
- Patients browse your products, add items to their cart, and pay via Stripe Checkout
- All orders and payments are visible in your Stripe dashboard
Shopify
Full Mode
Your existing Shopify store is embedded as an iframe inside the patient portal. Shopify handles the full browsing and checkout experience — Qliva just provides the container.
Partial Mode
Products are synced from Shopify into Qliva. Patients browse the synced catalogue inside the portal and check out via Stripe. Use this if you want the Qliva checkout flow instead of Shopify's.
Setup
To connect Shopify, go to Admin Portal → Settings → Storefront → Shopify and enter:
- Store domain — your Shopify store URL (e.g.
yourstore.myshopify.com) - Storefront API token — a public token; controls which products are visible
- Admin API token — a private token; used for product sync and order management
- Webhook API secret — used to verify incoming Shopify webhooks
Squarespace
Full Mode
A link to your Squarespace store opens in the patient portal. There's no product sync — patients are taken to your Squarespace site to browse and buy.
Partial Mode
Products are synced from Squarespace into Qliva. Patients browse the synced catalogue and pay via Stripe. After completing payment on Squarespace, they click I've completed my payment — Qliva verifies the order via the Squarespace API and confirms the transaction.
Post-Purchase Booking Automation
When a patient buys an appointment-linked product on Squarespace, Qliva can automatically send them a booking link. Here's how the flow works:
- Qliva receives the order via webhook
- The patient is matched by email — or a new patient account is created if no match is found
- A one-time booking link is emailed to the patient (valid for 7 days)
- The booking link pre-fills the patient's name and email (read-only) and skips the payment step
- If the link expires before the patient books, contact your clinic to issue a new one
To link a product to an appointment type, go to Admin Portal → Settings → Storefront → Squarespace → Product Mappings and connect a Squarespace Product ID to a specific appointment type.
Setup
Go to Admin Portal → Settings → Storefront → Squarespace and enter:
- Store URL — your Squarespace store address
- Commerce API key — found in your Squarespace account under Settings → Advanced → API Keys
Vital.ly (Optional Add-On)
If your clinic uses Vital.ly for supplements, you can add it as an additional tab in the patient portal storefront.
Go to Admin Portal → Settings → Storefront → Vital.ly and enter your Vital.ly store URL. Once saved, patients will see a Vital.ly tab alongside your other storefront options.