Bundles are available on request. Get in touch and we will enable it for your store.
Set up bundles
Add component products
Add each product that makes up the bundle. Before adding a component, ensure it has the relevant methods enabled in Supercycle. The methods configured on each component determine which options are available when creating intents at checkout.
Bundle metafields
Parent bundle products will have the tagSupercycle bundle product and a supercycle.bundle metafield:
Bundle component: <parent-product-handle>.
You can access each component product’s full Shopify object in Liquid:
| Method | Configuration metafield |
|---|---|
| Calendar | product.metafields.supercycle.calendar_configuration |
| Membership | product.metafields.supercycle.membership_configuration |
| Subscription | product.metafields.supercycle.subscription_configuration |
| Resale | product.metafields.supercycle.resale_configuration |
global_id for each option. For example, a calendar configuration:
Build a frontend experience
Each component product must be added to the cart as its own line item with the correct Supercycle attributes. The steps below walk through checking availability, creating intents, and adding all components to the cart in one request.Check availability
Use the Product availability API to confirm all component products are available for the selected dates.Extract component IDs from the bundle metafield in Liquid:Then check availability:
Create an intent for each component
Each component product needs an intent created via the Intent API. The intent returns an Call this for every component before adding to the cart:
attributes object containing everything Supercycle needs to process the line item as a cycle, including _cycle, _validations, and selling_plan.You will need to build a UI that lets the customer select an option for each component product, for example a dropdown of rental periods per item. Each option has a global_id in the component’s configuration metafield, which is what you pass to the intent endpoint:Add all components to the cart
Once you have an intent for each component, add all variants to the cart in a single request using Shopify’s multiple items cart API.Use
FormData and set all intent.attributes keys directly. Each attribute key is already the correct form field name: