Skip to main content

Bundle Builder: Cart Transforms and Items Grouping

Learn how Cart Transforms and Items Grouping display bundled products as grouped line items in the Smart Cart, and how to configure each option.

Written by Tom
Updated today

Bundle Builder grouped cart display: overview

Bundle Builder offers two ways to display bundled items as a grouped entry in the Smart Cart: Cart Transforms and Items Grouping. Both show bundle contents under as a parent line item, but they work differently and suit different use cases.

Discount mechanism

Cart Transforms

Shopify Functions

Child item quantity selectors

No — bundle controlled as one unit

Yes — each item has its own selector

Remove individual items

No

Yes

Fixed amount discounts

No

Yes

Discount analytics reporting

Limited (revenue only)

Full


Bundle Builder Cart Transforms

Cart Transforms uses Shopify's Cart Transform Functions API to consolidate all selected bundle products into a single parent line item in the Smart Cart. The parent line item shows a combined price, a single quantity selector.

The parent is a "ghost" bundled product — it represents the bundle in the cart and at checkout but does not track inventory in Shopify. When the order is processed, the individual products appear as separate line items in Shopify Admin for fulfillment and Enterprise Resource Planning (ERP) purposes.

As long as the Discount Mechanism is set to Cart Transforms and your Smart Cart template is up to date, bundles will display as a grouped item.

Cart Transform benefits

  • Simplifies the cart display — customers see one clean line item instead of multiple separate entries

  • Great for kits or "all-in-one" product bundles

Bundle Builder Cart Transforms limitations

  • Does not support fixed amount discounts

  • Discounts won't appear in standard Rebuy Analytics discount reporting — you'll see total revenue but not the discounted amount breakdown

  • Child items do not have individual quantity selectors — customers control the entire bundle at once

  • Individual subscription upgrades for child items are not supported from the cart

How to set up Cart Transforms for bundles

