Upselling one-time purchases to a subscription order while in cart
To integrate your subscription offering into every touchpoint, customer interaction needs to be treated as an upsell opportunity. By offering one-time purchases in the cart, you can juxtapose potential savings against the total cart value which will increase the perceived benefits of the discount. It provides an additional opportunity to position your subscription program, where you can highlight key perks or your subscription offering and create custom call-to-actions by focusing on key upsell criteria.
This guide outlines two implementation methods to add one-click upsell opportunities to your cart page, specifically for one-time purchases.
Before you start
- Suggestions in this guide may still require the help of an implementations team or developer. Please visit the Recharge Agency Partner Directory for a list of development agencies that you can partner with.
- Recharge Support does not provide support for custom code modifications. For more information, visit Recharge design and integration policy.
Method 1 - Custom Shopify script
You can implement a custom script to swap a one-time product with a subscription product through a single click on the cart page.
Step 1 - Add a subscription upsell button to Shopify theme file
Add a subscription upsell button to the Shopify Liquid theme file responsible for rendering the cart items. Include text that prompts the customer to upgrade to a subscription to save X%.
If a subscription has multiple order frequency options, you’ll also want to include an element allowing the customer to select their desired subscription frequency.
selling_plan_id
, the id itself can change. It is recommended to not hardcode the selling_plan_id
when building custom content.
Step 2 - Add logic to display upsell option
Add logic to only show this upsell option if the line item is available as a subscription (for example, if line item product object has selling plan groups).
Step 3 - Add event listener
Add an event listener to the subscription upsell button that will trigger a cart/change POST request to add the selling plan to the line item. The corresponding selling plan IDs can be found in the Shopify Liquid product object or can be accessed by making a client-side call to the Recharge API using the Recharge advanced JS methods, ReChargeWidget.api.fetchProduct(id)
or ReChargeWidget.api.fetchProducts()
Method 2 - Use a third-party integration
Alternatively, you can implement this functionality without custom development by leveraging Rebuy’s Switch to Subscription feature. Note that monthly charges may apply based on your usage.