Introduction

How BundleM8 works

Understanding what BundleM8 creates in your store makes it easier to plan bundles, manage products and troubleshoot. This page explains what happens behind the scenes. You don't need to know any of it to create a bundle.


The bundle product

Every bundle is a regular Shopify product. When you create a bundle in BundleM8, the app creates the product in your Shopify admin for you, using the title and SKU you enter.

You manage everything about the product that isn't bundle-specific in Shopify as usual: description, images, collections, tags, SEO, sales channels and status. BundleM8 manages what's inside the bundle and its price.

Variants

A bundle product has one or two variants, depending on its price:

  • One variant when every possible combination costs the same, such as a bundle of fixed products.
  • Two variants when the price depends on the customer's choices. One is priced at the most expensive possible combination and the other at the cheapest, so your theme can show a price range such as "From $54.00".

BundleM8 sets these variants' prices itself. If you change them in Shopify, the app sets them back on the next sync.

Don't edit bundle variants in Shopify

Leave the bundle product's variants, options and prices to BundleM8. Change pricing in the bundle editor instead. See Pricing and discounts.

Bundle data

The bundle's groups, products, prices and rules are stored in metafields on the bundle product. The storefront form and the cart both read from these, so your bundle loads quickly without extra requests to BundleM8.

Very large bundles (more than 600 linked variants, only possible on plans without a variant limit) are too big to store in metafields. For these, the storefront form loads the bundle's data from BundleM8 when the page opens, and shows a short loading spinner while it does.


On the product page

The Bundle Selection block reads the bundle's data and builds the selection form. As the customer makes choices, it:

  • Shows and hides groups based on their selections and condition groups.
  • Checks each group's minimum and maximum selections before adding to the cart.
  • Shows the total price for the current selection.
  • Marks products that are out of stock as unavailable.

When the customer adds the bundle to the cart, their selection is attached to the cart item as a hidden line item property.


In the cart and checkout

BundleM8 installs a cart transform function in your store. Shopify runs it whenever the cart changes. It reads the selection attached to each bundle and expands the bundle into its component products, each at its bundle price.

Your customers see one bundle in the cart, with the products inside it listed underneath (in themes that support this). Orders contain both the bundle and its components, so fulfilment and inventory work on the actual products. See Cart, checkout and orders.


Inventory

BundleM8 keeps stock accurate at two levels:

  • Component stock. The storefront form checks each product's stock and inventory policy. Products that can't be sold are shown as unavailable and can't be selected.
  • Bundle stock. The bundle product's own inventory is set from its components, based on the lowest stock across its possible combinations. When component stock changes, the bundle's stock is updated.

Because orders contain the component products, Shopify deducts stock from the components when a bundle is sold.


Keeping in sync with Shopify

BundleM8 listens for changes to your products in Shopify and updates your bundles automatically:

Change in ShopifyWhat BundleM8 does
A product's price changesUpdates its price in every bundle that has Auto sync prices on, unless you've set a custom price for it in the bundle
A product's title changesUpdates its label in your bundles, unless you've set a custom label
A product's stock changesUpdates stock checks and the bundle product's inventory
A product inside a bundle is deletedRemoves it from your bundles
A bundle product is deletedDeletes the bundle from BundleM8
A bundle product's title, SKU or status changesUpdates the bundle in BundleM8 to match

You can see these changes in the app's Activity log.


Linked variants and combinations

Two numbers describe a bundle's size, and both appear in the bundle summary in the bundle editor:

  • Linked variants: the number of different product variants used anywhere in the bundle. Each plan has a limit on linked variants per bundle.
  • Unique combinations: how many different bundles a customer could put together. A group where customers choose 3 of 6 products has 20 combinations, and every extra group multiplies the total.

Combinations don't count towards your plan's limits, and bundles with very large numbers of combinations still work. The editor may show an estimate such as "At least 9 quadrillion unique combinations". If a bundle's groups allow too many combinations for BundleM8 to work out its price range and stock, the editor won't save it and asks you to reduce the number of optional products or narrow a group's minimum and maximum selections.

Previous
Getting started