Skip to main content
Creating & managing bundles

How offer tiers work

Every bundle in Bundlex is built from a set of offers, also called tiers. An offer is a single rung on a quantity ladder, for example "Buy 1", "Buy 2", or "Buy 3", and each rung carries its own quantity, discount, and widget text. This article explains how that model works, how the default tier and ordering behave, and how the customer's choice carries through to checkout.

What an offer is

A bundle holds an ordered list of offers. A bundle can have up to 10 offers. Each offer is configured independently and has three core parts:

  • Quantity threshold - the number of units this tier applies to (for example 1, 2, or 3).
  • Discount - the discount type plus its amount. Quantity breaks and product bundles support Percentage, Discount per item (fixed), Exact amount, or None. Buy X, get Y is a separate offer type, and free gifts are attached extras.
  • Widget text - the title, subtitle, badge, and label shown for that tier in the product-page widget. Titles and subtitles can use template variables like {{saved_percentage}}.

Offers can also carry free gifts and paid cross-sells ("extras") and benefit bullets, but the quantity, discount, and text are what define the tier itself.

The pre-selected (default) tier

By default, exactly one offer is pre-selected when a shopper opens the product page. Open that offer in the Offers tab and tick Pre-selected offer. Many merchants choose a middle or higher-quantity tier to show its savings first.

Let shoppers leave every offer unselected

Turn on Offer selection is optional in the Advanced tab. Shoppers can then click the selected offer again to deselect it.

  1. Open the Advanced tab and enable Offer selection is optional.
  2. To start with nothing selected, go to the Offers tab, open each offer, and untick Pre-selected offer on all of them.
  3. Save and test the product page, both before choosing an offer and after selecting and deselecting one.

You can also keep one pre-selected offer while allowing shoppers to deselect it. With no offer selected, the theme's own quantity, variant, and add-to-cart controls work normally. Bundlex does not add the offer's gifts or extras. Add-ons stay available: ticked add-ons are added together with the theme's own add to cart and get their discount when the product qualifies. With Update theme product price on, the Add to cart button price includes them.

Deselecting is not an opt-out from every checkout discount. An unselected product bundle is not added automatically, but plain quantity tiers can still apply when the shopper's cart quantity qualifies. For a strictly opt-in product set, use a Product bundle offer.

This setting is off by default and does not apply to add-ons-only discounts. Turning it off restores the requirement for one pre-selected offer.

Ordering and reordering

Offers display in the widget in the order they appear in the bundle editor, top to bottom. Each offer has a Move up and Move down control so you can rearrange the ladder, for example to put your "best value" tier in the middle. You can also duplicate an offer (the copy is inserted right after the original and is never marked as default) or delete one.

Order is purely about how the ladder is presented. It does not have to match ascending quantity, though listing tiers from lowest to highest quantity is the most common and clearest layout.

Two offers can share the same quantity threshold (for example "Buy 1" and "Buy 1 + gift"). Bundlex keeps them distinct by their position in the offer list, so both can coexist in the same bundle.

How the chosen tier reaches checkout

When a shopper picks an offer and adds to cart, the widget puts the chosen products and private _bundlex information into the cart. Bundlex uses the actual cart contents to check quantities, required products, and eligibility at checkout. The same information links purchases to the discount for reporting.

This tagging is how the discount the shopper saw on the product page becomes the discount they actually get at checkout. Shopify hides the private _bundlex property at checkout. Themes and custom templates must filter private properties on other surfaces. It remains visible in the admin order details; see Bundlex order codes.

For straightforward volume tiers (no paid cross-sells), the cart discount can still adjust to the cart's real quantity. If the customer drops below the tagged tier's quantity, it steps them down to the matching rung. If a different volume tier would give them a better deal at the cart's quantity, it can promote them to that tier. Tiers that include paid cross-sells (true bundles) are treated as a fixed commitment and are applied only when the customer explicitly selected them. See product bundles for how cross-sells turn an offer into a set.

Quantities between tiers

With Bundlex's Quantity selector enabled, shoppers can choose an exact number on eligible quantity offers and move to a better tier as they reach its threshold. Bundles and exact-price packs count complete sets instead. See the quantity selector guide.

The theme's native quantity box is different. In the usual tier-navigation setup, an exact tier quantity selects that offer, but an in-between value can leave the previous offer selected and add its configured quantity. Do not add dozens of tiers just to work around this; check the supported quantity-selector setup first. See typed quantities and tier syncing.

Putting it together

A typical bundle is an ordered ladder of a few offers: a low rung at full or small discount, a recommended middle rung set as the default, and a higher rung with the deepest discount. Each rung carries its own quantity, discount type, and widget copy. The shopper's pick is tagged on the cart line, and the cart discount applies the right amount at checkout.

For how individual offers calculate savings, see the discount-type articles in this collection.

Was this article helpful?

Your feedback helps us improve our docs.

Thanks - we'll keep improving this article.

Want to chat with our team? Still have a question?

Still need help?

Our team is one click away. Send us a message and we'll get back to you.

We use a few cookies to keep this site working, measure how it is used, and power our chat widget when you open it. See our cookie policy.