Shopify Sync · $39 CAD/month

How Shopify Sync works

Keep Shopify as your booking system. We mirror tagged workshop products into the offhrs app so Toronto guests can discover you — then they complete booking on your storefront.

What Sync can and can’t do

We can

  • List tagged Shopify workshops in the offhrs app for discovery
  • Keep remaining seats in sync from Shopify inventory
  • Send guests to your Shopify product page to book and pay
  • Run Sync alone — no Lite or Pro plan required
  • Use your partner profile address for map pins and studio location

We can’t

  • Checkout or take payment inside offhrs for synced workshops (that stays on Shopify)
  • Create or edit workshop sessions in the offhrs dashboard as the source of truth — edit products in Shopify
  • Process refunds in offhrs for Shopify bookings — refund in Shopify Admin
  • Replace Lite/Pro: Sync does not unlock native offhrs booking, Stripe Connect ticket sales, or in-app workshop creation
  • Connect directly to third-party Shopify apps (for example Numos) — we only read products and inventory from Shopify itself

Third-party Shopify apps (e.g. Numos)

offhrs Sync does not integrate with Numos or other external apps. If another app writes products, variants, dates, or inventory into Shopify, we can still sync that data — but only because it lives in Shopify. We won’t push availability, bookings, or catalog changes back into Numos (or similar tools). Treat Shopify as the shared source of truth between systems.

Setup checklist

Follow these steps once. After you’re live, keep tagging new workshops and editing dates in Shopify.

  1. 01

    Create an offhrs partner account

    Sign up with your studio details. You’ll need this account to claim the Shopify install and manage Sync in Settings.

  2. 02

    Install offhrs from Shopify

    In Shopify Admin → Apps (or the Shopify App Store), install the offhrs app. Do not type a shop domain into offhrs — install must start from Shopify so OAuth can complete.

  3. 03

    Sign in and claim your shop

    After install, you’ll be guided to sign in (or create your account) so the shop links to your partner profile. One Shopify shop per offhrs account.

  4. 04

    Start the Shopify Sync trial

    In Partners → Settings, choose Start trial for Shopify Sync ($39 CAD/month, 30-day free trial). Approve the plan in Shopify Admin — billing is on your Shopify invoice, not Stripe.

  5. 05

    Tag workshop products

    On each workshop product in Shopify, add the tag offhrs_workshop. Only tagged products are synced.

  6. 06

    Give each session a date & time

    Each Shopify variant becomes one session on offhrs. Use a Date (or similar) option with a clear datetime — for example August 21, 2026 12:00 PM — or set an offhrs.starts_at metafield. Times without a timezone are read as America/Toronto. Variants we can’t parse are skipped.

  7. 07

    Sync and go live

    Hit Sync now in Settings (webhooks keep products and inventory updated afterward). Guests see your workshops in the offhrs app and tap Book on Shopify to checkout on your store.

Product tips

  • One product, many times: use variants for each session time under the same product title — they group as one card with time options in the app.
  • Inventory = seats left. When quantity hits zero (or the product isn’t Active), we mark the session fully booked.
  • Category defaults to your primary signup category (the first one you picked). Override per product with optional metafield offhrs.category.
  • Optional metafields (namespace offhrs): starts_at, book_url, capacity, duration_minutes, category.
  • Studio address comes from your offhrs partner profile (not the Shopify product) — keep that up to date for map pins.

Date & time formats

Each variant needs a parseable date and time. Date-only values are skipped — we never invent a start time. Times without a timezone are read as America/Toronto.

Recommended

  • August 21, 2026 12:00 PM
  • Aug 21, 2026 12:00 PM

Also accepted

  • August 21 2026 12:00 PM / Aug 21 2026 12:00 PM
  • 2026-08-21 12:00 PM / 2026-08-21 12:00 / 2026-08-21T12:00
  • 8/21/2026 12:00 PM / 8/21/2026 12:00
  • 21 August 2026 12:00 PM / 21 Aug 2026 12:00 PM
  • ISO strings with a timezone offset or Z (parsed as real instants)

Ordinals (21st) and at are fine — e.g. August 21, 2026 at 12:00 PM.

Ready to connect Shopify?

Create your partner account, choose Shopify Sync on the billing step (skip Stripe), then install offhrs from Shopify Admin and start the Sync trial in Settings.