Product Bundles 2.0: Shopify’s Cart Transform API

Introduction

If you are on the Giftship Standard plan or higher, you have access to product bundles, a requirement for leveraging our box builder feature or an optional configuration when setting up product upsells.

Prior to September 2024, Shopify didn’t provide app developers with any endpoints to create bundled products. Giftship pioneered the functionality with Bundles 1.0.

With Shopify’s new Cart Transform API, Giftship can now add bundles and bundle discounts to your cart and checkout pages more reliably server-side.

This article will explain the pros and cons and show you how to implement Giftship’s Bundles 2.0 in your shop today. So, let’s begin!

Please note: While we are excited about Giftship Bundles 2.0, it relies on Shopify’s Cart Transform API, which currently removes line item properties from an order. This isn’t a limitation caused by Giftship but rather a lack of foresight by Shopify, which we hope they will correct in future releases.

Bundles 2.0 Pros:

  1. Less code

    Bundling products using Shopify’s Cart Transform API ensures that prices appear correctly on the theme’s native cart without manually installing Giftship’s product bundle snippets in your theme’s cart template.

  2. Grouped in checkout

    Shopify’s Cart Transform method now groups the bundled items together underneath the primary item, making it more visually appealing for customers.

  3. Reliability

    Bundling server-side reduces the chances of a third-party app, theme, or script conflicting with the bundling process. Furthermore, we no longer rely on the customer submitting the checkout form or visiting the cart page to unbundle the products prior to checkout, this prevents customers from purchasing an empty bundle when they use their browser’s forward and back button or if there is any delay in the storefront loading.

Bundles 2.0 Cons:

  1. Missing line item properties

    Unfortunately, Shopify’s Cart Transform API changes how orders appear in Shopify. It removes all line item properties from being visible when viewing the order in Shopify and prevents other third-party apps from printing them. This isn’t a limitation caused by Shopify but rather a lack of foresight by Shopify.

  2. Order Printer

    Due to the missing line item properties, you’ll need to use Giftship’s order printer and define the line item properties you want to display. To get started, go to Giftship’s dashboard > Order Printer > Create New Template, and select an existing option such as “Packing Slip” or “Invoice.” Next, click on the Line Item Property block and edit the Liquid loop that displays fields like “To,” “From,” and “Message.” Here, you can add a date picker or customize it as needed.

  3. Order Confirmation

    Because of the missing line item properties, you will not be able to retrieve the line item properties in your native Shopify order confirmation templates.

How to install bundles 2.0

  1. Upgrading from Bundles 1.0

    If you leveraged Giftship’s bundles in the past, you will need to manually remove the product bundle snippets from your theme, please let us know if you require assistance.

  2. Configuration

    To enable this feature, please visit Giftship’s dashboard > global settings > tab: bundles and enable.

  3. Orders App Block

    To enable the ability to see line item properties in orders, we’ve added an app block extension when viewing the order. To enable this feature, please visit any order in shopify, scroll down to app blocks, click on “+ app block” and choose “Giftship bundled attributes”.

  4. Single Cart Bundled Contents

    While the Cart Transform handles the product prices, you will need to manually install the line item properties snippet in your native theme’s cart template files. You can find the properties snippet here and instructions here.
  1. Drawer Cart Vs Cart Page

    If you implement Giftship’s drawer cart, you don’t need to install any snippets. You can learn more here: https://docs.giftship.app/article/drawer-cart-integration-guide/

Conclusion

If you have questions about product bundles, please don’t hesitate to get in touch with us at support@gist-apps.com.

