# Tectalic Wine Club Documentation — Full Content Source: https://docs.tectalic.com/wine-club/ Generated: 2026-05-21 (UTC) --- # Home URL: https://docs.tectalic.com/wine-club/index.md # Tectalic Wine Club Subscription-based wine clubs for your Shopify store. ![Tectalic Wine Club](images/hero.png) ## Why Tectalic Wine Club? - **Built for wineries** — Case sizes, vintage swaps, curated selections, and winery pickup, all handled the way wineries actually work - **Native Shopify app** — Uses your existing checkout, orders, and customer accounts, with nothing extra to set up - **Flat monthly pricing** — Based on your subscription count, with a [free Startup 10 tier](settings.md#available-plans) to get started. No per-transaction fees on any plan - **Guided setup wizard** — [Create a club group step by step](setup.md), with a final preview that switches between markets if you ship to multiple currencies - **Curated or choose-your-own** — [Pick the wines yourself](club-types.md#curated-clubs), or [let customers build their own case](club-types.md#choose-your-own-clubs) - **Anniversary-date billing** — Each customer's first order ships on signup, and renewals follow their chosen frequency from that date - **Customer self-service** — Pause, skip, swap wines, change delivery, update payment, and add order notes from inside the Shopify customer account. No emails or phone calls needed - **Automated billing** — Renewal charges, payment retries, and reminder emails go out without you having to think about it - **Merchant dashboard** — Active subscriptions, sign ups, revenue, upcoming orders, [stock forecast](dashboard.md#stock-forecast), and customer search, all on the app's home screen - **Subscription import** — [Migrate existing club members from a spreadsheet](importing-subscriptions.md), and let customers add their own payment method before first charge - **Member limits and waitlists** — [Cap any club's size](managing-clubs.md#member-limit-waitlist) and capture demand with a Shopify segment when it fills up - **Shipping, delivery, and pickup** — Offer all three delivery methods on a single club - **Club discounts** — Automatic on every subscription charge, with optional discounts on one-off purchases too - **Customer segments per club** — Shopify segments are created for every club and waitlist, ready for email marketing and reporting - **Flexible signup channels** — Embed the signup widget on [your own custom landing page](landing-page.md), or share an [all-clubs, club group, or individual club signup link](landing-page.md#signup-links). QR codes work for tasting rooms too - **Branded emails** — Customisable subject lines, your logo, and your reply-to address [Get Started](installation.md) ## Explore the Documentation - **Dashboard** --- Your at-a-glance overview of wine club performance, upcoming orders, stock forecasting, and customer search. [Dashboard overview](dashboard.md) - **Club Types** --- Choose between curated wine selections or let customers pick their own bottles. [Learn about club types](club-types.md) - **Installation** --- Install the app from the Shopify App Store and connect it to your store. [Installation guide](installation.md) - **Preparing Your Products** --- Get your Shopify products ready for wine club subscriptions. [Product preparation](preparing-products.md) - **Setting Up Your Wine Club** --- Create clubs with custom frequencies, case sizes, pricing, and delivery methods. [Setup guide](setup.md) - **Setting Up Your Landing Page** --- Create a storefront page where customers can learn about your club and sign up. [Landing page guide](landing-page.md) - **Cellar Door** --- Sign up customers in person with a QR code, and offer winery pickup as a delivery option. [Cellar door guide](cellar-door.md) - **Launching Your Wine Club** --- Go live with your wine club and start accepting customers. [Launch checklist](launching.md) - **Customer Portal** --- Customers pause, skip, swap wines, update delivery address, and manage payments. [Portal features](customer-portal.md) - **Managing Clubs** --- Edit clubs, change or replace products, and adjust pricing. [Club management](managing-clubs.md) - **Managing Subscriptions** --- View, edit, and manage subscriptions from the Shopify admin. [Subscription management](managing-subscriptions.md) - **Importing Subscriptions** --- Migrate existing customers from spreadsheets or other platforms via CSV upload. [Import guide](importing-subscriptions.md) - **Managing Orders** --- Process and fulfil wine club orders, with automatic tagging and filtering. [Order management](managing-orders.md) - **Billing & Payments** --- Automatic billing cycles with payment retry handling for failed payments. [Billing details](billing.md) - **Customer Emails** --- Automated emails for welcome messages, billing reminders, and payment failures. [Email configuration](customer-emails.md) - **Merchant Emails** --- Alerts for billing failures, inventory issues, and other events that need your attention. [Merchant notifications](merchant-emails.md) - **Settings** --- Configure branding, customise email templates, and manage your subscription plan. [App settings](settings.md) - **Support & Troubleshooting** --- Get help, report an issue, or check the troubleshooting guide. [Get help](support.md) ## What's New See the latest features, improvements, and fixes added to the app. [View updates](whats-new.md) ## Need Help? Visit the [troubleshooting guide](troubleshooting.md) or [contact support](support.md). --- # Installation URL: https://docs.tectalic.com/wine-club/installation.md # Installation This guide covers the one-time technical setup to get the Tectalic Wine Club app running on your Shopify store. !!! info "What's included" Tectalic Wine Club manages subscriptions, recurring billing, the signup experience, and the customer portal. Shipping rates, fulfilment, and tax run through your existing Shopify setup. Age verification and alcohol compliance sit outside the app, so use Shopify's native rules or a dedicated compliance app and check your local regulations. !!! tip "Other beverages and products" The app is built for wine, and the merchant UI, signup widget, portal, and emails all use wine wording ("wines", "bottles", "case", "winery"). The subscription mechanics underneath aren't wine-specific, so cider, beer, spirits, or other recurring-product clubs will work, with the caveat that your customers will see wine wording throughout. ## 1. Verify store requirements Before installing, confirm your store meets these requirements: **Payment gateway:** Your store needs an active payment gateway that supports Shopify subscriptions (e.g., Shopify Payments, Stripe, or another compatible provider). **New Customer Accounts:** Shopify has retired the old customer accounts system. Tectalic Wine Club requires the new customer accounts to work. [Learn more about upgrading](https://help.shopify.com/en/manual/customers/customer-accounts/upgrade). To check: Go to **Settings > Customer accounts** in your Shopify admin and ensure **New customer accounts** is selected. **Online Store 2.0 theme (recommended):** The signup widget can be embedded on any page using the theme editor with an Online Store 2.0 compatible theme (e.g., Dawn). If your store uses an older theme, you can still use [signup links](landing-page.md#signup-links) to let customers join your wine club. ## 2. Install the app Install the Tectalic Wine Club app from the Shopify App Store. After installation, the app appears in your Shopify admin under **Apps**. Your store starts on the **free Startup 10 plan**, which includes up to 10 wine club subscriptions with full feature access. When you're ready to grow beyond 10 subscriptions, you can upgrade to a paid plan from [Settings > Billing](settings.md#billing) in the app. ## 3. Enable Customer Portal The customer portal lets customers manage their subscriptions from their account page. To enable it, add the Tectalic Wine Club extension blocks to your customer account pages via the theme editor. 1. In your Shopify admin, go to **Online Store > Themes > Customize** 2. From the page dropdown at the top, select **Checkout and customer accounts** 3. From the page dropdown at the top, select **Customer Accounts > Orders** 4. Click the **Apps** tab on the left, locate the **Tectalic Wine Club** app, click the **+** next to **View Subscription Button**, then click **Add page to > Orders and Order status** 5. Click the **Apps** tab on the left again, locate the **Tectalic Wine Club** app, click the **+** next to **My Subscriptions**, then click **Add page to > Accounts** 6. Click **Save** (top right) 7. Click the **Add to menu** button to add the My Subscriptions page to your customer account menu 8. Click **Save** to save the menu, then close the menu settings by clicking **X** (top right) 9. Exit the editor by clicking the back button at the top left of the screen Once enabled, customers can view and manage their subscriptions from the **My Account** section, and will see a **View Subscription** button on their orders: ![Orders screen with View Subscription button](images/orders-screen-with-view-subscription-button.png) See [Customer Portal](customer-portal.md) for details on what customers can view and manage from their account. !!! info "New Customer Accounts required" Shopify has retired the old customer accounts system. Tectalic Wine Club requires the new customer accounts to work. See [step 1](#1-verify-store-requirements) above. ## 4. Enable checkout validation Checkout validation ensures wine club orders meet your case size and product requirements. 1. In your Shopify admin, go to **Settings > Checkout** 2. Under **Checkout rules**, click **Add rule** and select **Tectalic Wine Club** — the rule is added with an **Inactive** status 3. Click on the **Tectalic Wine Club** rule to open it, then click **Turn on** (top right) This prevents customers from modifying their cart in ways that would break wine club requirements (e.g., removing bottles from a curated case). ![Checkout Rules](images/wine-club-checkout-rule.png) Confirm the **Tectalic Wine Club** rule now shows as **Active** in the Checkout rules list. --- # Club Types URL: https://docs.tectalic.com/wine-club/club-types.md # Club Types Tectalic Wine Club supports two club types: **Curated** and **Choose Your Own**. The club type determines who selects the wines — you or your customers. ## Comparison | Aspect | Choose Your Own | Curated | |--------|-----------------|---------| | Wine selection | Customers choose from your nominated product pool | You pre-select the wines | | Quantities | Customers decide how many of each wine | You set the quantity for each wine | | Multi-case orders | No (exactly 1 case) | Supported (1x, 2x, 3x, etc.) | | Price at signup | Varies by customer selection | Exact price shown | | Change Items (portal & admin) | Available | Not available | | Inventory planning | Must stock all available wines | Predictable quantities | | Fulfillment | Different per customer | Same pick list every order | | Add products from Shopify product page | Yes | No (use Club Settings in the app) | ## Choose Your Own clubs In a Choose Your Own club, customers pick their own wines from a product pool you define. They build their case from your available selection, choosing any combination that fills the case size. **Example:** "Build Your Own 6-Pack" = Customer picks any 6 wines from the club's product selection ### Setting up a Choose Your Own club The quickest way to create a Choose Your Own club is with the **guided setup wizard** — click **Create wine club** on the dashboard or clubs page and follow the steps. The wizard covers naming, frequencies, case sizes, discounts, and wines, then previews the result before you publish or save a draft. You can also use the **manual editor** for full control on one page — click **Skip the guided setup** on the first step of the wizard. Either way, the key steps are: 1. Select **Choose Your Own** as the club type 2. Define the available product pool (no quantities needed) 3. Choose your frequencies and case sizes 4. Set the discount percentage 5. Publish the club You can also add products to a Choose Your Own club directly from the Shopify product page via the Purchase Options extension. ### Customer experience 1. Customer browses all wines in the available pool 2. Customer picks wines until reaching the case size 3. Customer has full control over their selection 4. Price is determined at checkout based on what they selected 5. For repeat orders, the customer's selection carries over to the next case. They only revisit the portal if they want to swap wines. Customers can change their wine selection for future orders at any time through the [customer portal](customer-portal.md#change-items), or by contacting you. The upcoming order reminder email, sent 14 days and 2 days before each billing date, prompts them to swap wines if they want to. If they do nothing, the previous selection ships as is. ### When to select 'Choose Your Own' - Customers want to explore and personalise - You offer a broad product catalogue - You want to support dietary restrictions or preferences ## Curated clubs In a Curated club, you pre-select the exact wines and quantities that customers receive. Customers see what they're getting and can choose to order multiple cases, but they cannot modify the wine selection. **Example:** "Summer Reds 6-Pack" = 2x Cabernet Sauvignon + 2x Pinot Noir + 2x Merlot ### Setting up a Curated club The quickest way to create a Curated club is with the **guided setup wizard** — click **Create wine club** on the dashboard or clubs page. Pick your frequencies, case sizes, and discounts first, then choose your wines. The wizard splits bottles evenly across each case size, with any remainder going to the first wines in your list. You can fine-tune quantities per club afterwards in the manual editor. You can also use the **manual editor** directly — click **Skip the guided setup** on the first step of the wizard. Either way, the key steps are: 1. Select **Curated** as the club type 2. Choose your frequencies and case sizes 3. Add specific products from your inventory and set the quantity for each 4. Quantities must add up to the case size (e.g., 2 + 2 + 2 = 6 for a 6-bottle case) 5. Set the discount percentage 6. Publish the club ### Product availability Curated clubs are automatically hidden from the signup widget if any selected product becomes unavailable (deleted, out of stock, or unpublished). This ensures customers can only sign up for complete cases. When a product becomes unavailable, you receive an email alert. To restore the club, replace the unavailable product in Club Settings or wait for the product to become available again (e.g., restocked). The club reappears automatically. ### Updating curated selections When you change the wines in a Curated club, the update is **automatically applied to all existing subscriptions**. This makes it easy to manage seasonal collections and vintage rolls — update the selection once and every subscriber receives the new wines on their next order. See [Managing Clubs > Changing Products](managing-clubs.md#changing-products) for details. ### Customer experience 1. Customer views the pre-selected wines (read-only) 2. Customer chooses how many cases to order (1x, 2x, 3x, etc.) 3. Price is shown upfront since products are pre-selected ### When to select 'Curated' - Sommelier-selected seasonal collections - A "trust us" premium experience - You want every order to have the same pick list - Limited-edition or themed selections --- # Preparing Your Products URL: https://docs.tectalic.com/wine-club/preparing-products.md # Preparing Your Products Before creating your wine club, check how your Shopify products are set up. The app works with your existing products, but a few things are worth getting right first. ## Individual bottle products Each product you add to a club should represent an **individual bottle**, not a whole case or multi-pack. The app builds cases from individual bottle products based on the case size the customer selects. For example, if you offer a 6-pack club, you add individual wine products and the app combines them into a 6-bottle case — you don't need to create a separate "6-pack" product. ## Shopify product status Shopify products can be set to **Active** or **Unlisted**. Both work with the wine club app: - **Active** — the product is typically visible on your online store. Customers can find it in collections, search results, and browse to it directly. - **Unlisted** — the product is not typically visible in your online store, but can still be accessed via a direct link. Unlisted products will still appear on the wine club signup page and the Change Items screen in the customer portal. !!! tip Unlisted is a great option for wines you want to reserve exclusively for club subscribers. Products with a status of **Draft** or **Archived** will not be shown to customers on the signup page or Change Items screen. When setting up or editing clubs, the product picker filters products by status depending on the club type: - **Choose Your Own clubs** — Active, Unlisted, and Draft products can be selected. Draft products won't appear to customers until published, making this useful for pre-staging wines in the available pool before release. - **Curated clubs** — only Active and Unlisted products can be selected, since curated selections push directly to live subscriptions. - **Archived** products can never be selected when adding or replacing products. [Learn more about Shopify product statuses](https://help.shopify.com/en/manual/products/details/product-details-page#product-status) ## Inventory tracking Shopify products can have inventory tracking turned on or off. Both options work with the wine club app, but the setting affects how subscription renewals are processed. - **Inventory tracking off** — renewals will always go through regardless of stock levels. This is the simplest option if you don't need to track inventory for your club wines. - **Inventory tracking on** — stock levels are checked when processing a renewal. If a product is out of stock, the renewal may fail. See [Billing & Payments](billing.md#payment-failures) for details. [Learn more about Shopify inventory tracking](https://help.shopify.com/en/manual/products/inventory) ## Vintages Most wineries create a **separate Shopify product for each vintage** (e.g., "2023 Shiraz" and "2024 Shiraz") rather than updating the same product in place. This approach gives you full control over pricing, descriptions, and images for each vintage while keeping a clear history. When a new vintage arrives, the app makes it easy to swap it into your club and update all existing subscriptions at once. See [Vintage Rolls](managing-clubs.md#vintage-rolls) for a step-by-step workflow. --- # Setting Up Your Wine Club URL: https://docs.tectalic.com/wine-club/setup.md # Setting Up Your Wine Club Once you've completed the [installation steps](installation.md), this guide walks you through creating and configuring your wine club. You can also track your setup progress from the [dashboard setup guide](dashboard.md#setup-guide). !!! tip "Migrating existing customers?" If you already have wine club customers from another platform or spreadsheet, you can [import them](importing-subscriptions.md) after setting up your clubs — no need for each customer to sign up individually. ## 1. Create a wine club There are two ways to create a wine club: - **Guided setup wizard** — pick your club type, name it, set frequencies, case sizes, discounts, choose wines, and optionally add an image. The last step previews each club; if you ship to multiple countries, switch markets to see pricing in each currency. Publish straight away or save as a draft. After publishing you get a shareable signup link and a downloadable QR code for your tasting room or marketing. Click **Create Club** on the dashboard or clubs page to start. - **Manual editor** — the full editor with all options on one page. Click **Skip the guided setup** on the first step of the wizard. Both methods create the same club; pick whichever you prefer. ### Club type Select the **club type** — [Choose Your Own or Curated](club-types.md). !!! tip "Not sure which club type to choose?" See [Club Types](club-types.md) for a detailed comparison of **Choose Your Own** and **Curated** clubs, including differences in customer experience, fulfillment, and pricing. ### Frequencies and case sizes All subscriptions use **anniversary-date billing** — the customer's first order is placed immediately at signup, and subsequent orders are billed according to their chosen frequency from that date. For example, a customer who signs up for a quarterly club on March 15th will be billed next on June 15th, then September 15th, and so on. !!! info "Seasonal (fixed-date) billing" The app is designed for the anniversary-date model: first order on signup, subsequent orders on the chosen frequency from that date. The seasonal model — where the winery nominates the months of the year that all club orders are processed together — isn't supported out of the box. [Contact us](support.md) if a fixed-date schedule suits your winery and we'll discuss your needs in more detail. Select the **frequencies** and **case sizes** you'd like to offer. You can select multiple of each. Four delivery frequencies are available: - Monthly - Quarterly (every 3 months) - Six-monthly (every 6 months) - Annually (every 12 months) Three case sizes are available: - 3 bottles - 6 bottles - 12 bottles The app generates a **club** for every frequency and case size pair. For example, selecting 2 frequencies and 2 case sizes creates 4 clubs: | | Quarterly | Six-Monthly | |---|---------|-----------| | **6-pack** | 6-pack Quarterly | 6-pack Six-Monthly | | **12-pack** | 12-pack Quarterly | 12-pack Six-Monthly | ### Enable the clubs you want to offer You don't have to offer every club. Each club has a checkbox — **enable the ones you want to offer** and leave the rest disabled. Disabled clubs are not shown to customers. For example, you might enable "6-pack Quarterly" and "12-pack Six-Monthly" but leave the other two disabled, and offer different discount percentages and/or products for each. ### Configure each club Expand each enabled club to configure it individually. Every club can have its own settings, displayed on your wine club signup page: - **Club Name** — the customer-facing name shown in the signup widget, customer portal, and emails (defaults to the frequency and case size, e.g., "6-pack - Quarterly"). Each club name must be unique within the group. - **Description** — explain the offering, highlight benefits, or describe the selection - **Discount (%)** — the club discount applied to this club's price - **Image** — an optional image shown in the signup widget ### Add products Each enabled club needs products — these should be individual bottle products, not whole cases. See [Preparing Your Products](preparing-products.md) for guidance on setting up your products for subscriptions. How you add them depends on the club type: === "Choose Your Own Club" Click **Select Products** to choose the wines that customers can pick from when building their case. You don't need to set quantities — customers decide how many of each wine to include. You can also add products directly from Shopify's product page using the **Purchase Options** extension. === "Curated Club" Click **Select Products** to choose the specific wines for this club, then **set the quantity** for each wine. The quantities must add up to the case size. For example, a 6-bottle curated club might be: 2x Cabernet Sauvignon + 2x Pinot Noir + 2x Merlot. A bottle counter shows your progress (e.g., "4/6 bottles configured") and confirms when the case is complete. The app calculates and displays the **retail price** (sum of all products) and the **club price** (with the discount applied). !!! note "Different products per club" Each club can have a completely different product selection. For example, a "6-pack Quarterly" could feature everyday wines while a "12-pack Six-Monthly" showcases premium selections. ### Club group name Before saving, enter a **club group name** in the sidebar (e.g., "Build Your Own Case" or "Premium Reds Club"). This is an internal name used to organise your clubs — customers won't see it. Each club group name must be unique within your store. Once your club is live, see [Managing Clubs](managing-clubs.md) for what you can and cannot change. ## 2. Publish your club When you're happy with your club configuration, click **Publish** to make it available for signups. Clubs remain in **Draft** status until you publish them, and draft clubs do not appear in the signup widget. !!! note "Customers need the signup widget to join" Publishing a club makes it available, but customers can only sign up through the signup widget on your storefront. The next step in the getting started guide — [Setting Up Your Landing Page](landing-page.md) — covers adding the widget to a page. You can continue to edit most settings after publishing. See [Managing Clubs](managing-clubs.md) for details on what can and cannot be changed. ## 3. Configure delivery methods The app automatically offers the same delivery methods you already have configured for your store. These are managed in your Shopify admin under **Settings > Shipping and delivery** and can include: | Method | Description | |--------|-------------| | **Shipping** | Standard carrier shipping to the customer's address | | **Local Delivery** | Delivery within a local area (you define the radius/zone) | | **Winery Pickup** | Customer picks up from your location | Customers choose their delivery method during signup. They can change it later through the [customer portal](customer-portal.md) or you can change it on their behalf from the [subscription detail view](managing-subscriptions.md). ### Free shipping for subscribers You can offer free shipping to wine club subscribers using Shopify's built-in discount features. 1. In your Shopify admin, go to **Discounts** 2. Create a new **Automatic discount** 3. Set the discount type to **Free shipping** 4. Under **Purchase type**, select **Subscription** 5. Configure any additional conditions (e.g., minimum order amount) 6. Save and activate the discount This discount applies automatically at checkout and on recurring billing for wine club orders. ![Free Shipping for Club Subscribers](images/free-shipping-for-club-subscribers.png) ## 4. Set up club discounts on one-off orders You can offer wine club subscribers an automatic discount on their regular (non-subscription) purchases. This is separate from the club discount that is already applied automatically to subscription orders. 1. In your Shopify admin, go to **Discounts** 2. Create a new **automatic discount** with the type **Amount off order** 3. Set the **discount value** (e.g., Percentage, 20%) 4. Set the **purchase type** to **One-time purchase** 5. Under **Eligibility**, select **Specific customer segments** and choose your wine club segment (e.g., "Wine Club Subscribers") The discount applies automatically at checkout for eligible subscribers — no discount code required. ![Club Discount on One-Off Orders](images/member-discount-one-off-orders.png) !!! tip "Planning to use segments for email campaigns too?" Marketing emails only reach customers who have opted in, whether you send them through Shopify Email or another platform. Enable the marketing opt-in checkbox in **Shopify Admin → Settings → Checkout** before launch. See [Customer Emails](customer-emails.md#using-segments-for-marketing) for details. !!! info "Subscription discounts are automatic" The club discount on subscription orders is configured when you create your club and applied automatically at checkout and on each billing cycle. The discount described here is for separate, one-off purchases only. ## 5. Review policies Before launching, review how you want to handle: - **Pausing:** Will you allow customers to pause their subscription? - **Cancellation:** What is your cancellation policy? - **Skipping:** Can customers skip individual orders? These actions are available through both the customer portal and your admin dashboard. See [Customer Portal](customer-portal.md) and [Managing Subscriptions](managing-subscriptions.md) for details on each action. ## 6. Configure email settings The app sends transactional emails to your customers on your behalf — including welcome messages, billing reminders, payment failures, and subscription changes. Configure the sender identity for these emails: 1. In the Tectalic Wine Club app, go to **Settings > Emails** 2. Configure the **From name** (e.g., your winery name) 3. Configure the **Reply-to email address** 4. Optionally upload your logo for email branding See [Settings > Email](settings.md#email-settings) for all email configuration options, and [Customer Emails](customer-emails.md) for the full list of emails the app sends. --- # Setting Up Your Landing Page URL: https://docs.tectalic.com/wine-club/landing-page.md # Setting Up Your Landing Page Before launching, create a dedicated page on your storefront that explains your wine club offering and lets customers sign up. This page is the main entry point for new customers. !!! note "Using an older theme?" The steps below require an Online Store 2.0 theme. If your store uses an older (vintage) theme, you can use the [all-clubs signup link](#all-clubs-signup-link) or [club signup links](#signup-links) instead — both work with any theme. ## 1. Create a page template 1. In your Shopify admin, go to **Online Store > Themes > Customize** 2. From the page dropdown at the top, select **Pages > Create template** 3. Design the page to your preference ## 2. Add the signup widget The signup widget lets customers browse your published clubs and join directly from the page. To add it: 1. In the **Template** area, click **Add section** 2. From the **Apps** tab, select **Wine Club Sign Up** 3. In the block settings, you can set the primary color, which changes the button color The filters above the club plans default to the largest case size with the most frequent delivery option. ## 3. Add your content Use the page to explain what makes your wine club worth joining. Consider including: - **What customers receive** — describe your club offerings, frequencies, and case sizes - **Pricing and value** — highlight the club discount and what's included - **Perks and benefits** — mention free shipping, club discounts on one-off purchases, or other perks - **How it works** — briefly explain the signup, delivery, and management process - **Images** — showcase your wines, vineyard, or past club selections Keep the content focused on what your club offers and why it's worth joining. ## 4. Save the template Once your content and signup widget are in place, click **Save** in the theme editor. ## 5. Create and publish the page 1. In your Shopify admin, go to **Online Store > Pages** 2. Click **Add page**, configure the page as needed and set the visibility to **Visible** 3. For the template, select the template you just created 4. Click **Save** ## 6. Add navigation Don't forget to add your new wine club page to the store menu so customers can find it: 1. In your Shopify admin, go to **Content > Menus** 2. Add a link to your wine club page Consider also linking to it from your homepage and footer navigation. Your wine club is now live and ready to accept subscriptions. ## Signup links Signup links let you share a wine club directly with customers — in email campaigns, on social media, as QR codes for tasting rooms, with partners, or anywhere else. Every link lands customers on your store's signup widget so they can join in a few clicks. You have three levels to choose from, depending on how targeted you want the experience to be: - **All-Clubs** — shows every published club group, with filters. Best for a single link on your homepage or in store navigation. - **Club group** — shows one club group and all of its case size and frequency options. Best for promoting a specific wine club to a targeted audience. - **Individual club** — takes customers straight to a single case size and frequency, with no other options shown. Best for embedding behind a specific call-to-action like "Subscribe — 12 bottles, every 3 months". Each "Copy signup link" button in the app has a tooltip describing exactly what the customer will see, so you can pick the right one before you share it. ### All-clubs signup link Every store has an all-clubs signup link that shows all published club groups in one place. This works with any theme, including older (vintage) themes that don't support the signup widget block. To copy the all-clubs signup link: 1. In the app, go to **Clubs** 2. From the page actions, click **Copy signup link** 3. Paste the link wherever you need it — store navigation, emails, social media, etc. !!! tip The all-clubs signup link is the quickest way to get a working signup experience if your theme doesn't support app blocks. ### Club group signup link Each published club group has its own signup link that shows all of its enabled clubs (case size and frequency combinations) on one page. Customers choose which option suits them, without seeing your other club groups. To copy a club group's signup link: 1. Open the club group in the app 2. From the page actions in the top right, click **Copy signup link** 3. Paste the link wherever you need it After publishing a new club group through the [setup wizard](setup.md), the final step also shows a **QR code** and a **Copy signup link** button for the same URL — handy for printing on cellar door signage straight away. ### Individual club signup link Each enabled club within a club group has its own signup link that skips the selection step entirely — customers go straight to that exact case size and frequency. Best for narrow campaigns where you want to remove all friction. To copy an individual club's signup link: 1. Open the club group in the app 2. Next to each enabled club, click the **Copy signup link** button 3. Paste the link wherever you need it !!! note Signup links show the signup widget and your store's theme — but don't support custom content like images or text. For a fully customised experience, use the [signup widget on a landing page](#2-add-the-signup-widget) instead. !!! note "Already have customers?" If you have existing customers from another system or spreadsheet, you can skip individual signups and [import them in bulk](importing-subscriptions.md) instead. !!! tip "Cellar door signups" Signup links work well for cellar door and tasting room signups — generate a QR code and let customers sign up on their own device. See [Cellar Door](cellar-door.md#signing-up-customers-in-person) for details. ### Hiding clubs from the signup widget By default, all published club groups appear on your [landing page](#2-add-the-signup-widget) and the [all-clubs signup link](#all-clubs-signup-link). If you want a club group to only be accessible via its club signup link — for example, a VIP tier that you share privately — you can unlist it: 1. Open the club group 2. In the sidebar, under **Signup page visibility**, select **Unlisted** 3. Save the club group The club group will be hidden from the signup widget, but all its club signup links continue to work. Everything else — billing, selling plans, customer segments — remains unchanged. !!! tip This is useful when you have multiple tiers for different customer groups. Share each tier's direct link with the right audience, without cluttering your main signup page. --- # Launching Your Wine Club URL: https://docs.tectalic.com/wine-club/launching.md # Launching Your Wine Club Once your club(s) and landing page are configured, test the complete flow and then promote it to customers. ## 1. Test the complete flow Before promoting your club, test the entire signup and management experience: 1. Visit your storefront and use the signup widget to view your club options, and ensure all pricing is correct. 2. Choose a club to join, and complete checkout and place an order 3. Check the subscription appears in the Tectalic Wine Club admin 4. Visit the customer portal and try the available actions (pause, skip, etc.) ## 2. Import existing customers If you have existing wine club customers from a spreadsheet, another platform, or a manual wine club, you can [import them in bulk](importing-subscriptions.md) instead of requiring each customer to sign up individually. Importing is currently an [early access](importing-subscriptions.md) feature — contact support to get access. ## 3. Promote your club Once everything is working, promote your club to customers: - Share your [wine club landing page](landing-page.md) on social media and in email campaigns - Use the **QR code** provided at the end of the setup wizard, or generate one from a [free QR code tool](https://www.shopify.com/tools/qr-code-generator){:target="_blank"} linking to your landing page or a [club signup link](landing-page.md#signup-links) — print it on flyers, table cards, or cellar door signage so visitors can sign up on the spot (see [Cellar Door](cellar-door.md#signing-up-customers-in-person) for details) - Use [club signup links](landing-page.md#signup-links) to promote specific clubs — each club has its own link you can share in targeted emails, social posts, or with specific customer groups - Create Shopify customer segments for targeted marketing (these are created automatically per club) — make sure you've [collected marketing consent from customers](customer-emails.md#using-segments-for-marketing) before sending promotional emails - Set up free shipping for wine club subscribers if you haven't already (see [Setting Up Your Wine Club](setup.md#free-shipping-for-subscribers)) - Consider setting up a club discount on one-off purchases (see [Setting Up Your Wine Club](setup.md#4-set-up-club-discounts-on-one-off-orders)) --- # Dashboard URL: https://docs.tectalic.com/wine-club/dashboard.md # Dashboard The dashboard is the first screen you see when you open the Tectalic Wine Club app. It gives you an at-a-glance overview of your wine club performance and quick access to common tasks. ![Dashboard showing stats cards, period selector, upcoming orders table, current plan, and help resources](images/dashboard.png) ## Period selector A segmented button above the stats cards lets you choose a time window of **7**, **30**, or **90 days**. Changing the period updates the Active subscriptions, New sign ups, and Revenue cards, as well as the upcoming orders table. ## Search A search box at the top of the dashboard finds wine club subscribers by **name**, **email address**, or **club name**. Submitting takes you to the [subscriptions list](managing-subscriptions.md#searching-subscriptions) with the term applied. It's the quickest way to find a specific member from a cold start — useful at the cellar door, on the phone, or when you don't already have the subscriptions list open. ## Statistics Four cards at the top of the dashboard show key wine club metrics: **Active subscriptions**, **New sign ups**, **Revenue**, and **Annual forecast**. Hover the card title for more detail. Each card includes a trend indicator when prior period data is available. !!! info "Multi-currency revenue" If your store has subscriptions in multiple currencies, revenue amounts are converted to your shop's base currency using exchange rates from recent orders. An asterisk and tooltip indicate when currency conversion is included. ## Upcoming wine club orders A table showing upcoming orders due in the selected period. Each row includes: - **Customer** name - **Next billing date** - **Club price** in the customer's currency - **Club** name - **Bottles** count If an upcoming order has an issue (such as a missing payment method or email delivery problem), its row is highlighted in orange with a warning icon — the same indicators shown on the [subscriptions list](managing-subscriptions.md#subscription-list). Click the row to open the subscription and resolve the issue. Click any row to open that subscription's [detail page](managing-subscriptions.md#subscription-details). The table shows up to 10 orders — click **View all** in the footer to see the full list on the [subscriptions page](managing-subscriptions.md). ## Stock Forecast The stock forecast helps you plan inventory for upcoming wine club orders. Open it by clicking **Stock forecast** in the upcoming orders table header. ![Stock forecast table showing wine variants, clubs, bottles needed, current stock levels, and status indicators](images/stock-forecast.png) The forecast shows a table of every product variant needed for upcoming orders, with columns for: | Column | Description | |--------|-------------| | **Wine** | Product name and variant | | **Club(s)** | Which clubs need this product | | **Bottles needed** | Total quantity required across all upcoming orders | | **In stock** | Current Shopify inventory level | | **Status** | **Sufficient** or **Low** — flagged as low when inventory is less than twice the bottles needed | The stock forecast uses the same period as the dashboard — **7**, **30**, or **90 days**. !!! tip "Plan ahead" Use the 90-day view to plan purchasing and production ahead of time, especially before busy periods. ## Resume wizard banner If you started creating a club with the [setup wizard](setup.md#1-create-a-wine-club) but didn't finish, a banner appears at the top of the dashboard so you can pick up where you left off. Click **Resume** to continue, or **Discard** to start fresh. The banner disappears once you finish or discard the draft. ## Setup guide If you're still getting started, a collapsible setup guide appears at the top of the dashboard tracking your progress through four key steps: 1. **Create your first wine club** — [Set up a club](setup.md) with frequencies, case sizes, and products 2. **Add the signup widget** — Add the Member Signup block to your [landing page](landing-page.md) theme template 3. **Add the customer portal** — Enable the [subscription management portal](customer-portal.md) in your customer accounts 4. **Get your first customer** — Promote your wine club and [launch](launching.md) Each step shows a checkmark when completed, with a progress indicator (e.g., "2 of 4 completed"). Once all steps are done, the guide automatically collapses. You can dismiss it at any time. ## Your current plan The dashboard shows your current [billing plan](settings.md#billing) under **Your current plan**, with: - **Plan name** and status badge - **Subscription count** and capacity bar showing usage against your plan limit - **Manage plan** button to go to [billing settings](settings.md#billing) !!! warning "Upgrade prompts" When your subscription count approaches or exceeds your plan limit, a banner appears recommending an upgrade. If you're over your plan limit, the banner changes to indicate that an upgrade is required. Click the upgrade button to go to [billing settings](settings.md#billing). ## Help and resources At the bottom of the dashboard you'll find links to: - **What's new** — See the latest [app updates](whats-new.md) - **Documentation** — Browse these docs - **Contact support** — Get in touch with the [support team](support.md) Plus quick-reference cards linking to key documentation topics: importing subscriptions, cellar door sign-ups, club types, subscription management, customer emails, and order fulfillment. --- # Managing Clubs URL: https://docs.tectalic.com/wine-club/managing-clubs.md # Managing Clubs Once a club is published, you can continue to edit most settings. Some changes are restricted once the club has active subscriptions. If a club group or club has an issue that needs your attention, its row is highlighted in orange with a warning icon. Hover over the icon for a summary, or click the row for full details. ## Editing clubs | What You Can Always Change | What Requires Confirmation | What's Blocked | |---|---|---| | Club group name | Discount percentage | Club type | | Club names, descriptions, images | Free shipping toggle | | | Signup page visibility | Disabling clubs | | | Member limit | | | | Adding new products or clubs | | | | | Removing products | | | | Curated product selections | | Changes that require confirmation show a warning explaining the impact on existing subscriptions. When you save changes to a published club, the app shows real-time progress directly on the page — including a banner with a spinner and status message. The page is greyed out while the operation is in progress and automatically refreshes when complete. See [Real-Time Progress Feedback](managing-subscriptions.md#real-time-progress-feedback) for more details. !!! info "Changing club type" A club's type cannot be changed once any customer has subscribed to the club. If you need a different type, create a new club. ## Changing products How product changes work depends on your club type: === "Choose Your Own Club" Adding or removing products from a club changes the **available pool** that customers can choose from. This affects: - **New signups** — They see the updated product selection during signup - **Existing subscribers changing items** — When a customer uses Change Items in the portal or you change items on their behalf, they see the updated pool Existing subscriptions' current selections are **not changed**. If you remove a product that a customer currently has in their subscription, their upcoming order still includes it. To update their selection, use [Replace Product](#replacing-a-product) to swap it across all subscriptions at once, or [Change Items](managing-subscriptions.md#change-items) to update individual subscriptions. !!! warning "Choose Your Own club changes don't affect existing subscriptions" Product and discount changes only apply to new signups and future Change Items actions. Each subscription is independent once created. To update an existing subscription, make changes directly from the [subscription detail view](managing-subscriptions.md). === "Curated Club" When you change the curated product selections for a club and save, the app **automatically updates all existing subscriptions** on that club. This is the primary way to manage vintage rolls and seasonal updates — change the wines once at the club level and every subscriber receives the updated selection. When saving curated product changes on a club with active subscriptions, you'll see a confirmation dialog showing: - How many existing subscriptions will be updated - A note that all items will be repriced to current rates - An option to **notify customers** of the change (enabled by default) After confirming, a live progress bar tracks each subscription as it's updated. The page automatically refreshes when all subscriptions are done. !!! tip "Vintage rolls made easy" When a new vintage arrives, simply update the curated selection in the club settings. All existing subscriptions are automatically switched to the new wines — no need to update each one individually. !!! info "Repricing" When curated products are propagated to existing subscriptions, all items are repriced to the current product prices with the club discount applied. This ensures pricing stays consistent across all subscribers. ## Replacing a product Use **Replace Product** to quickly swap one product for another across an entire club group — including all clubs and all existing subscriptions. This is available for both Curated and Choose Your Own club groups. ![Replace product dialog showing product selection, notification and repricing options](images/replace-product.png) **Replace Product** is useful when: - A new vintage arrives and you need to swap the old one — see [Vintages](preparing-products.md#vintages) for a step-by-step workflow - A wine is discontinued and you need to substitute it - You want to swap a product across all clubs at once - You need to update both club settings and existing subscriptions in one step - The replacement product is already used in some clubs — the app handles the overlap automatically ### How to replace a product !!! tip "Before you begin" - The replacement product must already exist in Shopify with a status of **Active** or **Unlisted**. Draft and Archived products won't appear in the replacement product picker. - The outgoing product doesn't need to be active — archived and even deleted products appear in the "product to replace" dropdown. 1. Open the club in the app and click **Replace product** in the page header 2. Select the **product to replace** from the dropdown — this includes products in club selections, products that only appear on existing subscriptions, and deleted products 3. Click **Choose product** to pick the replacement product from your Shopify catalogue 4. Choose your options: - **Notify customers of this change** — Sends an "Items changed" email to affected customers (enabled by default) - **Reprice all items to current rates** — Updates pricing on all items in affected subscriptions, not just the swapped product (enabled by default) 5. Click **Replace product** to confirm The replacement happens in the background. The club page shows a live progress bar tracking how many subscriptions have been updated (e.g., "Replacing product: 50/200 subscriptions updated"). The page automatically refreshes when the operation completes. !!! tip "Removing a product? Consider replacing it" When you remove a product that has active subscriptions, the confirmation dialog offers a **Replace Product Instead** shortcut. This opens Replace Product with the removed product pre-selected, so you can swap it out across all existing subscriptions in one step. !!! warning "Replacement is immediate" Once confirmed, the product swap begins processing across all affected subscriptions. This cannot be undone — to reverse it, you would need to replace the product again. ## Vintage rolls When a new vintage arrives, follow these steps to roll it across your club: 1. **Create the new vintage product** in Shopify and set it to **Active** or **Unlisted** — it must have one of these statuses to appear in the product picker. 2. **Swap the old vintage for the new one:** - Use [Replace Product](#replacing-a-product) to update all clubs and subscriptions within a group at once, or - Update [curated selections](#changing-products) to push the new wine to all subscribers - Repeat for any other club groups that use the same wine 3. **Archive the old vintage** in Shopify once it's no longer available. This removes it from the signup page and Change Items screen while keeping the product record intact. !!! tip Always create the new vintage product *before* replacing — it must be Active or Unlisted to appear in the product picker. The old product can be archived before or after replacement; it still appears in the "product to replace" dropdown even if archived or deleted. For more on how vintages and product statuses work, see [Preparing Your Products](preparing-products.md#vintages). ## Renaming a club You can rename a club at any time. When you do, the app automatically updates: - **Customer tags** — all subscriber and waitlisted customer tags in Shopify are updated to the new name - **Shopify customer segments** — the subscription and waitlist segments are updated to match the new name - **Subscription name at checkout** — the club name shown to customers during Shopify checkout is updated !!! note Order tags on existing orders are not renamed — they retain the club name from when the order was placed. Future orders will use the new name. ## Member limit & waitlist You can cap the number of members in a club by setting a **Member limit**. When the club reaches its limit, the signup page automatically shows a waitlist form instead of the normal signup flow. ### Setting a member limit 1. Open the club in the app 2. In the **Member limit** field, enter the maximum number of members you want to allow 3. Click **Save** The member count includes all Active, Paused, and Payment Failed subscriptions. Cancelled and expired subscriptions don't count toward the limit. Leave the field empty to allow unlimited signups. !!! info "The member limit is not a guaranteed hard cap" The member limit prevents new signups through the signup widget, but in rare edge cases additional members may slip through — for example, if a customer is directed back to an existing cart by an abandoned cart recovery tool, or if two customers complete signup simultaneously at the exact moment the limit is reached. Treat the member limit as a strong guardrail rather than a guaranteed ceiling. ### How the waitlist works When a club reaches its member limit: - **New visitors** see a waitlist form instead of the signup button. They enter their name and email, and must tick a consent checkbox ("Notify me by email when a spot opens up") to join the waitlist. - **Waitlisted customers** are created as Shopify customers (if they don't already exist), tagged with `Waitlist: {Club Name}`, and subscribed to email marketing so you can contact them via Shopify Email or your preferred/existing email marketing tool. - **A Shopify customer segment** is automatically created for each club's waitlist, so you can use Shopify Email or Shopify Segments to contact waitlisted people. ### Viewing the waitlist On the club edit page, a **Waitlist** section appears when people have joined the waitlist. It shows: - The number of people currently waiting - A table with each person's name, email, preferred club, date joined, and status - Conversion statistics — how many visitors saw the waitlist form and how many joined ### Contacting waitlisted customers The app creates a Shopify customer segment for each club's waitlist. You can use this segment with **Shopify Email** to: - Notify people when a spot opens up - Send updates about the club - Offer alternative clubs or products !!! tip "Waitlist notifications are manual for now" The app does not automatically email waitlisted customers when a spot opens. Use the Shopify customer segment to send emails manually when you're ready to accept new customers. ### Waitlist conversion When a waitlisted customer later signs up for the club (by completing the normal signup flow), their waitlist entry is automatically marked as converted. ## Direct signup links & visibility Each enabled club has its own unique signup link you can share in email campaigns, social media, or with specific customer groups. You can also unlist club groups from your public signup page while keeping them accessible via direct link — useful for VIP or invite-only tiers. See [Signup Links](landing-page.md#signup-links) for setup instructions and details. ## Archiving clubs Archiving a club stops new member signups but everything else remains the same as an active club — billing, delivery reminders, customer segments, and Shopify synchronization all continue unchanged. ## Deleting clubs Club groups can be deleted if they have never had any subscriptions. Once any customer has subscribed (even if later cancelled), the club group cannot be deleted — archive it instead. --- # Customer Portal URL: https://docs.tectalic.com/wine-club/customer-portal.md # Customer Portal The customer portal lets customers manage their wine club subscriptions from their Shopify account page. Customers access it by logging into their account and navigating to the **Subscriptions** section. !!! info "New Customer Accounts required" Shopify has retired the old customer accounts system. Tectalic Wine Club requires the new customer accounts to work. [Learn more about upgrading](https://help.shopify.com/en/manual/customers/customer-accounts/upgrade). ## Overview When a customer views their order history in their account, they will see a **View Subscription** button on subscription orders, which lets them manage their subscription: ![Orders screen with View Subscription button](images/orders-screen-with-view-subscription-button.png) The portal displays subscriptions grouped by status (see [Subscription Statuses](managing-subscriptions.md#subscription-statuses) for full details): - **Active** — Currently billing on schedule - **Paused** — Temporarily on hold, can be resumed - **Failed** — On hold due to payment issues, can be reactivated - **Ended** — Cancelled subscriptions Each subscription shows the quantity (bottle count), frequency, status, and next billing date. ![My Subscriptions](images/my-subscriptions-list.png) Clicking **View** on a subscription shows the full details, including the upcoming order, delivery information, and payment method. If a promotional discount applies, the upcoming order section shows the discounted price with the original price struck through, so the customer sees what they'll actually pay. ![Subscription Details](images/subscription-details.png) ## Logging in The customer portal lives inside Shopify's customer account, so customers log in through Shopify's standard account flow. There is no separate password to set up or invite link to redeem. By default, Shopify uses passwordless sign-in. The customer enters their email address, Shopify sends them a one-time 6-digit verification code, and they enter that code to log in. The account is provisioned automatically the first time someone successfully signs in for an email address — so [imported customers](importing-subscriptions.md) and brand-new customers go through the same flow as everyone else. The links in app-generated emails (upcoming order reminders, billing notices, the "Add a payment method required" email, and so on) all point at the customer's subscription page. If the customer isn't already signed in when they click, Shopify shows the sign-in screen first and then takes them straight to the subscription page once they've entered their code. !!! info "Other sign-in methods" Shopify also supports **Sign in with Shop** (when Shop Pay is enabled) and social sign-in with Google or Facebook. These are configured in your Shopify admin under **Settings > Customer accounts** — see Shopify's [Customer accounts](https://help.shopify.com/en/manual/customers/customer-accounts) documentation for the full set of options and how the sign-in screen looks to customers. ## Real-time progress feedback When a customer performs any action in the portal, they see real-time progress feedback showing what's happening with their request. This includes: - A **spinner** with a status message while the action is being processed - The subscription page is **disabled** while the action is in progress, preventing conflicting actions - When the action completes, the page **automatically refreshes** with the updated data — no manual reload needed - If something goes wrong, a clear error message is shown If the customer tries to perform another action while one is already in progress, the portal detects the existing operation and shows its progress instead of displaying an error. ## Available actions The actions available to customers depend on the club type and subscription status. | Action | Description | Choose Your Own | Curated | |--------|-------------|:---------------:|:-------:| | **View** | View subscription details and upcoming order | Yes | Yes | | **Pause** | Temporarily pause billing and deliveries | Yes | Yes | | **Resume** | Resume a paused subscription | Yes | Yes | | **Cancel** | Permanently end the subscription | Yes | Yes | | **Skip** | Skip the next scheduled order | Yes | Yes | | **Order Now** | Charge and deliver the next order immediately | Yes | Yes | | **Change Items** | Modify wine selection for future orders | Yes | No | | **Change Delivery** | Update delivery address or method | Yes | Yes | | **Update Payment** | Update the payment method on file | Yes | Yes | | **Reactivate** | Reactivate a failed subscription | Yes | Yes | ### Pause Pausing temporarily stops billing and deliveries. The subscription stays in a paused state until the customer resumes it. No orders are created while paused. ### Resume Resuming a paused subscription restarts billing on the next scheduled date. The customer can resume at any time from the portal. ### Cancel Cancelling permanently ends the subscription. Any orders already placed or in progress continue as normal. This action cannot be undone. ### Skip Skipping pushes the next order to the following billing cycle. The customer sees the skipped date and the new next billing date before confirming. ### Order Now Order Now charges the customer immediately for their next scheduled order. Since the order is placed early, future orders also shift forward accordingly. If the subscription has no payment method on file, Order Now is blocked before any charge is attempted and the customer sees a clear message asking them to add a payment method first. ### Change Items Available for Choose Your Own clubs only. Customers can browse the available product pool and modify their wine selection, as long as the total number of bottles matches the case size. Changes apply to the upcoming order and all future orders. Customers reach this screen from the customer portal, either by signing into their Shopify account or by clicking the link in the [upcoming order reminder email](customer-emails.md#automated-emails) that arrives 14 days and 2 days before each billing date. There is no separate landing page. The portal shows the full product pool, the same wines they could pick from at signup. If a customer doesn't change their selection before billing, the same wines and quantities ship again. They don't need to log in and there's nothing to confirm. If the subscription has a promotional discount, the confirmation screen shows discounted totals and a note that the discount will carry forward to future orders. ### Order Note Customers can view and edit the order note on their subscriptions. The order note is a free-text instruction for deliveries, such as "Leave at the back door" or "Ring doorbell on arrival". The note is automatically included on all future subscription orders. The order note is available for active and paused subscriptions. Notes are also visible to merchants on the view subscription screen in the Shopify admin. See [Order Note](managing-orders.md#order-note) for how notes appear on orders. ### Change Delivery Customers can update their delivery address or switch between delivery methods (shipping, local delivery, or winery pickup), depending on what you have configured. When changing delivery, the portal checks which delivery options are available for the new address and shows the customer their options along with any shipping cost changes. !!! tip "Delivery methods" The three delivery methods — Shipping, Local Delivery, and Winery Pickup — are configured in your Shopify admin under **Settings > Shipping and delivery**. The portal automatically shows whichever methods are available for the customer's address. ### Update Payment Clicking **Update payment method** opens an inline modal showing the customer's current card and any other saved cards on their Shopify account. They can switch cards or add a new one and the change applies immediately on save. ![Customer portal inline modal showing the current card on file with options to switch to another saved card or add a new one](images/portal-change-payment-method.png) !!! note "Imported subscriptions" Customers without a payment method on file see a prominent warning banner at the top of the subscription page with an **Add payment method** call to action. Clicking it takes them to their Shopify customer account profile to add a payment method. Customers arriving from a billing-failed or upcoming-order email — or from a merchant-sent ["Add a payment method" prompt](managing-subscriptions.md#no-payment-method-on-file) — see this banner immediately rather than having to find the Payment method card. ### Reactivate If a subscription is on hold due to payment failures, the customer can reactivate it from the portal. Reactivation charges the customer immediately. The portal recommends updating payment details before reactivating. --- # Cellar Door URL: https://docs.tectalic.com/wine-club/cellar-door.md # Cellar Door If you have a cellar door or tasting room, you can sign up new customers on the spot and offer winery pickup as a delivery option. ## Signing up customers in person For in-person signups, we recommend having customers complete the process on their own device rather than entering their details for them. Print a QR code and display it on table cards, flyers, or counter signage — customers scan it with their phone and sign up in under a minute. Your QR code can point to either: - Your [wine club landing page](landing-page.md) — shows all your published clubs - A [club signup link](landing-page.md#signup-links) — takes the customer directly to a specific club Use Shopify's [free QR code generator](https://www.shopify.com/tools/qr-code-generator){:target="_blank"} to create a printable code from either link. **Why this approach works well:** - Customers' devices often have their address and payment details saved, so their details can often auto-fill during signup — making it faster than entering everything manually - You never need to handle customers' sensitive payment information - Multiple customers can sign up at the same time, rather than waiting to use a single device - Customers can complete signup at their own pace, even after they leave !!! warning "If you use a shared device for signups" If customers complete signup on a store device such as a tablet or laptop, always use a **private browsing** (incognito) window. Close the window completely between each customer and open a fresh private session for the next signup. This helps ensure the previous customer's details don't carry over to the next signup. !!! info "Sits alongside your existing Shopify POS" Wine club signups flow through your Shopify storefront and Checkout — including the QR-code path above. Shopify POS continues to handle one-off in-person bottle sales and other transactions in parallel, so your over-the-counter workflow stays exactly as it is today. ## Identifying existing members at the cellar door When a visitor mentions they're a member (or you suspect they are), there are three quick ways to confirm and find their subscription: - **[Dashboard search](dashboard.md#search)** — type a name, email address, or club name into the search box on the wine club app's home screen. Fastest path when you're already in the app. - **Look the customer up in your Shopify admin Customers list** — the customer profile shows their order history and any wine club tags applied to them. - **Open one of the [per-club customer segments](customer-emails.md#per-club-segments)** the app creates and search for the customer to confirm which club they belong to. For cellar-door staff who don't need full admin access, the [Shopify Mobile app](https://help.shopify.com/en/manual/shopify-mobile){:target="_blank"} has the same customer lookup and works well on a phone or tablet behind the counter. !!! tip "Make it part of the script" A simple "Are you a member of our wine club?" during the welcome opens the door either way — staff can apply the member discount and acknowledge the relationship, or pitch the club to a new visitor. The dashboard search confirms membership when it's not obvious from the conversation. ## Winery pickup If your Shopify store has local pickup enabled, winery pickup appears as a delivery option alongside shipping and local delivery. Customers can choose it during signup and switch between delivery methods at any time through the [customer portal](customer-portal.md#change-delivery). You can also change it on their behalf from the [subscription detail view](managing-subscriptions.md#change-delivery). Delivery methods are configured in your Shopify admin under **Settings > Shipping and delivery**. See [Configure Delivery Methods](setup.md#3-configure-delivery-methods) for setup details. !!! note "Delivery options not showing?" If winery pickup doesn't appear as an option, your fulfillment location may need a complete street address. See [Troubleshooting — Delivery options missing](troubleshooting.md#delivery-options-missing) for the fix. --- # Managing Subscriptions URL: https://docs.tectalic.com/wine-club/managing-subscriptions.md # Managing Subscriptions You can view and manage all subscriptions from the Tectalic Wine Club admin. ## Subscription list The subscription list shows all subscriptions with tabs to filter by **All**, **Active**, **Paused**, **Failed**, **Cancelled**, or **Has Issues**. ![Subscription list filtered to the Has Issues tab, with warning rows for imported subscriptions and the Send add payment method email confirmation](images/admin-subscription-list-has-issues.png) If a subscription has an issue that needs your attention, its row is highlighted in orange with a warning icon. Hover over the icon for a summary, or click the row for full details. Warnings include: - **No payment method on file** — the subscription doesn't have a payment method attached, common for [imported subscriptions](importing-subscriptions.md) before the customer adds one. See [No Payment Method on File](#no-payment-method-on-file) below for how to resolve this. - **Email delivery issues** — the customer's email address is bouncing or has been flagged for spam. See [Email Delivery Issues](#email-delivery-issues) below for details on resolving bounces and suppression. The **Has Issues** tab shows a badge with the current count and lists every subscription with an active warning. Review this tab after a [CSV import](importing-subscriptions.md) or whenever you need to triage outstanding issues. You can also [import subscriptions in bulk](importing-subscriptions.md) from a CSV file using the **Import** button at the top of the list. ### Searching subscriptions Use the search field at the top of the subscription list to find customers by **name**, **email address**, or **club name**. You can also search directly from the [dashboard](dashboard.md) — the search navigates to the subscription list with your search term pre-filled. !!! note Customer name and email search queries the Shopify Admin API. If this is temporarily unavailable, search falls back to club name matching only, and a banner informs you of the limitation. ### Bulk actions Select one or more subscriptions to reveal a row of bulk actions above the table. Every bulk action follows the same pattern: - **Selecting across pages** — Selecting the header checkbox selects the current page. The table then offers a **Select all _N_ subscriptions** option that extends the selection to every subscription matching the current view and search. - **Confirmation step** — Each action opens a confirmation dialog summarising what will happen and how many subscriptions are affected before any changes are made. Available bulk actions: - **Send add payment method email** — Emails each selected customer a link to add a payment method to their subscription. Subscriptions that already have one are skipped automatically. This is the recommended way to follow up after a [CSV import](importing-subscriptions.md). ## Subscription statuses Each subscription is in one of these statuses: | Status | Description | |--------|-------------| | **Active** | Billing on schedule — orders are created and charged automatically | | **Paused** | Temporarily on hold — can be resumed by the customer or merchant | | **Failed** | Ended due to repeated payment failures — can be reactivated after updating payment | | **Cancelled** | Permanently ended by the customer or merchant — cannot be undone | ## Subscription details Clicking a subscription opens the detail view showing: - Customer name and email - Club name (the specific frequency and case size offering) - Current status - Next billing date - Current items, quantities, and pricing - Delivery method and address - Order note (if set) - Payment method on file - Activity log ![Subscription detail page showing customer information, subscription status, delivery details, line items with promotional discount pricing, payment method, and quick actions](images/admin-subscription-details.png) ### Promotional discounts When a customer signs up with a Shopify automatic discount (like "10% off for wine club subscribers" or "$10 off"), that discount is saved on the subscription and applied at each billing. The subscription detail page shows the price your customer actually pays. Each line item shows the **sale price** with the original price struck through beside it. Hover over the sale price to see the discount name and amount. Subtotals and totals use the discounted amounts. ## Real-time progress feedback When you perform any action on a subscription, the app shows real-time progress directly on the page. You'll see: - A **banner with a spinner** and status message while the operation is being processed - The page is **greyed out** while the operation is in progress, preventing conflicting actions - When the operation completes, the page **automatically refreshes** with the updated data - If something goes wrong, an error message is shown so you know what happened For bulk operations like [Replace Product](managing-clubs.md#replacing-a-product), the subscription page also shows the overall bulk progress (e.g., "Updating items — part of Replace Product: 150/200 subscriptions updated"). ## Actions You can perform the same actions as customers, plus you have visibility into the full activity history. | Action | Description | |--------|-------------| | **Pause** | Temporarily pause billing and deliveries | | **Resume** | Resume a paused subscription | | **Cancel** | Permanently end the subscription | | **Skip** | Skip the next scheduled order | | **Order Now** | Charge the customer immediately for their next order | | **Change Items** | Modify wine selection (Choose Your Own clubs only) | | **Change Delivery** | Update the delivery address or method | | **Order Note** | Add or edit a note that appears on all future orders | | **Reactivate** | Reactivate a failed subscription | ### Pause Pausing stops billing and deliveries until you or the customer resumes the subscription. Use this when a customer requests a temporary hold (e.g., travelling, or excess stock). ### Resume Resuming restarts billing on the next scheduled date. ### Cancel Cancelling permanently ends the subscription. Any orders already placed or in progress continue as normal. This cannot be undone. ### Skip Skipping pushes the next order to the following billing cycle. The skipped billing date and new next billing date are shown before confirming. ### Order Now Order Now charges the customer immediately for their next scheduled order. This is useful when a customer wants their delivery early. Since the order is placed early, future orders also shift forward. If the billing attempt fails (e.g., due to inventory issues), no automatic retries occur. You need to resolve the issue and trigger Order Now again. If the subscription has no payment method on file, the Order Now action is blocked before any charge is attempted and a clear error message is shown. See [No Payment Method on File](#no-payment-method-on-file) for how to prompt the customer to add one. ### Change Items Available for Choose Your Own clubs only. You can modify the wine selection on behalf of the customer. The total number of bottles must match the case size. Changes apply to the upcoming order and all future orders. If the subscription has a promotional discount, the confirmation screen shows discounted prices and an info banner noting the discount will carry forward. By default, the customer receives an email when their items are changed. To make a change silently, uncheck **Send notification email to customer** before saving. For Curated clubs, the wine selection is fixed and cannot be changed. ### Change Delivery Update the delivery address or switch between delivery methods (shipping, local delivery, or winery pickup). The system checks which delivery options are available for the address and shows the available options along with any shipping cost changes. ### Order Note You can add or edit an order note on behalf of the customer. The order note appears on the subscription detail page below the delivery details. Click **Edit** to open the editor. The note is included with all future orders for this subscription and appears in the Shopify order notes field. Use it for special instructions like delivery preferences, gift messages, or scheduling requests. Customers can also edit their own order note from the [customer portal](customer-portal.md#order-note). !!! tip "For general member notes, use the Shopify customer profile" The order note is meant for short, per-order delivery instructions that get printed on the packing slip. If you want to record longer-lived information about a member — favourite varietals, dog's name, allergies, conversation history — keep that in the Shopify customer profile. The Notes field there and the Timeline both stay attached to the customer across every order, subscription, and visit. !!! tip "Setting up a subscription as a gift" There's no dedicated gift mode, but the existing flow handles it cleanly: - The buyer signs up with their own email address and payment method - The delivery address goes to the gift recipient (set during signup, or updated via [Change Delivery](#change-delivery) afterwards) - The order note carries the gift message and the sender's name so the recipient knows who it's from The buyer keeps billing and customer portal access on their own Shopify account; the recipient receives the wines. ### Update Payment Method The subscription detail page shows the customer's payment method — card brand, last four digits, and expiry date (or PayPal email). Click **Edit** to update it. You'll see two options: 1. **Send link to update card** — Emails the customer a secure link so they can update their own card details. 2. **Manage payment on customer page** — Opens the customer's profile in Shopify, where you can replace their card directly: 1. Click the pencil icon next to **Payment methods** 2. Click the three-dot menu next to the payment method 3. Click **Replace card** and enter the new card details Any changes to a customer's payment method automatically apply to all their wine club subscriptions. !!! tip For step-by-step instructions, see [Edit a customer's subscription payment information](https://help.shopify.com/en/manual/customers/manage-customers#edit-a-customers-subscription-payment-information) in the Shopify Help Center. ### No payment method on file When a subscription has no payment method on file, a prominent warning banner appears at the top of its detail page. This is most common for [imported subscriptions](importing-subscriptions.md) before the customer adds a payment method. ![Subscription detail page with an orange No payment method on file banner explaining the impact and a Send email button to ask the customer to add one](images/admin-subscription-no-payment-method.png) The banner includes a **Send email** action that emails the customer asking them to add a payment method. After clicking, a confirmation dialog shows the customer's email address and explains exactly what's about to be sent. On confirm, the email is queued and a success banner appears at the top of the page. The email links them to their subscription page in the customer portal, where the same prominent banner walks them through adding a payment method via their Shopify customer account profile. !!! info "Send button safeguards" The action is checked against Shopify before the email is queued, so you'll see a clear error if the customer has actually added a payment method already (the local view can briefly lag behind Shopify), if their email is suppressed for delivery issues, or if you've already sent one within the last minute. The "Add a payment method required" template can be re-subjected and disabled like any other customer email — see [Settings > Email Templates](settings.md#email-templates). Once the customer adds a payment method to their Shopify account, the app automatically attaches it to any of their subscriptions still missing one. The banner clears and a "Payment Method Added" entry appears in the [activity log](#activity-log) — no further action needed from you. ### Reactivate Available for Failed subscriptions. When a subscription fails due to payment issues, [update the payment method](#update-payment-method) before reactivating. Then you can reactivate the subscription, which immediately attempts to charge the customer's payment method. ## Activity log Each subscription has an activity log showing all changes over time. Each entry includes: - **What changed** — The action taken (e.g., paused, items changed, address updated, payment method added) - **Who made the change** — Customer, merchant, or system - **When** — Timestamp of the change The activity log gives you a complete audit trail for each subscription. ## Email delivery issues If a customer's email address bounces or is marked as spam, a warning banner appears at the top of their subscription detail page. The banner shows the affected email address and explains why emails can't be delivered. You have two options: - **Change email address in Shopify** — Opens the customer's profile in Shopify admin where you can update their email. Once updated, the app automatically detects the change and clears the delivery block. - **Resume email delivery** — If you've confirmed with the customer that their email address is correct (e.g., the bounce was temporary), click this to re-enable sending. You'll be asked to confirm that you've verified the address is valid. !!! warning Resuming delivery to an address that's still invalid will cause another bounce and may affect email deliverability across all your wine club emails. Always verify the address with the customer first. !!! info "Subscription activity continues" While a customer's email is blocked, their subscription continues as normal — renewals, billing, and deliveries still occur on schedule. The only difference is the customer won't receive any email notifications about these events. Skipped emails appear in the activity log so you can see exactly which communications the customer missed. You also receive an email alert when a customer's email is first blocked. See [Merchant Emails > Email Delivery Alerts](merchant-emails.md#email-delivery-alerts) for details. ## Operation feedback When you perform an action on a subscription or club, real-time feedback is shown directly on that page. Operation banners and progress are scoped to the specific subscription or club you're working on — you won't see banners for operations happening on other subscriptions or clubs while you're browsing elsewhere in the app. Bulk operations like [Replace Product](managing-clubs.md#replacing-a-product) or [curated product updates](managing-clubs.md#changing-products) show a **progress bar** on the club edit page while they run. --- # Importing Subscriptions URL: https://docs.tectalic.com/wine-club/importing-subscriptions.md # Importing Subscriptions If you have existing wine club customers — whether from a spreadsheet, another platform, or a manual wine club — you can import them into the app so they don't have to sign up again individually. The import creates active subscriptions with future billing dates, so customers are not charged during the import. They continue on their existing billing schedule and are charged automatically when their next billing date arrives. !!! info "Payment methods after import" If a customer already has a card saved on your Shopify store, the app attaches it to the subscription during import. Anyone without a saved card adds one themselves on their Shopify customer account before their first billing date. The app includes a [bulk email action](#payment-methods) you can fire off straight after the import to prompt them, and the standard pre-billing reminders cover anyone who hasn't acted yet. ![Live import complete page showing 50 of 50 subscriptions imported, with a row-by-row success table and a follow-up reminder to ask customers to add a payment method](images/importer-live-import-complete-success.png) ## Before you import Before starting an import, make sure: - **Your clubs are set up** — The clubs and frequency/case size combinations you want to import customers into must already exist. See [Setting Up Your Wine Club](setup.md). - **Products are prepared** — The products and variants for each club must be available. See [Preparing Your Products](preparing-products.md). - **Your plan has capacity** — Your billing plan limits the number of active subscriptions. The import will not proceed if it would exceed your plan's limit. You can check your current usage on the [Dashboard](dashboard.md). !!! warning Live imports cannot be undone automatically. If you need to reverse a live import, you'll need to cancel each imported subscription individually. The app runs a test import first so you can check for errors before anything is created. ## Preparing your CSV file The import uses a CSV (comma-separated values) file. You can create this in any spreadsheet application (Excel, Google Sheets, etc.) and export as CSV. Each CSV can contain up to **100 subscriptions**. We recommend importing **one [club type](club-types.md) at a time** — all Choose Your Own subscriptions in one CSV, and all Curated subscriptions in another. !!! warning "Double-check the email column" The customer's email address is how they sign in to the [customer portal](customer-portal.md#logging-in) and how they receive every wine club email. An incorrect email blocks both, and can only be corrected in Shopify after the import — review the `email` column carefully before importing. Select your club type below to see the CSV format and download a template. === "Choose Your Own" [Download the template CSV](subscription-import-template-choose-your-own.csv) to get started. Open it in Excel or Google Sheets, fill in your data, and export as CSV. For subscriptions with multiple products (line items), use one row per product. The first row for a `handle` must include all subscription details along with the first product. Subsequent rows with the same `handle` only need the `handle` and line item columns — all other columns are ignored on continuation rows. | Column | Description | Example | |--------|-------------|---------| | `handle` | Groups rows into one subscription — all rows with the same handle belong to the same subscription | `sub-001` | | `email` | Customer's email address | `jane@example.com` | | `first_name` | Customer's first name | `Jane` | | `last_name` | Customer's last name | `Smith` | | `club_group` | Club group name (must match an existing club group) | `Premium Reds` | | `club` | Club name — the specific frequency and case size offering (must match an existing club) | `6 Bottles Quarterly` | | `next_billing_date` | Next billing date in `YYYY-MM-DD` format. Interpreted as midday in your store's timezone. Must be at least 48 hours in the future and **no more than one billing interval ahead** — up to 1 month for monthly clubs, 3 months for quarterly, 6 months for 6-monthly, and 12 months for annual. | `2026-07-01` | | `delivery_method` | Delivery method: `shipping`, `local_delivery`, or `pickup` | `shipping` | | `delivery_price` | Delivery price (use `0` for pickup) | `15.00` | | `address1` | Street address | `42 Vine Street` | | `address2` | Apartment, unit, or suite number (optional) | | | `city` | City or suburb | `Barossa Valley` | | `province_code` | State or province code | `SA` | | `country_code` | Two-letter country code | `AU` | | `zip` | Postal or ZIP code | `5352` | | `phone` | Phone number in international format | `+61400000000` | | `company` | Company name (optional) | | | `line_product` | Identifies the wine for each line item. You can use either: SKU is checked first. If no SKU match is found, the system matches by product/variant name. If multiple products match the same name, you'll be asked to use SKU instead. | `SHIRAZ-2023` | | `line_quantity` | Quantity of this product | `3` | | `line_price` | The discounted price per unit that the customer is billed each cycle. If this is below the variant's retail, the difference is recorded as the per-cycle discount and shown alongside retail in the customer portal. | `25.00` | | `note` | Order note for all future orders (optional) | | | `total_price` | Expected total — the importer warns if this doesn't match the sum of (line quantity × line price) plus delivery price, but doesn't block the import. | `180.00` | | `currency_code` | Three-letter currency code. Must be enabled on your store, and the products must have retail prices configured for the row's country in that currency. | `AUD` | === "Curated" [Download the template CSV](subscription-import-template-curated.csv) to get started. Open it in Excel or Google Sheets, fill in your data, and export as CSV. Each subscription is a single row. Product selections are determined by the club configuration — you don't specify products in the CSV. | Column | Description | Example | |--------|-------------|---------| | `email` | Customer's email address | `jane@example.com` | | `first_name` | Customer's first name | `Jane` | | `last_name` | Customer's last name | `Smith` | | `club_group` | Club group name (must match an existing club group) | `Curated Selection` | | `club` | Club name — the specific frequency and case size offering (must match an existing club) | `12 Bottles Monthly` | | `next_billing_date` | Next billing date in `YYYY-MM-DD` format. Interpreted as midday in your store's timezone. Must be at least 48 hours in the future and **no more than one billing interval ahead** — up to 1 month for monthly clubs, 3 months for quarterly, 6 months for 6-monthly, and 12 months for annual. | `2026-07-01` | | `delivery_method` | Delivery method: `shipping`, `local_delivery`, or `pickup` | `shipping` | | `delivery_price` | Delivery price (use `0` for pickup) | `20.00` | | `address1` | Street address | `42 Vine Street` | | `address2` | Apartment, unit, or suite number (optional) | | | `city` | City or suburb | `Barossa Valley` | | `province_code` | State or province code | `SA` | | `country_code` | Two-letter country code | `AU` | | `zip` | Postal or ZIP code | `5352` | | `phone` | Phone number in international format | `+61400000000` | | `company` | Company name (optional) | | | `note` | Order note for all future orders (optional) | | | `total_price` | Expected total — the importer warns if this doesn't match the discounted line subtotal plus delivery price, but doesn't block the import. The discounted line subtotal is computed automatically from the club's curated wines and the combination's discount percentage. | `270.00` | | `currency_code` | Three-letter currency code. Must be enabled on your store, and the curated wines must have retail prices configured for the row's country in that currency. | `AUD` | ### Pricing and discounts Imported subscriptions are recorded with the same pricing details as new signups taken through your storefront. Each line stores both the retail price and the discounted price the customer pays, so the customer portal can show the discount and the strikethrough retail clearly. - **Choose Your Own** — `line_price` is the price billed each cycle. If it sits below the variant's retail, the difference becomes the per-cycle discount on that line. - **Curated** — the discount is applied automatically from the club's settings. You don't need to pre-calculate per-line prices. - **Total reconciliation** — if `total_price` doesn't reconcile with the discounted line subtotal plus delivery, you'll see a warning in the test import results. The row still imports. #### Multi-currency If the row's `currency_code` differs from your store's primary currency, each variant in the row's club must have a retail price configured for the row's country in [Shopify Markets](https://help.shopify.com/en/manual/markets). Rows that reference variants without a market-priced retail in the chosen currency will fail with a clear message in the test results. ## Starting an import Importing runs in two steps: a **test import** checks your data first without creating anything, then a **live import** creates the subscriptions once you're happy with the results. ![Import subscriptions page showing the CSV upload area, step-by-step instructions, and upload history](images/importer-home.png) 1. Go to **Subscriptions** in the app 2. Click **Import** at the top of the subscription list (or **Import existing subscriptions** from the empty state) 3. Upload your CSV file 4. The app runs the test import and shows the results ### Validation The app checks every row before creating anything — there are no partial imports. If a row has an error, you'll see a clear message explaining what to fix. Rows that are duplicates (same customer and club) are skipped automatically rather than treated as errors. !!! info If the import would exceed your plan's subscription limit, you'll see a message with your current count and plan's cap. Upgrade from the Billing settings screen before starting your import. ### Test results After the test import runs, the app shows **Test import results** — no subscriptions have been created yet. Each row is labelled: ![Test import results showing summary counts and a row-by-row breakdown with status indicators](images/importer-test-import-complete-top.png) - **Will import** — Passed all checks, ready to go live - **Will skip** — Duplicate row, will be skipped - **Won't import** — Has an error that needs fixing before it can be imported Each row also shows whether the customer is new to Shopify, an existing customer, or already a subscriber. ![Bottom of the test import results showing rows with status labels and the action buttons](images/importer-test-import-complete-bottom.png) From the test results screen you have three options: - **Start live import** — Everything looks correct. Creates the subscriptions for every "Will import" row. - **Test again** — Some rows had errors caused by missing data in your Shopify store (for example, a club, frequency, product, or pickup location that doesn't exist yet). Fix them in Shopify, then click **Test again** — the app re-checks your existing CSV against your updated store and refreshes the results. Rows whose result changed are highlighted so you can confirm the fix before continuing. No re-upload needed. - **Start over** — The CSV itself needs editing (typos, wrong dates, missing columns). Discard the test and upload a corrected file. !!! tip "Which option to choose?" If a row's error message points to something on your store side — "Club not found", "Product variant not available in this currency", "No pickup location matches this address" — fix it in Shopify and **Test again**. If the error points to the row's data — "Invalid email", "Billing date in the past", "Unknown country code" — edit the CSV and **Start over**. ![Confirmation dialog asking whether to start the live import](images/importer-live-import-confirmation.png) !!! warning Once the live import starts, it can't be stopped or undone. The app creates each subscription as **Active** with the billing date you specified. No charges are made during import — billing begins on each customer's next billing date. If the customer does not already have a payment method on file, they will need to add one before their first billing date (see [Payment Methods](#payment-methods) below). !!! note You can navigate away while the import is running. It continues in the background and you can return to check progress at any time. When the import finishes, the screen shows counts for **Imported**, **Failed**, and **Skipped** rows, with a row-by-row breakdown including products and billing frequency. ![Live import complete showing imported and failed counts with a row-by-row breakdown of results](images/importer-live-import-complete-partial-success.png) ## After import Once the import is complete, your subscriptions are live. Any rows that couldn't be imported can be downloaded, fixed, and re-uploaded. ### Fixing rows that didn't import If any rows couldn't be imported, a **Download error file** button appears. The downloaded file contains only the subscriptions that weren't imported — failed, invalid, or skipped rows — with an extra `errors` column on the right explaining what went wrong for each one. Successfully imported subscriptions are not included. Open the file in Excel or Google Sheets, fix the issues, and re-upload it as a new import. The `errors` column is recognised and stripped automatically, so there's no need to remove it before uploading. ### Payment methods If the customer already has a payment method saved against their account on your store, the app adds it to the subscription automatically during import. Otherwise the subscription is created **without a payment method**. Payment details cannot be transferred from another system, so any imported customer who does not already have a saved card needs to add one before their first billing date. #### Prompting customers after import Once the import completes, open the **Subscriptions** list and review the [**Has Issues**](managing-subscriptions.md#subscription-list) tab. Any imported subscriptions that still need a payment method will appear here. Select these subscriptions and use the [**Send add payment method email**](managing-subscriptions.md#bulk-actions) bulk action to prompt the customers to add one. We recommend doing this soon after the import so customers have plenty of lead time to add a payment method before their first billing date. !!! info "Automatic pre-billing reminders" The standard [pre-billing reminders](billing.md#pre-billing-reminders) sent 14 days and 2 days before each billing date also prompt customers to add a payment method when one is missing. They act as a backup for any subscriptions you haven't emailed yourself. !!! tip "Communicate outside the app too" We also recommend telling your subscribers about the migration through your usual direct channels — for example an email newsletter or SMS — after the import. Letting them know that their membership has moved and that they need to add a payment method helps avoid confusion when they receive automated emails from the app. #### How customers add a payment method The "Add a payment method required" email — and the no-payment-method copy on the standard pre-billing reminders — all link the customer to their subscription page in the [customer portal](customer-portal.md). From there, an **Add payment method** button takes them directly to the Shopify customer account profile screen to add one. Customers can also add a payment method themselves from their Shopify customer account at any time: 1. Log in to their account on your store 2. Go to **Profile** > **Payment methods** 3. Click **Add** and enter their payment details Once a customer adds a payment method, it is automatically linked to their imported subscription. !!! info "First-time login for imported customers" Imported customers don't need a setup link or password — Shopify's customer accounts use passwordless sign-in (email + a one-time 6-digit code) and provision the account automatically the first time the customer signs in. The links in any of our emails take them through this flow before landing on their subscription page. See [Logging in](customer-portal.md#logging-in) for the full flow, or Shopify's [Customer accounts](https://help.shopify.com/en/manual/customers/customer-accounts) documentation for background on the sign-in options available to your customers. ### What happens at billing time without a payment method If a customer's billing date arrives and they haven't added a payment method: - The billing attempt will fail - The customer receives an email notification about the failed payment - The app's standard [payment failure retry schedule](billing.md#retry-schedule) applies - After all retries fail, the subscription is placed on hold (Failed status) - The customer can add a payment method and reactivate from the [customer portal](customer-portal.md) ### Managing imported subscriptions Imported subscriptions work exactly like any other subscription. You and your customers can: - Pause, resume, or cancel - Skip orders - Change items (Choose Your Own clubs) - Update delivery address - Update payment method See [Managing Subscriptions](managing-subscriptions.md) for the full list of actions. ## Limitations - **No payment method transfer from other systems** — If a customer does not already have a payment method saved on your store, they must add one themselves. There is no way to transfer payment information from another system into Shopify. - **One import at a time** — You cannot run multiple imports simultaneously. - **No undo** — Imported subscriptions must be cancelled individually if you need to reverse an import. - **Billing date must be at least 48 hours in the future** — Each `next_billing_date` is interpreted as midday in your store's timezone and must be at least 48 hours away, so the customer's 2-day upcoming renewal reminder fires at least once before the first billing attempt. - **Billing date is capped at one interval ahead** — Each `next_billing_date` must be within one billing interval of the import (1 month for monthly, 3 for quarterly, 6 for 6-monthly, 12 for annual). - **Pickup location is auto-selected** — For pickup subscriptions, the app queries Shopify for available pickup locations based on the customer's address and product availability, then automatically selects the first available option. The selected location is shown in the import results. If no pickup location is available for the address, that row will fail during import. After import, you can change the pickup location from the [admin](managing-subscriptions.md#change-delivery) or customers can change it from the [customer portal](customer-portal.md#change-delivery). --- # Managing Orders URL: https://docs.tectalic.com/wine-club/managing-orders.md # Managing Orders When a wine club subscription is billed, Shopify creates a standard order — exactly the same as any other order in your store. You process and fulfil wine club orders just like you do with regular orders, using your existing Shopify workflows. ## Processing & fulfilment Wine club orders appear in **Orders** in your Shopify admin alongside all your other orders. You can: - Fulfil orders individually or in bulk - Print packing slips and shipping labels - Add tracking numbers and notify customers - Issue refunds or partial refunds - Add order notes and timeline comments There's nothing special you need to do differently — your existing fulfilment process works the same way. The only difference is the app automatically tags these orders so you can easily filter them (see below). ## Order Note If a subscription has an order note, it will appear in the **Notes** section of each Shopify order created for that subscription. This is the standard Shopify order notes field, visible on the order detail page and in your fulfilment workflow. Order notes are useful for special instructions like delivery preferences, gift messages, or scheduling requests. Customers can add and edit their order note from the [customer portal](customer-portal.md#order-note), and merchants can edit it from the [subscription detail page](managing-subscriptions.md#order-note). ## Order tagging Every wine club order is automatically tagged in Shopify with up to three tags: - **Wine Club** — applied to all subscription orders - **Club group name** — the internal group name (e.g., "Black Club") - **Club name** — the specific club, prefixed with the group name (e.g., "Black Club - Monthly 6-Pack") You'll see these tags on the order detail page and in your orders list, making it easy to identify and filter subscription orders by club. !!! note Shopify limits order tags to 40 characters. If a club name tag is longer than 40 characters, it will be automatically shortened to fit. This tagging happens automatically whenever a subscription order is created — whether it's a scheduled billing cycle, an [Order Now](managing-subscriptions.md#order-now) request, or the customer's very first signup order. No setup is required on your part. ## Wine Club Orders saved search The app automatically creates a **Wine Club Orders** saved search in your Shopify admin. This appears as a tab on your **Orders** page, alongside your existing order views. Click the **Wine Club Orders** tab to instantly filter your orders list to show only wine club orders. Use this to: - View all wine club orders at a glance - Track wine club fulfilment separately from regular orders - Run bulk actions (such as fulfilling or printing packing slips) on wine club orders only - Export wine club orders for reporting !!! info The saved search and order tagging are set up automatically when you install the app. Any existing wine club orders are also tagged, so the saved search includes your full order history from day one. --- # Billing & Payments URL: https://docs.tectalic.com/wine-club/billing.md # Billing & Payments The app handles recurring billing automatically through Shopify's subscription billing system. ## How billing works All subscriptions use **anniversary-date billing**. When a customer signs up, their first order is placed immediately and Shopify creates a subscription contract with a billing schedule based on their chosen frequency (monthly, quarterly, six-monthly, or annual). Subsequent orders are billed at each frequency interval from the customer's signup date — not on a fixed calendar date shared by all customers. The club discount is applied automatically at signup checkout and on each recurring billing cycle. This discount only applies to subscription orders — it does not apply to separate one-off purchases. On each billing date, the app charges the customer's payment method and creates an order. Each order is automatically [tagged with **Wine Club**](managing-orders.md) so you can easily filter wine club orders in your Shopify admin. The entire process is automatic. !!! note "Imported subscriptions" Subscriptions created via [CSV import](importing-subscriptions.md) may not have a payment method yet. Customers need to add a payment method from their Shopify customer account before their first billing date. If no payment method is on file when billing is due, the attempt will fail and the standard retry schedule applies. ## Pre-billing reminders The app sends customers email reminders before their upcoming billing date so they can make changes if needed: | Reminder | Timing | Purpose | |----------|--------|---------| | First reminder | 14 days before billing | Early notice to pause, skip, or update payment | | Final reminder | 2 days before billing | Last chance to make changes | If the subscription has no payment method on file (common after [CSV import](importing-subscriptions.md)), the reminder leads with "**No payment method is on file for this subscription.**" and links the customer directly to the **Add payment method** flow instead of the usual portal CTAs. ## Payment failures When a billing attempt fails, the app automatically retries and notifies the appropriate party depending on the type of failure. ### Retry schedule | Attempt | Timing | |---------|--------| | Initial attempt | On the scheduled billing date | | 1st retry | 24 hours after failure | | 2nd retry | 3 days after 1st retry | | 3rd retry | 7 days after 2nd retry | | After final failure | Subscription placed on hold | Maximum 4 total attempts per billing cycle (1 initial + 3 retries). ### What happens when payment fails The app categorises each failure and responds accordingly: **Customer-fixable issues** (e.g., declined card, insufficient funds, expired card): - Customer receives an email with a clear explanation of what went wrong (e.g., card declined, insufficient funds, expired card) and a link to the customer portal - Email includes the retry schedule so they know when the next attempt will occur - Automatic retries continue on schedule **Merchant-fixable issues** (e.g., insufficient inventory, payment provider not enabled): - You receive an email with customer details, the error, and guidance on how to resolve it - Email includes the retry schedule so you can fix the issue before the next attempt - Automatic retries continue on schedule **Temporary issues** (e.g., network errors, transient Shopify errors): - Customer receives an email explaining that the issue is temporary - Automatic retries continue on schedule and typically succeed ### After final failure If all retry attempts fail, the customer receives a final email informing them that their subscription is now on hold. The subscription is placed in a Failed status. The customer can reactivate it from the portal after updating their payment method. Reactivation charges the customer immediately. !!! info "Curated product alerts" For Curated clubs, the app proactively checks that all products are available before billing and alerts you if there are issues. See [Merchant Emails](merchant-emails.md#curated-product-availability-alerts) for details. ## Order Now Customers and merchants can trigger immediate billing using the Order Now action. This charges the customer right away for their next scheduled order. Since the order is placed early, future orders also shift forward accordingly. If an Order Now attempt fails: - The customer receives an email about the failure - For merchant-fixable issues (e.g., insufficient inventory), you also receive an [alert email](merchant-emails.md#billing-failure-alerts) - No automatic retries occur (unlike regular billing) - You or the customer need to resolve the issue and trigger Order Now again If the subscription has no payment method on file, the Order Now action is blocked before any charge is attempted, in both the admin and the customer portal. See [No Payment Method on File](managing-subscriptions.md#no-payment-method-on-file) for how to prompt the customer to add one. ## Updating payment methods Customers can update their payment method directly from the [customer portal](customer-portal.md#update-payment) — the change applies immediately. When a customer updates their card, all their wine club subscriptions automatically use the new payment details. You can also update a customer's payment method on their behalf — see [Update Payment Method](managing-subscriptions.md#update-payment-method) for details. --- # Customer Emails URL: https://docs.tectalic.com/wine-club/customer-emails.md # Customer Emails The app sends automated emails to customers at key points in the subscription lifecycle, and creates Shopify customer segments you can use for marketing. ## Automated emails The app sends emails automatically at key points in the subscription lifecycle. All emails use your configured branding (from name, reply-to address, and logo). | Email | When It's Sent | |-------|---------------| | **Welcome** | When a new customer signs up | | **Upcoming order reminder** | 14 days and 2 days before billing | | **Subscription paused** | When a subscription is paused | | **Subscription resumed** | When a subscription is resumed | | **Subscription reactivated** | When a subscription is reactivated after payment failure | | **Subscription cancelled** | When a subscription is cancelled | | **Order skipped** | When the next order is skipped | | **Order expedited** | When an Order Now request succeeds | | **Order expedited failed** | When an Order Now attempt fails | | **Billing failed** | When a subscription payment fails (includes retry schedule) | | **Billing failed (final)** | When all payment retry attempts are exhausted and the subscription is placed on hold | | **Items changed** | When subscription items are changed | | **Delivery address changed** | When the delivery address is updated | | **Add a payment method required** | When you trigger the [Send email action](managing-subscriptions.md#no-payment-method-on-file) on a subscription with no payment method on file | !!! tip "Order note in upcoming order reminders" The upcoming order reminder email includes the customer's order note if one has been set. If no note exists, the email shows a prompt encouraging the customer to add delivery instructions via the customer portal. !!! tip "Choose Your Own swap-wines reminder" For [Choose Your Own clubs](club-types.md#choose-your-own-clubs), the upcoming order reminder doubles as the prompt to revisit the portal and [change their wine selection](customer-portal.md#change-items). Customers who take no action keep their existing selection on the next order. !!! info "No payment method on file" Subscriptions without a payment method get clearer copy on the upcoming order reminder, billing failed, and Order Now failed emails — leading with "No payment method is on file for this subscription" and an **Add payment method** CTA instead of the usual update-payment-method messaging. You can also trigger a dedicated "Add a payment method required" email manually from the [subscription detail page](managing-subscriptions.md#no-payment-method-on-file). !!! info "Merchant alerts" The app also sends alerts to you (the merchant) for billing failures and curated product issues. See [Merchant Emails](merchant-emails.md) for details. ### Email branding Configure your email identity in the app under **Settings > Emails**: - **From name** — The sender name shown in the customer's inbox (e.g., your winery name) - **Reply-to email** — Where customer replies are sent - **Logo** — Your logo displayed in emails See [Settings > Email](settings.md#email-settings) for detailed configuration options including custom subject lines and enabling or disabling individual templates. ## Customer segments The app automatically creates Shopify customer segments so you can target subscribers in marketing campaigns and automations. ### Shop-level segments Two segments are created when you install the app: | Segment | Who's included | |---------|---------------| | **Wine Club Subscribers** | All customers with an active wine club subscription | | **Wine Club Non-Subscribers** | All customers without an active subscription | These are useful for broad targeting — for example, sending a win-back campaign to non-subscribers or a loyalty offer to all active subscribers. ### Per-club segments A segment is also created for each club when you publish it (e.g., "Red Club Subscribers"). These let you target subscribers of a specific club. **How per-club segments work:** - When a customer signs up, they are tagged with the club name - When a subscription is cancelled, the tag is removed (only if they have no other active subscriptions to that club) - A Shopify customer segment filters customers by this tag If you rename a club, the segment name updates to match. ### Using segments for marketing - Send targeted email campaigns to subscribers of specific clubs - Create Shopify automations triggered by segment membership - Analyse customer data by club in Shopify's analytics - Build audiences for advertising platforms All segments are created automatically. No setup required. !!! tip "Rewarding top members" The app doesn't have a built-in tier or allocation feature that hands extra bottles to your highest-spending members automatically. The recommended pattern is to use Shopify's customer segments (the per-club ones the app creates, or a custom segment based on lifetime spend) to send those members a private email with a link to an [unlisted Shopify product or page](https://help.shopify.com/en/manual/online-store/menus-and-links/url-redirect){:target="_blank"}. Pair this with a [Shopify automatic discount](https://help.shopify.com/en/manual/discounts/discount-types/automatic){:target="_blank"} scoped to the same segment so the reward applies at checkout without the member needing a code. Combine with a curated club if you want the "secret bottle" feel without rebuilding the subscription flow. !!! warning "Marketing consent required for email campaigns" Anti-spam laws such as GDPR, CAN-SPAM, and CASL require explicit consent before you can send marketing emails, regardless of platform. Joining a wine club doesn't count as marketing consent. Customers have to opt in separately. Shopify's [guide to data privacy and legal compliance for email marketing](https://help.shopify.com/en/manual/promoting-marketing/create-marketing/shopify-messaging/email/data-privacy-legal-compliance){:target="_blank"} covers the rules by region. Shopify's **Marketing opt-in** checkbox is the most direct way to collect that consent. It can appear on the checkout screen and the customer sign-in screen. Go to **Shopify Admin → Settings → Checkout** and enable it under both sections. Shopify's [guide to collecting customer contact information](https://help.shopify.com/en/manual/promoting-marketing/create-marketing/customer-contact-information){:target="_blank"} walks through the steps. Without recorded consent, customers who join your wine club will appear in the right segments but won't receive your marketing emails, whether you send them through Shopify Email, Klaviyo, Mailchimp, or another platform. This applies to marketing only. The [Automated Emails](#automated-emails) listed above (welcome, billing reminders, payment notices, etc.) are transactional and go out regardless of marketing preferences. --- # Merchant Emails URL: https://docs.tectalic.com/wine-club/merchant-emails.md # Merchant Emails The app sends alerts to you (the merchant) when issues arise that need your attention. These are separate from the customer-facing emails described in [Customer Emails](customer-emails.md). ## Billing failure alerts When a subscription payment fails due to an issue on your end — such as insufficient inventory or a payment provider configuration problem — you receive an email with the customer's details, the specific error, and guidance on how to resolve it. The email also includes the automatic retry schedule so you can fix the issue before the next attempt. For inventory issues, the alert includes the specific products and variants affected, including SKU and a direct link to the product in your Shopify admin. If the issue is caused by out-of-stock or unavailable products, the email also suggests using [Replace Product](managing-clubs.md#replacing-a-product) as an alternative to restocking, with a direct link to the affected club's edit screen. These alerts also apply to [Order Now](billing.md#order-now) failures. Since Order Now has no automatic retries, the alert advises you to use Order Now on the customer's behalf once the issue is resolved. For billing failures caused by customer-side issues (e.g., declined card), the customer is notified directly. See [Billing & Payments](billing.md#payment-failures) for the full retry schedule and failure handling. ## Product alerts ### Product deleted alert When a product used in any club is deleted from Shopify, you receive an email listing the affected clubs, the number of active subscriptions on each, and a direct link to each club's edit screen. The email recommends using [Replace Product](managing-clubs.md#replacing-a-product) to swap the deleted product for an alternative. If there are active subscriptions, the alert warns that those subscriptions may fail at their next billing until the product is replaced. ### Curated product availability alerts For Curated clubs, the app also proactively checks that all products are available before billing: **Immediate alerts:** When a curated product becomes unavailable (out of stock or changed to draft/archived), you receive an email immediately. The alert includes the affected product, which clubs use it, and active subscription counts. **Pre-billing alerts:** A daily check looks at subscriptions billing within the next 7 days. If any curated product is unavailable, you receive an alert with resolution options — including using [Replace Product](managing-clubs.md#replacing-a-product) (recommended), re-adding the products to Shopify, or removing affected clubs. The email includes direct links to the affected club's edit screen. **Reconciliation alerts:** A scheduled sync checks that the products in your Curated clubs are still available. If products have been removed or modified in Shopify (e.g., through the Shopify admin rather than the app), you receive an alert listing the missing products by club, with guidance on how to resolve the issue — including using [Replace Product](managing-clubs.md#replacing-a-product). These availability alerts only apply to Curated clubs. Choose Your Own customers can self-serve by changing their items if a product becomes unavailable. ## Signup failure alerts When a customer tries to sign up for one of your wine clubs but doesn't make it to checkout, you receive an email so you can sort it before the next attempt. Nothing was charged; no order was created. The cause is usually a mismatch between the wine club's settings and what's in Shopify, or our app having lost permission to act on your store. In most cases, opening the affected wine club and clicking **Save** resends all its settings to Shopify and clears the issue, so the email walks you through that as the first thing to try. If re-saving doesn't fix it, the email points you at the next things to check: each wine still in stock and showing on your storefront, and any pending "needs additional permissions" prompts on the app in your Shopify admin. A separate version of the email covers the rarer case where our app has lost permission to act on your store, and goes straight to the permissions guidance. The app sends at most one alert per issue type per 24 hours so your inbox doesn't get flooded during a widespread issue. If you're unsure what to do, just reply to the email — it goes straight to our support team. ## Email delivery alerts When an email to a customer bounces or is marked as spam, you receive an alert with the customer's name, the affected email address, and a direct link to the subscription. This lets you know immediately when a customer is no longer receiving wine club emails. Common reasons for email delivery failures include: - **Invalid email address** — the customer may have signed up with a typo in their email - **Mailbox not found** — the email account no longer exists - **Spam complaint** — the customer marked an email as spam When this happens, the customer won't receive any further emails from your wine club — including billing notices, delivery reminders, and subscription updates — until the issue is resolved. Their subscription will continue as normal (renewals, billing, and deliveries still occur), but the customer won't be notified about any of it via email. ### What to do 1. Contact the customer by phone or other means to verify their correct email address 2. If the email address needs updating, click **Change email address in Shopify** on the subscription detail page (or update it directly in Shopify admin). The app will automatically detect the change and clear the delivery block 3. If the email address is correct and the issue was temporary, click **Resume email delivery** on the subscription detail page to re-enable sending See [Managing Subscriptions](managing-subscriptions.md#email-delivery-issues) for details on the subscription-level controls. ## Plan usage alerts As your wine club grows, you receive email notifications when your subscription count approaches your plan limit: - **50% usage** — "Your wine club is growing" — a friendly heads-up with your current count and plan limit - **80% usage** — A reminder to consider upgrading soon to avoid interrupting new signups - **100% usage (plan limit reached)** — An alert that all clubs are now showing a waitlist instead of accepting new customers, with a link to upgrade your plan Each notification is sent once per plan tier. If you upgrade to a higher plan, the notifications reset for the new tier's thresholds. For details on what happens when you reach your plan limit, see [Settings > Billing](settings.md#what-happens-when-you-reach-your-plan-limit). ## Who receives these emails All merchant notification emails are sent to the addresses configured in [Wine Club Manager Emails](settings.md#wine-club-manager-emails). If no addresses are configured, emails are sent to your Shopify store email. ## Summary | Alert | When It's Sent | Applies To | |-------|---------------|------------| | **Billing failure** | When payment fails due to a merchant-fixable issue (including Order Now) | All clubs | | **Signup failure** | When a customer is blocked from reaching checkout during signup (no charge made) | All clubs | | **Product deleted** | When a product used in a club is deleted from Shopify | All clubs | | **Curated product unavailable** | Immediately when a curated product becomes unavailable | Curated clubs only | | **Pre-billing issues** | Daily, for subscriptions billing within 7 days with unavailable products | Curated clubs only | | **Curated products missing** | When a scheduled sync detects products removed or modified in Shopify | Curated clubs only | | **Email delivery failure** | When a customer email bounces or is marked as spam | All clubs | | **Plan usage warning** | When subscription count reaches 50% or 80% of your plan limit | All stores | | **Plan limit reached** | When subscription count reaches 100% and all clubs are waitlisted | All stores | --- # Settings URL: https://docs.tectalic.com/wine-club/settings.md # Settings The Settings page lets you configure general app settings, customise customer emails, and manage your subscription plan. Access it from the app navigation under **Settings**. ## General settings ### Powered by Tectalic Control whether "Powered by Tectalic Wine Club" appears on the signup widget and in customer emails. - **Show "Powered by Tectalic Wine Club"** — Toggle this message on or off. !!! info "Paid plans only" Removing the "Powered by Tectalic Wine Club" message is only available on paid plans. Stores on the free Startup 10 plan must display it. [Upgrade your plan](#available-plans) to remove it. ### Wine Club Manager Emails Configure which email addresses receive wine club notifications and alerts: - **Wine Club Manager Emails** — A comma-separated list of email addresses that receive all [merchant notification emails](merchant-emails.md). When empty, notifications are sent to your Shopify store email. This is useful if someone other than the store owner manages the wine club, or if multiple people need to receive alerts about billing failures, product issues, and plan usage. ## Email settings The app sends automated emails to your customers throughout the subscription lifecycle. Configure the sender identity and customise email templates from the Email settings tab. For the full list of automated emails and when they're sent, see [Customer Emails](customer-emails.md). ### Email branding Configure how your emails appear to customers: - **From name** — The sender name shown in the customer's inbox (e.g., your winery name). Defaults to your Shopify store name. - **Reply-to email address** — Where customer replies are sent. Defaults to your Shopify store email. - **Email logo** — Your logo displayed at the top of email templates. Recommended size: 600x200px. Accepts JPEG, PNG, GIF, WebP, or SVG (max 2MB). !!! info "The sender email address" App-sent emails come from `noreply@wineclubemail.com`. You can customise the **from name** and **reply-to address**, but the sender address itself is fixed and managed by us so that delivery, SPF, and DKIM stay healthy across all stores. Replies go to your reply-to address, not to `noreply@wineclubemail.com`. Transactional emails Shopify sends on your behalf (order confirmations, shipping notifications) come from your Shopify-configured sender as usual. ### Email templates Each automated customer email can be customised individually. For each template, you can: - **Custom subject line** — Override the default subject line with your own text. Leave blank to use the default. - **Enable/disable** — Turn individual email types on or off. All emails are enabled by default. See [Customer Emails](customer-emails.md) for the full list of automated emails and when they're sent. ## Billing Manage your Tectalic Wine Club subscription plan from the Billing tab. All plans include unlimited clubs, full feature access, and no transaction fees. ### Your current plan The billing overview shows: - **Plan name** and **status** - **Wine club subscription count** — The number of wine club subscriptions on your store, and how many your current plan supports - **Capacity bar** — A visual indicator of how close you are to your plan limit ### Available plans | Plan | Price | Subscriptions | Powered by Tectalic | |------|-------|---------------|---------------------| | **Startup 10** | Free | Up to 10 | Required | | **Grow 100** | $69/month | Up to 100 | Optional | | **Expand 250** | $129/month | Up to 250 | Optional | | **Platinum 500** | $249/month | Up to 500 | Optional | | **Enterprise** | Contact us | 501+ | Optional | All plans are billed in USD every 30 days through Shopify. No transaction fees on any plan. You can upgrade at any time from **Settings > Billing** in the app. Downgrading is available if your subscription count is within the lower plan's limit. ### Plan usage notifications The app sends you email notifications as your subscription count approaches your plan limit: - **At 50%** — A friendly heads-up that your wine club is growing - **At 80%** — A reminder to consider upgrading soon - **At 100%** — An alert that your plan limit has been reached These emails are sent to the addresses configured in [Wine Club Manager Emails](#wine-club-manager-emails), or your Shopify store email if none are set. ### What happens when you reach your plan limit When your subscription count reaches 100% of your plan limit, **all clubs automatically show a waitlist** instead of accepting new signups — regardless of whether individual clubs have their own [member limits](managing-clubs.md#member-limit-waitlist). This ensures you don't exceed your plan's subscription allowance. To resume accepting new customers, [upgrade your plan](#available-plans) from the Billing tab. Once upgraded, clubs that aren't at their own member limit will immediately start accepting signups again. !!! warning "Plan limits apply to imports" [Bulk imports](importing-subscriptions.md) count toward your plan limit. Ensure your plan has sufficient capacity before starting an import — the import will not proceed if it would exceed your limit. !!! info "Existing subscribers are not affected" Reaching your plan limit only affects new signups. Existing subscribers continue to receive their deliveries, billing, and all other subscription features as normal. --- # Troubleshooting URL: https://docs.tectalic.com/wine-club/troubleshooting.md # Troubleshooting ## Signup widget not displaying **Symptoms:** The wine club signup widget does not appear on your storefront. **Solutions:** - Ensure at least one club is **published**. Draft clubs do not appear in the widget. See [Managing Clubs](managing-clubs.md) for details on publishing. - Ensure the **Tectalic Wine Club** theme block has been added to the page in the Theme Editor (Online Store > Themes > Customize). See [Setting Up Your Landing Page](landing-page.md) for step-by-step instructions. - Check that the page is published and accessible to customers. - For Curated clubs, verify that all products in each club are available (in stock, published, and active). Clubs with unavailable products are hidden automatically. See [Managing Clubs — Changing Products](managing-clubs.md#changing-products) for more details. ## Customer portal not showing **Symptoms:** Customers cannot see the Subscriptions section in their account. **Solutions:** - Ensure the customer portal extension blocks have been added to your customer account pages via the theme editor. See [Installation — Enable Customer Portal](installation.md#3-enable-customer-portal) for setup steps. - Shopify has retired the old customer accounts system. Tectalic Wine Club requires the new customer accounts to work. Go to **Settings > Customer accounts** in your Shopify admin to upgrade. [Learn more about upgrading](https://help.shopify.com/en/manual/customers/customer-accounts/upgrade). See [Installation — Verify Store Requirements](installation.md#1-verify-store-requirements) for the full list of prerequisites and [Customer Portal](customer-portal.md) for details on what customers can access. ## Delivery options missing **Symptoms:** The Change Delivery modal only shows standard shipping, even though local delivery or winery pickup is enabled. **Solution:** Your fulfillment location needs a complete street address. Shopify requires a full address to calculate local delivery and pickup availability. 1. Go to **Settings > Locations** in your Shopify admin 2. Click on your fulfillment location 3. Ensure a complete address is configured (street, city, state/province, postal code) 4. Save the location See [Customer Portal — Change Delivery](customer-portal.md#change-delivery) for more about how delivery options work for customers. ## Mobile display issues **Symptoms:** The signup widget or portal does not display correctly on mobile devices. **Solutions:** - The app uses responsive design and should adapt to all screen sizes automatically - Check for CSS conflicts in your theme that may override the widget's styles - Try the widget in a different browser to rule out browser-specific issues ## Checkout validation not working **Symptoms:** Customers can modify their cart in ways that should be blocked (e.g., removing bottles from a curated case). **Solution:** Ensure the checkout validation rule is enabled: 1. Go to **Settings > Checkout** in your Shopify admin 2. Under **Checkout rules**, verify that the **Tectalic Wine Club** rule is enabled See [Launching Your Wine Club](launching.md#1-test-the-complete-flow) for the full pre-launch testing checklist. --- # What's New URL: https://docs.tectalic.com/wine-club/whats-new.md # What's new Stay up to date with the latest changes to the Tectalic Wine Club app. ### AI chat friendly documentation 21 May 2026 You'll now see an **AI chatbot** in the corner of every page of this documentation site. Ask a wine club question in plain English and it answers from the documentation itself. We've also made this documentation friendlier for AI assistants in general. If you use Claude, ChatGPT, or another tool to ask about the Tectalic Wine Club app, give it the documentation URL ([https://docs.tectalic.com/wine-club/](https://docs.tectalic.com/wine-club/)) and you should get accurate, up-to-date answers straight from the latest content. New · Documentation · Support ### Clearer out-of-stock messaging 21 May 2026 Renewal and Order Now failures caused by out-of-stock wines now name the affected wines for customers and merchants. Improved · Admin · Customer Portal · Merchant Emails ### Member signup improvements 20 May 2026 Signups occasionally got stuck at "Proceed to Checkout" due to recent changes in Shopify's bot detection. The signup flow now works around it. If a wine becomes unavailable during signup, the customer sees which wine and can go back to swap it. You'll also get a new [Signup Failure Alert](merchant-emails.md#signup-failure-alerts) email if anything on your store starts blocking signups. Improved · Member Signup ### [Club group signup links](landing-page.md#club-group-signup-link) 20 May 2026 You can now copy a signup link for an entire club group with one click — it takes customers to all of that club group's case size and frequency options. Combined with the existing all-clubs and individual club links, that's three levels of signup link to choose from, and every Copy signup link button now has a tooltip describing exactly what the customer will see so you can pick the right one before you share. Improved · Admin · Clubs ### [Guided club setup wizard](setup.md) 18 May 2026 Create a wine club group with the new step-by-step wizard. Choose your club type, set frequencies, case sizes, and discounts, then pick your wines. A final preview shows what each club will look like to customers, and if you ship to multiple countries you can switch markets to see pricing in each currency. Publish straight away or save as a draft, then share the signup link or print the QR code for your tasting room or marketing. New · Admin · Clubs ### [Subscription import — now available to all stores](importing-subscriptions.md) 07 May 2026 Migrate your existing wine club customers into the app with our simple importer. Now available to all stores. Improved · Admin · Subscriptions ### [Promotional discount pricing](managing-subscriptions.md#promotional-discounts) 06 May 2026 When a subscription has a Shopify automatic discount, the admin and customer portal now show the price the customer actually pays — sale price up front, original price struck through, and a tooltip with the discount name. Change Items totals in both admin and portal reflect the discount too. New · Admin · Customer Portal · Subscriptions ### Automatic discount compatibility 05 May 2026 The **[Change Items](managing-subscriptions.md#change-items)** and **[Replace Product](managing-clubs.md#replacing-a-product)** actions now work with subscriptions that have automatic discounts applied at signup (such as Shopify's "Amount off products"). Replace Product always preserves discounts, while Change Items preserves them where possible. Improved · Subscriptions · Customer Portal · Admin ### [Subscription import](importing-subscriptions.md) 30 Apr 2026 Bring your existing wine club subscriptions into the app from a spreadsheet, without asking each customer to sign up again. Subscriptions are created as active on the billing date you specify, and customers add their own payment method before their first charge. ![Import subscriptions page showing the CSV upload area, step-by-step instructions, and upload history](images/importer-home.png) New · Admin · Subscriptions ### [Send "Add a payment method" email — per subscription or in bulk](managing-subscriptions.md#bulk-actions) 30 Apr 2026 The subscriptions list now has a **Has Issues** tab that lists every subscription that needs follow-up — most often imported subscriptions waiting for a payment method. Send each customer a link to add a payment method either one at a time from the subscription detail page, or in bulk via the new **Send add payment method email** action on the subscriptions list (selection extends across pages). ![Subscription list filtered to the Has Issues tab, with warning rows for imported subscriptions and the Send add payment method email confirmation](images/admin-subscription-list-has-issues.png) New · Admin · Subscriptions · Customer Emails ### [Automatic payment method attachment](managing-subscriptions.md#no-payment-method-on-file) 30 Apr 2026 When a customer adds a payment method to their Shopify account, the app now automatically attaches it to any of their wine club subscriptions that don't have one. The **No payment method on file** warning clears on its own and a **Payment Method Added** entry appears in the subscription's activity log — no merchant action needed. New · Subscriptions · Admin ### [Inline payment method updates in the customer portal](customer-portal.md#update-payment) 30 Apr 2026 Customers can now update their payment method inside the customer portal — no email link or page redirect. ![Customer portal inline modal showing the current card on file with options to switch to another saved card or add a new one](images/portal-change-payment-method.png) Improved · Customer Portal ### [Faster address validation feedback](customer-portal.md#change-delivery) 21 Apr 2026 Customers now see a clear, helpful error message when there's a problem with their address — for example, if the postal code doesn't match the selected country. Improved · Customer Portal · Admin ### [Payment method on subscription page](managing-subscriptions.md#update-payment-method) 17 Apr 2026 You can now see the customer's payment method when viewing a subscription, including the card brand, last four digits, and expiry. From the same page, you can send the customer a link to update their card or update it yourself in Shopify. New · Admin · Subscriptions ### [Email delivery alerts & suppression management](merchant-emails.md#email-delivery-alerts) 13 Apr 2026 When a customer's email bounces or is marked as spam, the app now alerts you via email and shows a warning banner on the subscription detail page. You can see which emails the customer is missing, update their email address in Shopify, or resume delivery once the issue is resolved. New · Merchant Emails · Admin ### [Phone number required for delivery changes](customer-portal.md#change-delivery) 13 Apr 2026 The "Change Delivery" feature now requires a phone number alongside the address. This improves compatibility with shipping, delivery, and pickup providers that require a contact number. Improved · Customer Portal · Admin ### Warning indicators on club and subscription lists 13 Apr 2026 Clubs and subscriptions that need your attention are now highlighted in orange on their list pages, with a warning icon you can hover over for details. New · Admin ### [All-clubs signup link](landing-page.md#all-clubs-signup-link) 19 Mar 2026 Every store now has an all-clubs signup link — a single URL that shows all your published clubs with filters. Works with any theme, including older themes that don't support the signup widget block. Copy it from the **Clubs** page in the app. New · Member Signup ### [Club member limits & waitlists](managing-clubs.md#member-limit-waitlist) 19 Mar 2026 You can now set a **member limit** on any club to cap the number of members. When a club is full, customers see a waitlist form instead of the signup button. Waitlisted customers are automatically added to a Shopify customer segment, so you can use Shopify Email to contact them when spots open up. New · Clubs ### [Wine club manager emails](settings.md#wine-club-manager-emails) 19 Mar 2026 You can now configure which email addresses receive wine club notifications and alerts in **Settings > General**. Add multiple addresses separated by commas — useful when someone other than the store owner manages the wine club. New · Admin ### [Improved signup widget](landing-page.md#2-add-the-signup-widget) 12 Mar 2026 The signup widget now displays full width within your theme, supporting more than two columns of clubs. Curated club prices now show the delivery frequency and inherit your theme's colours, and the overall layout is cleaner with less visual clutter. Improved · Member Signup ### [Hide clubs from the signup widget](landing-page.md#hiding-clubs-from-the-signup-widget) 12 Mar 2026 You can now set a club group to **Unlisted** so it doesn't appear on your landing page or all-clubs signup link. Customers can still join via the club's [signup link](landing-page.md#signup-links). Useful for VIP tiers, partner-specific clubs, or any club you want to share privately. New · Member Signup ### [Club signup links](landing-page.md#signup-links) 10 Mar 2026 Each club now has its own unique signup link that you can share anywhere — emails, social media, QR codes. Customers who click the link go straight to that club's signup widget. Copy any club's link from the club group edit screen. New · Member Signup ### Order note 10 Mar 2026 Customers can now add an order note to their subscriptions. Notes can be set during signup, edited in the customer portal, and appear in upcoming order reminder emails — making it easy for customers to communicate special delivery requirements. Merchants can also view and edit the order note on the subscription screen in the Shopify admin. New · Customer Portal · Admin · Subscriptions ### [Club-level tags and segments](managing-orders.md#order-tagging) 03 Mar 2026 Customers and orders are now tagged with both the club group name and the individual club name (e.g., "Black Club - Monthly 6-Pack"). A dedicated Shopify customer segment is also created for each club, giving you more granular targeting for marketing and reporting. New · Clubs ### Clearer club naming 03 Mar 2026 Each subscription offering (e.g. "Monthly Half Case", "Quarterly Premium Selection") is now simply called a **Club** — matching how you and your customers already think about them. The clubs page now shows each offering individually with its name, delivery schedule, and subscriber count, making it easier to manage your wine club at a glance. Improved · Admin · Customer Portal ### [Merchant dashboard](dashboard.md) 26 Feb 2026 The app home page is now a full merchant dashboard with key wine club metrics, upcoming orders, stock forecasting, and more. ![Dashboard showing stats cards, period selector, upcoming orders table, current plan, and help resources](images/dashboard.png) New · Admin ### [Stock forecasting](dashboard.md#stock-forecast) 26 Feb 2026 Plan your inventory for upcoming wine club orders. The stock forecast shows every product variant needed over the next 30, 60, or 90 days, alongside current stock levels, so you can spot low-stock items before they cause billing issues. ![Stock forecast table showing wine variants, clubs, bottles needed, current stock levels, and status indicators](images/stock-forecast.png) New · Admin ### [Subscription search](managing-subscriptions.md#searching-subscriptions) 26 Feb 2026 Find subscription customers quickly by searching for their customer name, email address, or club name — from the dashboard or the subscriptions page. New · Admin · Subscriptions ### [Automatic curated club product and subscription updates](managing-clubs.md#changing-products) 23 Feb 2026 When you change the wines in a Curated club, all existing subscriptions are now updated automatically — no need to edit each one individually. Great for new vintages and product replacements. New · Clubs · Subscriptions ### [Replace product feature](managing-clubs.md#replacing-a-product) 23 Feb 2026 Swap one product for another across an entire club group — including all clubs and all existing subscriptions — in a single step. Great for new vintages and product replacements. ![Replace product dialog showing product selection, notification and repricing options](images/replace-product.png) New · Clubs · Subscriptions ### [Real-time operation feedback](managing-subscriptions.md#real-time-progress-feedback) 23 Feb 2026 All subscription and club operations now show live progress updates — in both the admin and the customer portal. New · Admin · Customer Portal ### [Product deleted alerts](merchant-emails.md#product-deleted-alert) 23 Feb 2026 When a product used in any club is deleted from Shopify, you now receive an email alert listing the affected clubs, subscription counts, and direct links to replace the product. New · Clubs ### [Easier reactivation for failed subscriptions](customer-portal.md) 12 Feb 2026 Subscriptions on hold due to payment issues now appear in their own group in the customer portal, rather than being grouped with cancelled subscriptions. This makes it easier for customers to notice and reactivate them. Additionally, customers with failed subscriptions are no longer removed from club customer segments, so your segment-based marketing continues to reach them while their subscription is recoverable. Improved · Customer Portal ### [Wine club order tagging](managing-orders.md) 11 Feb 2026 Wine club subscription orders are now automatically tagged with "Wine Club" in Shopify, and a "Wine Club Orders" saved search is auto-created in the admin Orders view — making it easy to filter, fulfill and report on club orders separately from regular sales. New · Orders ### [Subscription billing error codes](billing.md) 10 Feb 2026 When a subscription billing attempt fails, the app now captures Shopify's specific error codes and displays clear, customer-friendly messages. Merchants also receive detailed notifications for each failure. New · Customer Billing ### [Plan limit upgrade banner](settings.md#billing) 10 Feb 2026 When you're approaching your plan's subscription limit, the app now shows a recommended plan badge and upgrade banner so you can scale up before hitting the cap. New · Merchant Billing ### [Onboarding & support improvements](support.md) 9 Feb 2026 Improved onboarding with a Customer Portal installation step, added "Learn more" documentation links and "Contact support" actions across all admin screens, and redesigned the Support page — so you can find answers and get help without leaving the screen you're on. Improved · Admin ### [Merchant billing](settings.md#billing) 5 Feb 2026 The app now includes usage-based billing with plan tiers based on your active subscription count. Your plan automatically adjusts as your wine club grows. New · Merchant Billing ### [Curated club availability alerts](merchant-emails.md) 2 Feb 2026 Receive proactive email alerts when curated club products become unavailable, or when billing is upcoming and products are missing from your curated selections. New · Clubs ### Annual billing cycle sync 30 Jan 2026 Fixed an issue where billing cycle dates could drift for annual subscriptions, ensuring renewal dates now stay consistent year over year. Fixed · Subscriptions ### Club-specific customer segments 29 Jan 2026 Each club now automatically creates a dedicated Shopify customer segment, and customers are tagged with their club name for easy filtering and marketing. New · Clubs ### [Suppress notification on change items](managing-subscriptions.md) 29 Jan 2026 When changing subscription items, you can now choose whether to send the customer a notification email, giving you more control over communications. Improved · Admin ### [Billing failure notifications for Order Now](merchant-emails.md) 28 Jan 2026 Billing failure email alerts now also cover Order Now requests, so you're notified whenever any billing attempt fails — not just scheduled ones. Improved · Customer Billing ### [Curated clubs](club-types.md) 23 Jan 2026 Introduce a new curated club type where you pre-select the wines your customers receive each cycle, giving you full control over the tasting experience. New · Clubs ### [Price change warning on change items](managing-subscriptions.md) 20 Jan 2026 Before confirming item changes on a subscription, you now see the price impact so there are no surprises when updating a customer's selections. Improved · Admin ### [Direct subscription links in emails](customer-emails.md) 9 Jan 2026 Customer notification emails now include a one-click link to the customer portal, making it easy for customers to manage their subscription. New · Customer Portal ### [Edit delivery address](customer-portal.md) 8 Jan 2026 Customers can now update their delivery address directly from the customer portal, and merchants can update it from the admin subscription detail page. New · Customer Portal ### [Pause & resume subscriptions](customer-portal.md) 28 Nov 2025 Customers can now pause their subscription and resume it when they're ready, all from the self-service customer portal. New · Customer Portal ### [Skip next order](customer-portal.md) 28 Nov 2025 Customers can skip their next scheduled delivery without pausing their entire subscription. New · Customer Portal ### Available on the Shopify App Store 11 Nov 2025 --- # Support URL: https://docs.tectalic.com/wine-club/support.md # Support ## Getting help If you need help with the app, the quickest path is the in-app live chat: 1. Sign in to your Shopify admin 2. Open the **Tectalic Wine Club** app from the left-hand Apps menu 3. Click **Contact support** in the top right of any screen 4. On the Support page, click **Contact support** again to start a chat with the team For quick how-to questions, try the **AI chatbot** in the corner of every page on this documentation site. It's an automated assistant that answers from the docs themselves — it isn't staffed by our team. For anything that needs a real person, use the in-app live chat above. Our team is available during Australian business hours for setup, troubleshooting, or any questions about the app. ---