To use Cart Transforms in Bundle Builder, create a product in Shopify that represents your bundled item, then connect it to your Bundle Builder widget using the product's variant GID.

  1. In Shopify Admin, create a new product to act as the bundle container (e.g., "Build Your Own Bundle").

  2. Find the variant GID of this product:

    • Navigate to the product page in Shopify Admin and append .json to the URL in your browser.

    • Use Ctrl+F (or Cmd+F on Mac) to search for ProductVariant.

    • Copy the full admin_graphql_api_id value (e.g., gid://shopify/ProductVariant/12345678901234).

  3. In your Bundle Builder widget, go to Discounting and set the Discount Mechanism to Cart Transforms.

  4. Paste the variant GID into the Bundle Product Variant ID field.

  5. Click Save.

This ensures that all selected items are grouped into one SKU at checkout. See the screenshot examples below.

The screenshot below shows an example of where to enable the Cart Transforms setting in the Rebuy Bundle Builder editor:

The screenshot below shows an example of finding the product's variant GID:

The screenshot below shows an example of how the Cart Transforms bundle displays in the Smart Cart:

Troubleshooting Bundle Builder Cart Transforms setup

Incorrect Bundle Product Variant ID in Discounting Settings

Each Bundle Builder widget requires the correct Bundle Product Variant ID in the Discounting settings. If this ID is wrong or missing, the Cart Transform can't identify the parent bundle product to group items under, so items appear as separate line items.

Shopify's Limited Data Exposure for Cart Transform Children in Smart Cart

Cart Transform children line items have limited data accessible within the Smart Cart framework. Shopify does not currently expose the full child item data to cart.js, which means the Smart Cart may not display or group them as nested items under a parent. If you want the items displayed and grouped under a parent product, use the Items Grouping feature instead. Instructions in the section Bundle Builder Items Grouping.

Update any customized Smart Cart templates

If you are using a customized Smart Cart template and the Cart Transform bundle isn't displaying as a single line item in the Smart Cart, the cart item template likely needs updating. Try re-saving your Cart Items Settings in the Smart Cart editor — this will prompt an update to the latest template version automatically. If you're using a custom Smart Cart template, you'll need to update it manually by following the instructions in the Rebuy Smart Cart template documentation at Smart Cart template, then re-save Cart Items Settings.


Bundle Builder Items Grouping feature

Items Grouping is a Bundle Builder cart display option available when the Discount Mechanism is set to Shopify Functions. Like Cart Transforms, it shows the bundle under a parent line item with a collapsible dropdown. The key difference is that each child item gets its own quantity selector and can be individually increased, decreased, or removed.

Note: Items Grouping is only available for Bundle Builder. It is not available for the Dynamic Bundle Widget.

Important: The Items Grouping toggle only appears when the Discount Mechanism is set to Shopify Functions. It is not available with Cart Transforms.

When to use the Bundle Builder's Items Grouping feature

Use Items Grouping instead of Cart Transforms when:

  • Customers need to adjust individual item quantities within a bundle

  • Customers should be able to remove specific items without removing the entire bundle

How to enable Items Grouping for Bundle Builder

Before enabling Items Grouping for the Bundle Builder, create a "Parent" product in Shopify's admin. Give your product a relevant name and set the product's price to $0. Once created, follow these steps in your Rebuy Bundle Builder editor:

  1. Open your Bundle Builder widget and go to Discounting.

  2. Set the Discount Mechanism to Shopify Functions.

  3. Scroll to the Items Grouping section and toggle Enabled Items Grouping on.

  4. In the Parent Product field, search for and select the product that will serve as the parent line item in the cart.

  5. Click Save.

  6. Enable Nested Cart Items in your Smart Cart settings.
    In order for the bundle 'child' items to display nested under the parent product in the cart, you must enable the Nested Cart Items setting in Smart Cart. Go to your Smart Cart editor > Cart Items component > enable Nested Cart Items. From there you can also enable the collapsible dropdown, set the default open/closed state, and customize the "Show/Hide" labels. These settings apply only to Items Grouping bundles — Cart Transform bundles are not affected. See details here.

The bundle's parent product appears in the cart at $0.00 — the child items carry the actual pricing. Choose a product that clearly represents the bundle (e.g., "Custom Bundle" or "Build Your Own Set").

Important: The parent product must be published in Shopify's Online Store Sales Channel as either Active or Unlisted — draft products cannot be used. Adding the Rebuy exclusion tag exclude_rebuy to the parent product is also recommended so it doesn't appear in widgets using AI-powered endpoint rules.

What Items Grouping looks like

Here are some examples of how bundles display in the Smart Cart, Checkout page, and Shopify order forms, when using the Bundle Builder's Items Grouping feature.

In Smart Cart: The parent product appears at $0.00 with a collapsible dropdown. Each child item has its own image, title, price, quantity selector, and remove icon.

At checkout: Items appear as individual line items. The parent shows as "FREE" or $0.00, with child items listed below at their individual prices.

In Shopify Admin orders: Each item appears as a separate line item with Rebuy attribution properties (_r_added_bundle_session_id, _widget_id, _attribution: Rebuy Bundle Builder).

Bundle Builder Items Grouping limitations

When using Items Grouping, there are two known display limitations to be aware of:

  • The bundle's parent product displays at $0.00 in the Smart Cart — child items carry the actual pricing. CSS is required to hide the price and quantity selector on the parent item (see below).

  • The bundle's parent product shows as FREE at checkout. This is a known Shopify limitation and cannot be overridden with CSS.

CSS Workaround to hide the $0.00 price and quantity selector on the parent bundle item

Add the following to your Smart Cart at Smart Carts > [Your Cart] > Global Settings > Advanced > Custom CSS Code Box:

/* Hide the $0 price and quantity selector on parent bundle items in the Smart Cart */
.rebuy-cart__flyout-item:has(.rebuy-cart__flyout-item-nested-items) .rebuy-money:not(.rebuy-cart__flyout-item-nested-items *),
.rebuy-cart__flyout-item:has(.rebuy-cart__flyout-item-nested-items) .rebuy-cart__flyout-item-quantity:not(.rebuy-cart__flyout-item-nested-items *) {
display: none;
}

Example of where to place the css code in the Smart Cart's editor for removing the $0 price and quantity selector:

Example of the Items Grouping parent product in the Smart Cart without css removing the $0 price and quantity selector:

Example of the Items Grouping parent product in the Smart Cart after adding css to remove the $0 price and quantity selector:


Configuring the Bundle Builder Items Grouping dropdown in Smart Cart

Smart Cart includes settings that control how Bundle Builder Items Grouping bundles display their child items. These are found in Smart Cart > Cart Items Component > Nested Cart Items and apply only to Items Grouping bundles. Cart Transform bundles display their dropdown automatically and are not affected by these settings.

Setting

Description

Nested Cart Items (toggle)

Enables the collapsible dropdown for Items Grouping bundles

Display Items in Dropdown

When checked, child items appear in a collapsible dropdown. If unchecked, they display inline.

Default Dropdown State

Sets whether the dropdown starts Closed or Open

Single/Plural Line Item Label

Customizes the text in "Show 1 item" / "Show 3 items"

Hide/Show Nested Items Label

Customizes the collapse/expand labels (e.g., "Hide" / "Show")

Available placeholders:

  • {{nested_item_count}}

    • The total number of nested items that will be displayed in the dropdown.

  • {{single_or_plural_line_item_label}}

    • The single or plural line item label. This will be determined by the number of nested items.

  • {{total_nested_item_cost}}

    • The total cost of the items in the dropdown.


Bundle Builder Cart Transforms and Items Grouping FAQ

Answers to common questions about grouped cart display, discounting, reporting, and setup for Bundle Builder's Cart Transforms and Items Grouping features.

What is the difference between Cart Transforms and Items Grouping?

Cart Transforms and Items Grouping are two different ways Bundle Builder can group bundled items under a single parent line item in the Smart Cart. Cart Transforms consolidates all bundle items into one line with a single quantity selector — customers control the entire bundle as one unit. Items Grouping also groups items under a parent, but each child item keeps its own quantity selector and remove button. Use Cart Transforms for clean all-in-one kits. Use Items Grouping when customers need to adjust individual items.

My parent product isn't appearing in the Items Grouping parent product search field — how do I find it?

If a newly created product isn't appearing in the Items Grouping parent product search field, Rebuy's product catalog likely needs a manual resync to pick up the new product. Go to Rebuy Admin > Settings > Status > click resync Products.

Then return to your Bundle Builder widget's Discounting settings and search for the parent product again — it should now appear in the dropdown.

Is Items Grouping available for the Dynamic Bundle Widget?

Items Grouping is not available for the Dynamic Bundle Widget. It is only available for Bundle Builder.

Why is the parent product showing as $0.00 in the Smart Cart?

When using Items Grouping, the parent product is a placeholder that represents the bundle in the cart — the child items carry the actual pricing, which is why the parent displays at $0.00. This is expected behavior. To hide the $0.00 price and quantity selector on the parent item, add the following CSS to your Smart Cart at Smart Carts > [Your Cart] > Global Settings > Advanced > Custom CSS Code Box:

/* Hide the $0 price and quantity selector on parent bundle items in the Smart Cart */
.rebuy-cart__flyout-item:has(.rebuy-cart__flyout-item-nested-items) .rebuy-money:not(.rebuy-cart__flyout-item-nested-items *),
.rebuy-cart__flyout-item:has(.rebuy-cart__flyout-item-nested-items) .rebuy-cart__flyout-item-quantity:not(.rebuy-cart__flyout-item-nested-items *) {
display: none;
}

Why does the parent product show as FREE at checkout?

The parent product showing as FREE at checkout is a known Shopify limitation when using Items Grouping. The child items are listed below at their individual prices, so the order total is not affected. This cannot be overridden with CSS.

Why aren't my Cart Transform bundle items displaying as a single grouped line item?

If Cart Transform bundles aren't consolidating into a single line item in the Smart Cart, the most likely cause is one of the following: the Bundle Product Variant ID in the widget's Discounting settings is missing or incorrect, or the Smart Cart template needs updating. Try re-saving your Cart Items Settings in the Smart Cart editor to prompt an automatic template update.

If you're using custom templates for both the Smart Cart and Bundle Builder, the Cart Transform grouping display requires that both templates are on their latest versions. If bundled items aren't grouping correctly in the cart, updating both templates is the recommended first step.

You can find those here:

Why aren't bundle items showing nested under the parent in the Smart Cart when using Items Grouping?

If child items are not appearing nested under the parent line item, the Nested Cart Items setting in Smart Cart likely needs to be enabled. Go to your Smart Cart editor > Cart Items component > enable Nested Cart Items. This setting must be turned on for Items Grouping bundles to display their collapsible dropdown in the Smart Cart.

Can I use a draft product as the Items Grouping parent product?

Draft products cannot be used as the Items Grouping parent product. The parent product must be published in Shopify's Online Store Sales Channel as either Active or Unlisted. It is also recommended to add the exclude_rebuy tag to the parent product so it doesn't appear in widgets using AI-powered endpoint rules.

Do Cart Transform bundles support fixed amount discounts?

Cart Transform bundles do not support fixed amount discounts. Only percentage-based and decorative discount types are available when using Cart Transforms as the discount mechanism. If you need fixed amount discounts, switch the Discount Mechanism to Shopify Functions.

Why aren't discounts showing up in my Rebuy Analytics reporting for Cart Transform bundles?

Cart Transform bundles only display the final combined bundle price in Rebuy Analytics reporting — the discounted amount is not broken out separately. This is a known limitation of the Cart Transforms mechanism. Full discount reporting, including the original price and discounted amount breakdown, is only available when using Shopify Functions as the discount mechanism.

Did this answer your question?