Can't find the answer in our documentation?
Contact Support
Remove Blocks Based on Country
Remove British Forces from Multi-Address Modal
Preset Bundles: Automatically Ensure All Products in an Upsell Block Are Added to Cart
How to Add Custom Scripts to Multiship
Product Bundles 2.0: Shopify’s Cart Transform API
Troubleshooting Missing Shipping Rates with Multiple Shipping
Conditionally Showing Datepicker Blocks Based on Product Types in Cart Using the Hidden Input Block
Showing Product Option Blocks Based on Customer Tags with the Hidden Input Block
Event API Example: Automatically Add an Ice Pack to Each Shipment in the Multiple shipping Address Process
Drawer Cart CSS Styling Options
Introduction to Drawer Cart
How to Enable the Drawer Cart
Build your Drawer Cart
Dynamic Display Logic in Drawer Cart
Drawer Cart Settings Guide
Drawer Cart Block: Upsells
Drawer Cart Block: Gift Message
Localization and Translation of your Drawer Cart | Multiple Language Management
Add Checkout Options to the Checkout Page
Automatically Tag Orders with Image Swatch File Names in Giftship Product Options
Introduction to Checkout Options
Build a Checkout Options Set
Localization and Translation of your Checkout Options | Multiple Language Management
Dynamic Display Logic in Checkout Options
Checkout Option Block: Upsells
Checkout Option Block: Gift Message
Checkout Option Block : Datepicker
Checkout Option Block: Selections (Checkbox, Radio Button, Dropdown)
Checkout Option Block: Inputs (Text, Number, Email, Phone, Textarea)
Introduction to Cart Options
Cart Option Block: Image Gallery
Build a Cart Options Set
Dynamic Display Logic in Cart Options
Cart Option Block: Upsells
Cart Option Block: Gift Message
Cart Option Block : Datepicker
Cart Option Block: File Upload
Cart Option Block: Color Swatch
Cart Option Block: Inputs (Text, Number, Email, Phone, Textarea)
Cart Option Block: Selections (Checkbox, Radio Button, Dropdown, Color Picker)
Integrate with Pagefly Landing Page Builder
Preventing Checkout Until Giftship Bundles are Loaded
Giftship App Block and Onboarding Guide
Gift Message: Adjusting Font Size Based on Character Length
Box Builder Premium Themes
Custom Order Printer Templates
Adding a Banner to the Box Builder
Integrate with Rebuy Smart Cart
Javascript Event API
Introduction to Auto Tagging
Auto Tagging Orders with Gift Messages
Auto Tagging Orders with Delivery Dates #️⃣
General Troubleshooting
Configuring Your Customer Account Page
Troubleshooting Bundle Items Not Being Added to the Cart
Only Show Gift Messages on Shopify’s Packing Slip Template If They Are Present
Troubleshooting Conditional Logic
Preventing Giftship’s Features from Being Removed from the Cart Page When Using The Prestige Theme
Introduction to Box Builder
How to Disable the “gistToken” Attribute in the Additional Details of Your Orders
Creating a Box Builder
Adding an Image to your Box Builder Base Product
Clear the Box Builder Form Once Complete
Adding a Gift Message to Your Box Builder with the Stack Theme
Hide the Stack Theme Box Summary Icon
Displaying Collection Filters in Your Box Builder
Add a Link to Your Box Builder in your Menu
Hiding Sold Out Products From Your Box Builder 🎁
Introduction to Product Options
Customizing Box Builder Product Display Price on Collection Pages 🎁
Build a Product Options Set
Dynamic Display Logic in Product Options
Product Option Block: Upsells
Product Option Block: Gift Message
Product Option Block: Datepicker
Product Option Block: File Upload
Product Option Block: Inputs (Text, Number, Email, Phone, Textarea)
Product Option Block: Selections (Checkbox, Radio Button, Dropdown, Color Picker)
Product Option Block: Color Swatch
Product Option Block: Image Gallery
Showing Product Option Blocks Based on Product Variants with the Hidden Input Block
Edit Gift Messages etc on Multiship and Cart Page in Giftship
Styling you Product Options Image Row Upsell Components
Adding Bundles when a User Navigates to the Cart Page
How to show bundle price on product page as bundle is built
How To Implement Product Bundle Snippets With Handlebars.js Cart
How to Accurately Preview your Order Confirmation Email Template 📫
How to Bulk Print Orders with Gift Messages Using the Print with Giftship Tool 📫
Hide prices on your order printer packing slip if the “Is this a gift?” checkbox is checked 📫
Issuing Refunds for Multiple Shipping Address Orders 📫
How to view orders by delivery date 📫
Fulfilling Multiple Shipping Address Orders
Viewing Reports with Multiple Shipping Address Orders
Discount Codes for Multiple Shipping Address Orders
Tax Calculation for Multi-Address Checkouts in the United States
Conditionally Hide Giftship Options Based on Your Carts Contents
Sending non-physical products to multiple recipients
Using Tax Overrides for Multiple Address Checkouts
Enable Order Notes for Shipping to Multiple Addresses
Making the Multiple Shipping Address Checkout Cart the Default