October 4, 2024
Over the past few weeks, we’ve focused on enhancing the overall performance of our subscriptions’ data layer and improving synchronization between Juo and Shopify. Subscriptions in Juo serve as the source of truth and contain information not natively available in Shopify’s Subscription API. Orders are generated from subscription contracts stored in Shopify. This dual-location setup makes it crucial to maintain perfect synchronization between the two platforms.
Previously, we used a centralized subscription updating process that simultaneously updated both Juo’s database and Shopify’s subscription contract. Updating Shopify’s data consumed approximately 90% of the total update time.
We’ve now enhanced the update process, which allowed us to safely relocate subscription contract update to a background job. This job performs the reconciliation process without blocking the synchronous update process. As a result, subscription updates in both the Merchant Portal and the Customer Portal should now operate up to 10 times faster.
Improvements and fixes
- Added support for redeeming discount codes on subscriptions with alternative payment methods
- Added the “Add product” bulk action to Subscriptions page in the Merchant Portal
- Added “Remove product” to Bulk Actions on Subscriptions page in the Merchant Portal
- Added auto-correction of the subscription reconciliation issues to the renewal process
- Improved product price display in Customer Portal. Now the product tile in Add/Swap product action displays the price of the cheapest variant.
- Changed the subscription reconciliation to run in the background for most of the subscription changes
- Fixed an issue in which available products were failing to load for Build-a-Boxes in the Customer Portal
- Fixed an issue in which subscriptions were renewed with incorrect delivery price when dynamic delivery pricing was enabled for the shop
- Fixed an issue in which subscriptions with pickup delivery could not be imported correctly
- Fixed an issue in which a payment method could get created without a payment instrument
- Fixed numerous issues that were occurring upon any subscription change due to the inability to synchronously reconcile the subscription contract with Shopify
- Fixed an issue where “Next renewal date” and “Cycle” filters could override each other on Subscriptions page in the Merchant Portal
- Fixed an issue in which a subscription was failing to reconcile after an existing shipping discount was replaced with a new one
- Fixed the subscription reconciliation when address phone is an empty string
- Fixed an issue in which post-renewal subscription processing could fail due to optimistic lock
- Fixed an issue in which a billing cycle could not be edited for subscriptions with past billing dates
- Fixed an issue in which renewal status could not be retrieved correctly after the payment had completed in the Terminal
September 27, 2024
SEPA chargebacks and refund details on Subscription Timeline
Chargebacks and refunds are an inevitable part of subscriptions in e-commerce. With account-to-account (A2A) payments like SEPA Direct Debit, chargebacks are especially challenging as they can be triggered for various reasons—not necessarily directly by a customer, but also due to insufficient funds.
To help merchants better handle customers with chargebacks, we’re adding new information to the Subscription Timeline and Activity Log. This new information will provide details about when a chargeback occurs, the exact reason for it, and ID of the order related to the chargeback.
We’re also adding information about refunds created by merchants, including details about their status and related orders.
As a next step, we will add an option to filter subscriptions with chargebacks and introduce custom dunning flows based on the chargeback reason. This will help merchants reclaim their revenue more effectively.
Improvements and fixes
- Added infinite scrolling for product loading to the Add and Swap product actions in the Customer Portal
- Added merchant notifications after chargeback is created
- Added LTV and Total Churn Rate metrics to Analytics page in the Merchant Portal
- Added renewal prevention to subscriptions after a chargeback
- Added chargeback metrics to Klaviyo integration
- Added an option to view details of custom cancellation reasons, allowing merchants to see a list of customer-provided reasons with their occurrence count in the Merchant Portal
- Fixed an issue in which no available plans were returned for subscriptions with multiple products
- Fixed an issue in which some order create webhook payloads were failing validation
- Fixed an issue in which the SEPA mandate was created after the initial payment failed
- Fixed an issue in which Build a box parent product was present on the Add products to Box list in the Customer Portal
- Fixed an issue in which refunds could not be processed when the gateway name was not recognized
- Fixed an issue in which new SEPA payment methods were created without consumer name in the Customer Portal
- Fixed an issue in which bulk action was showing lower progress percentage than the actual one
- Fixed an issue in which bulk action log was showing both skipped and done lines
- Fixed an issue in which bulk action was failing when product filter was set
- Fixed an issue in which it was not possible to set decimal values for fixed amount discount on Build a box and Tiered Discounts setup pages in the Merchant Portal
September 20, 2024
Improvements and fixes
- Updated Klaviyo API version
- Added sticky manage button to Subscribers table on Subscribers page in the Merchant Portal
- Fixed an issue in which custom workflows didn’t work properly with prepaid subscriptions
- Fixed an issue in which some dunning flow values (like 5 weeks) were improperly validated in the Merchant Portal
- Fixed an issue in which product reindex was not deduplicated in case of multiple reindex triggers at once
- Fixed an issue in which description of an “Out of stock” settings option didn’t respect custom dunning duration on the app settings page in the Merchant Portal
- Fixed an issue in which the Klaviyo Docs button URL was incorrect on the App Integrations page in the Merchant Portal
- Fixed an issue in which the Upsell title did not display user-friendly information when the upsell product’s discount percentage was 0% or 100% in the Customer Portal
- Fixed an issue in which selling plans in the Build-a-Box plan selector were unavailable when not all product variants were assigned to a selling plan in the Theme Extension
September 13, 2024
We’re excited to introduce a new official integration! Sublime Analytics Platform is a fully customizable app that delivers the relevant data and metrics you need. You can connect custom data sources, spreadsheets, redefine metrics, and even upload historical data 📈.
What really stands out is its dedicated subscription analytics, now fully integrated with all Juo metrics. Tracking subscription KPIs has never been easier, and we’re eager to strengthen this partnership moving forward.
Improvements and fixes
- Added “Skip” action and cancellation reason to “Cancel” action in Gorgias integration
- Added an option to add a SEPA Direct Debit payment method in the Customer Portal
- Added integration with Atlas Pickup Points
- Added navigation to settings tabs so that tab changes are now reflected in the browser URL in the Merchant Portal
- Added new
ActiveSubscriptionVariantIDs
attribute to customer profile in Klaviyo integration
- Added new tag for subscription recurring orders
- Added Portuguese app settings in the Merchant Portal
- Added Subscription note removed event to Activity Log and Subscription History in the Merchant Portal
- Added Subscription note removed event to Activity Log and Subscription History in the Merchant Portal
- Improved performance by caching frequent requests to Shopify with static responses
- Fixed an issue in which “Province/State” was not properly displayed on update address screen for Portuguese contracts in the Merchant Portal and in the Customer Portal
- Fixed an issue in which back button on Manage Subscription page didn’t respect browser history in the Merchant Portal
- Fixed an issue in which cancellation reason was not send in the Customer Portal
- Fixed an issue in which changing payment method from credit cart to alternative payment method caused an error in the Customer Portal
- Fixed an issue in which customer emails in Portuguese and French defaulted to English instead of being available in the correct language
- Fixed an issue in which first orders were not processed after the fulfilment order changed
- Fixed an issue in which new webhooks were not registered for existing shops
- Fixed an issue in which splitting subscription resulted with deleting the splitted products
- Fixed an issue in which Subscription History and Activity Log could fail to load when an empty subscription note has been added in the Merchant Portal
- Fixed an issue in which Subscription Note was not present in the Merchant Portal
- Fixed an issue in which the Cancellation Poll immediately cancelled the subscription upon selecting a cancellation reason in the Customer Portal
- Fixed an issue in which the Recharge-compatible endpoint was returning inaccurate data
- Fixed an issue in which the Tiered Discounts and Build-a-Box lists showed percentage discounts even when a fixed-amount type was selected
August 30, 2024
Improvements and fixes
This week we’ve been working on additional options for creating subscription offers to make Juo even more flexible. Two noteworthy features are: a new rule to change frequency in Custom Workflows and fixed amount discounts in Build-a-Box.
The change frequency rule in Workflows allows merchants to customize the subscription experience by adjusting the delivery frequency with each cycle. To enable it, go to Custom Workflows and select Rules for a specific cycle.
Fixed amount discounts add flexibility to bundle offers, allowing merchants to set specific amounts instead of percentages to incentivize customers and increase AOV.
- Added a new rule
Change frequency
to the Custom Workflows
- Added support for fixed amount discounts to Build-a-Box and Tiered Discounts
- Added action to reactivate cancelled subscription in the Customer Portal
- Added French language support in Customer Portal
- Added French language support to app settings in the Merchant Portal
- Added an option to migrate subscriptions with a past next billing date
- Added missing translations to Subscription Upsell in the Customer Portal
- Fixed an issue in which product price was incorrect after a product swap when subscription currency code differed from the market currency
- Fixed an issue in which incorrect initial values appeared on the Custom Workflows change frequency rule configuration in the Merchant Portal
- Fixed an issue in which
ActiveSubscriber
profile property in Klaviyo could show incorrect state
- Fixed an issue in which selling plan value could not be retained on some themes in the Theme Extension
- Fixed an issue in which savings were not calculated properly without a free product in legacy Build-a-Box summary block
- Fixed an incorrect renewal interval label visible when editing subscription cycle in the Merchant Portal
- Fixed an issue in which SEPA Direct Debit mandate could not be created when consumer name was missing from transaction details in Mollie
- Fixed an issue in which shipping method change submission was possible when InPost parcel locker was selected but no locker has been selected in the Customer Portal
- Fixed an issue in which Subscription History timestamps were misaligned in the Customer Portal
- Fixed an issue in which Cancellation Poll could not be closed when subscription has been reactivated in the Customer Portal
- Fixed an issue in which next payment date was displayed for cancelled subscription in the Merchant Portal
- Fixed an issue in which action button with three dots was visible for cancelled subscription in the Merchant Portal
- Fixed an issue in which non recurring selling plans were listed in Subscription Widget in the Theme Extension
August 23, 2024
Integration with Gorgias
This week we’re launching a highly anticipated integration with one of the most popular CX platforms for DTC brands — Gorgias. The integration helps customer experience teams quickly solve subscriber requests and access all the relevant data without switching context.
Juo <> Gorgias integration allows managing subscriptions directly from the Gorgias inbox: view subscription details, products, next renewal, and latest orders. It’s also possible to skip, reactivate, or cancel subscriptions (and select cancellation reasons).
To activate Gorgias integration, go to ‣ .
Improvements and fixes
- Added an option to filter subscriptions by product variant in the Merchant Portal
- Added cancellation reason to subscription cancel action in the Merchant Portal
- Added API keys integration page with an option to manage API keys
- Improved retrying of failed Shopify API requests to cover more retryable cases
- Added a snapshot of every order for better tracking of subscription history
- Added an option to split subscription lines into multiple subscriptions with different schedules
- Added
TotalRecurringRevenue
and TotalRecurringOrders
properties to Klaviyo customer profiles
- Added “Opened Subscription Fulfillment” Klaviyo metric sent when a fulfillment order is released
- Added soft-deletion to subscription line items and discounts
- Added support for Mollie - Bancontact
- Updated the look and feel of the Integrations settings page
- Improved performance of getting available selling plans for a specified subscription
- Fixed a performance issue that occurred whenever product variants with contextual prices were being returned
- Fixed an issue in which no available options were presented when changing subscription frequency with multiple products in the Customer Portal
- Fixed an issue in which Custom Workflow line item could be removed from subscription when there were no other products in subscription in the Customer Portal
- Fixed an issue in which subscription renewal failed when there were more than one free shipping extras on contract
- Fixed an issue in which it was not possible to activate an existing payment method
- Fixed an issue in which the ‘Update’ option was incorrectly displayed for payment methods that do not support updates in the Customer Portal
August 16, 2024
Improvements and fixes
- Added subscription purchase and migration events to activity log
- Added an option to create a Curated Box step with no selected products
- Added navigation to settings tabs so that tab changes are now reflected in the browser URL in the Merchant Portal
- Added an option to change the dunning flow settings in the Merchant Portal
- Changed the default dunning flow duration to 1 month
- Fixed an issue in which the activity log was failing to load
- Fixed an issue in which the Curated Box fulfillment date was incorrect when the buffer period was set
- Fixed a race condition in which two payment attempts could be made at once for BLIK purchases
August 09, 2024
Email notifications preview
This week we launched multiple improvements to Manage subscription, including new bulk actions (Reschedule renewal, Retry payment) and additional reasons for the failed payment in the subscription timeline.
To help merchants maintain high-quality communication with their customers, we introduced email notification preview. Merchants can now check each email that has been sent to a customer and see the delivered details.
To preview a notification, go to Activity log or Subscription timeline and click on an email subject.
Improvements and fixes
- Added the Custom Workflow/Curated Box order processing when fulfillment order is released/opened early
- Added retry payment bulk action to the Subscriptions page in the Merchant Portal
- Added reschedule renewal bulk action to the Subscriptions page in the Merchant Portal
- Added showing the number of selected subscriptions across all pages to the Subscriptions table
- Added more payment failure reasons to the list that triggers a payment failed notification to the customer
- Added a safety check so that once a payment method is revoked it cannot be modified
- Added support for weight conditions in delivery profiles when calculating available shipping rates
- Improved performance of the subscription activity log in the Merchant Portal
- Fixed an issue in which the
X-Shopify-Shop-Domain
header was required when the X-Juo-Access-Token
was already set
- Fixed an issue in which the order was put on hold even when placed on the anchor day
- Fixed an issue in which the prepaid orders background job was stuck after all prepaid orders were created and the subscription was no longer active
- Fixed an issue in which the order’s origin time was not taken into account when calculating the fulfillment date
- Fixed an issue in which deleting an input value was breaking the existing UI and causing the results table to freeze in the loading state in the Merchant Portal
- Fixed an issue in which product indexing was failing due to missing read inventory scope
- Fixed an issue in which onboarding failed with an error when the customer login template was not present in the store in the Merchant Portal
- Fixed an issue in which subscription emails may have contained outdated contract data
- Fixed an issue in which the Customer Portal style settings were not visible after the change
- Fixed an issue in which onboarding theme check continued to fail when the customer login template was not present in the Merchant Portal
- Fixed an issue in which it was not possible to pause subscriptions with contained anchors in the Customer Portal
- Fixed an issue in which BLIK charges could fail due to a race condition
- Fixed an issue in which various requests were failing due to removed products
- Fixed an issue in which subscription contracts could not be reconciled when the payment method was revoked
- Fixed an issue in which fulfillment order webhooks could not be processed when a related order background job had already finished
- Fixed an issue in which bulk actions could be executed for all subscriptions across all the pages when not intended
- Fixed an issue in which checkboxes were hidden on product table rows in the Merchant Portal
August 02, 2024
Improvements and fixes
- Added an option to group multiple subscriptions renewing at the same time into one order
- Added an option to preview current status of triggered bulk action to Activity Log in the Merchant Portal
- Added better support for failed Shopify charges due to the contract being under review
- Added Custom Delivery Frequency option to Customer Portal Management Options on app settings page in the Merchant Portal
- Added custom delivery frequency option to the Selling Plan Change sidebar in the Customer Portal
- Added higher priority to renewal jobs in process state so that these jobs are executed before jobs in other states
- Added immediate billing attempt failure in case the payment method is revoked; no request is now made to the payment provider
- Added ShopPay and Paypal options to the payment method filter on the Subscriptions page in the Merchant Portal
- Fixed an issue in which “Current plan” was missing German translation on the Selling Plan Change sidebar in the Customer Portal
- Fixed an issue in which a refund could not be created for orders with a presentment currency different from the shop currency
- Fixed an issue in which a subscription could be renewed with a different payment method than selected
- Fixed an issue in which an order could get cancelled even though one of the multiple charge attempts was successful
- Fixed an issue in which cursor params update triggered unnecessary reloads
- Fixed an issue in which custom delivery interval select didn’t trigger validation on value change in the Customer Portal
- Fixed an issue in which Delivery Interval was not visible on the Selling Plan and Curated Box setup pages in the Merchant Portal
- Fixed an issue in which order could get processed with a previous curated box instead of the current one
- Fixed an issue in which product discounted price was inproperly displayed in the Customer Portal
- Fixed an issue in which some selling plans were not displayed in the Customer Portal on “Subscription frequency” change action
- Fixed an issue in which Stripe refunds could not be created due to a rounding error
- Fixed an issue in which Subscription Table filter labels were not visible after page refresh or direct URL access in the Merchant Portal
- Fixed an issue in which subscriptions containing a Curated Box with no start date could not be processed correctly
- Fixed an issue in which subscriptions could not be processed for customers without emails
- Fixed an issue in which subscriptions could not be processed when the calculated next billing date preceded the one on the Shopify contract
- Fixed an issue in which Subscriptions Table failed to load when page address included search input query in the Merchant Portal
- Fixed an issue in which the “Cycle” filter did not work when the “between” condition was applied in the Merchant Portal
- Fixed an issue in which the cycle filter results did not match subscriptions which cycle was equal to the selected cycle in the Merchant Portal
- Fixed an issue in which the payment method table filter included options that were not universally applicable across different stores in the Merchant Portal
- Fixed an issue in which the Subscription table content reloaded when selected filter options dropdown appeared in the Merchant Portal
- Fixed an issue where the compared price would appear on Upsell Products when it was equal to 0 in the Customer Portal
- Fixed pagination issues in Recharge 2021-01 compatible endpoints
- Reverted billing attempt creation to April24 API version to address the issues with the insufficient inventory behavior of Shopify
July 26, 2024
Bulk actions on subscriptions
This week’s update is one of the most requested features — bulk actions. Bulk actions let merchants perform mass operations on subscriptions straight from the admin panel. Along with recently added filters they’re made to improve merchant UX and decrease time spent on managing subscriptions.
Available actions include: Update status, Swap product, Retry payment, and Reschedule subscription.
Bulk actions are now available to beta testers, and will be unlocked for everyone over the next couple of weeks.
Improvements and fixes
- Added a configurable option to send notification emails with a different From header
- Added an option to set a buffer period for billing policy, regardless of the anchor cutoffs, for more complex delivery and billing policy combinations
- Added Bulk Actions which allow merchants to change products in multiple subscriptions selected on the Subscriptions Table in the Merchant Portal
- Added credit card support to the Mollie provider
- Fixed an issue in which draft orders, including custom line items, had their prices converted from the shop currency to the presentment currency
- Fixed an issue in which InPost Geowidget was not showing for alternative “InPost Paczkomaty” names in the Customer Portal
- Fixed an issue where it was not possible to navigate to the next page on the subscriptions list in the Merchant Portal
- Updated Shopify API to July 24
July 19, 2024
Improvements and fixes
- Added storing current page of the subscriptions table in the browser’s URL in the Merchant Portal
- Added an option to reset pagination in the withCursor utility in the SDK
- Fixed an issue in which subscriptions with a weekly interval and weekday anchor had their next billing date scheduled one week later than expected
- Fixed an issue in which Upsells header had an extra character in polish translation in the Customer Portal
- Fixed an issue in which incorrect value would appear on the Add Upsell Product sidebar in the Customer Portal
- Fixed an issue in which submitting tiered discount creation failed due to internal error on the “Add Tiered Discount” page in the Merchant Portal
- Fixed an issue in which subscriptions failed to load when a filter or sorting is changed while on the second or further page
- Fixed an issue in which mollie webhook was failing to process refund status update
- Fixed an issue in which last order information failed to load for orders including Custom Workflows in the Customer Portal
- Fixed an issue in which subscription contract reconciliation was failing when the product variant or selling plan was not available at the time
- Fixed an issue in which orders containing Curated Boxes with ongoing fulfillment could not be processed
- Fixed an issue in which emails that failed delivery to the recipient because of a previous hard bounce were not marked as bounced
- Fixed an issue in which Subscription Table presented an error when search field query started with a whitespace in the Merchant Portal
- Fixed an issue where the Subscription Table presented an error when a checkbox filter was set and then unset in the Merchant Portal
- Fixed an issue in which changing the Subscriptions Table order in “Ordering” select didn’t update the order when the sorting category was the same but the order direction changed in the Merchant Portal
July 12, 2024
Advanced filtering options
Success in subscriptions depends on many factors, and one of them is smooth day-to-day operations. Ecommerce managers and customer support representatives need easy access and flexibility to manage subscriptions. Any friction they encounter can result in a negative subscriber experience.
This week we’re launching advanced filtering to ensure seamless subscription management. The available filters are: , , , , , , , and . Filters are the first step to allowing merchants to bulk update subscriptions.
You can find the new filtering experience in the Subscription management view.
Improvements and fixes
- Added a “Build a Box” block available for product templates in Online Store 2.0 themes
- Added filters to the subscriptions table in the Merchant Portal
- Added filters and sorting settings to the browser’s URL, allowing for sharing the current view to the subscription table in the Merchant Portal
- Added Slovenian translations to notifications
- Added Slovenian translation of Customer Portal
- Added support for Stripe errors that occur during the payment intent creation
- Added customer name to Przelewy24 order details
- Added refund support to Mollie provider
- Changed the sorting settings to be included in the subscriptions table display settings in the Merchant Portal
- Improved the performance of processing payments with BLIK code from checkout
- Fixed an issue in which future billing and delivery dates were appearing for subscriptions that were neither in a paused nor active state in the Customer Portal
- Fixed an issue in which app-created orders were not being included in the analytics
- Fixed an issue in which the subscription purchase notification might be sent with information prior to the order being processed
July 5, 2024
Improvements and fixes
- Added a new strategy for creating app orders that utilizes the draft order API. This new strategy is enabled by default for new installations; existing installations will continue to use the previous strategy
- Added fulfillment hold for imported orders with delivery anchors
- Added integration with Braintree payment provider
- Added multi-currency support to app-created orders
- Added support for excluded tax calculations
- Fixed an issue in which a discount could not be applied to multiple subscriptions merged into the same renewal in the Recharge endpoint
- Fixed an issue in which a validation error appeared in the “Adjust Shipping Rate” modal when the new rate was set to zero (free shipping) in the Merchant Portal
- Fixed an issue in which card errors were not reported correctly in the Stripe integration
- Fixed an issue in which fulfillment orders were allocated to the incorrect Curated Box step when released early
- Fixed an issue in which the payment method could get overridden by a contract update in Shopify
- Fixed an issue in which Recharge selling plans were not taken into account when adding/swapping products in the Merchant Portal when the Recharge integration is enabled
- Fixed an issue in which requests to the Customer API could not receive their responses in the case of a client error
- Fixed an issue in which the “Subscription Cycle” panel displayed inaccurate billing and delivery information when billing differed from delivery in the Merchant Portal
- Fixed an issue in which the subscription “failed” status was not translated in the Customer Portal
June 28, 2024
Retention Flow: new recovery steps
Over the past few weeks, we’ve focused on enhancing our Retention Flow to make each subscription count. This week, we’re taking it a step further by expanding the range of recovery steps merchants can take when customers are about to cancel.
Previously, to win back subscribers who were about to cancel, merchants could ask for feedback or offer a discount. Now, they can also offer options to Skip, Pause, Renew Now, Swap Product or Change Delivery Frequency.
What’s more, each option can be linked to a specific poll response. For example, if a subscriber wants to cancel because they’re going on vacation, offer them to skip the next delivery. If they’ve run out early, let them order immediately. And if all else fails, a good old discount might do the trick.
All cancellation reasons and the effectiveness of each strategy can be tracked in the Analytics tab, allowing merchants to fine-tune their approach and maximize customer lifetime value.
The new recovery steps are available on all plans and you’ll find them in ‣ .
Improvements and fixes
- Added an option to disable order processing from checkout (first purchase) in Curated Boxes
- Added an option to enable automatic fulfillment of the parent product in Curated Boxes
- Fixed an issue where subscription failed to update when a change resulted in renewal grouping with other existing subscriptions
- Fixed an issue with notifications being sent for one-time prepaid subscriptions
- Corrected product and delivery prices when updating prepaid subscriptions
- Disabled automatic fulfillment of the parent product in Curated Boxes
- Fixed the fixed-amount discount application issue through the Recharge-compatible endpoint
- Added “Change delivery frequency”, “Swap product”, “Skip”, “Renew now”, and “Pause” actions to Retention Flow analytics in the Merchant Portal
- Added “Change delivery frequency”, “Swap product”, “Skip”, “Renew now”, and “Pause” actions to the Cancellation Flow in both the Merchant and Customer Portals
- Fixed an issue where the Checkout block was not displayed on the Shopify Thank You Page and Order Status Page
June 21, 2024
Improvements and fixes
- Added support to set up new recovery steps in the cancellation flows: Skip, Swap product, Change frequency, Pause
- Added tracking for the additional recovery steps in the customer portal
- Added a fallback to the customer’s phone when the order phone is missing, for sending unpaid order notifications
- Adjusted Dutch translation for cancellation discount settings in the Merchant Portal
- Enabled chart filters for Standard plan users on the Analytics page in the Merchant Portal
- Fixed an issue in which subscriptions with day/week anchors were failing to process due to incorrectly calculated next billing dates
- Fixed an issue in which a renewal notification was being sent in the event of a subscription change when the subscription had an active renewal flow
- Fixed an issue where the delivery rate was not selected from the cheaper rates when multiple rates with the same name were available
- Fixed an issue in which adding a new
build-a-box
was not possible in the Merchant Portal due to a validation error
- Fixed a “no data available” issue on the Revenue analytics chart when the comparison period was empty in the Merchant Portal
- Fixed an issue in which prepaid orders were not created for migrated prepaid subscriptions with an “expired” status
June 14, 2024
Each cancelled subscription is a major challenge for every DTC brand. Fortunately, with the right tools and strategy, it can be avoided.
Starting this week, merchants will find a new Retention Flow performance dashboard in the Analytics section. This dashboard provides a detailed breakdown of Recovered and Lost subscriptions — key metrics reflecting the health of the anti-churn strategies. To build up recurring revenue in the long run, optimizing these metrics can be essential.
Additionally, merchants can now analyze the most common cancellation reasons and assess the effectiveness of Recovery steps.
To check the Retention Flow performance dashboard, go to ‣ .
Improvements and fixes
- Added a callout for renewing subscriptions with the BLIK payment method for easier payment finalization in the Customer Portal
- Added a customer email column to Subscriptions export in the Merchant Portal
- Added Retention Flow analytics table to the Analytics page in the Merchant Portal
- Added setting to set fixed renewal hour for subscription contracts in the Merchant Portal
- Fixed retention metrics calculation when the previous retention value was zero in the Merchant Portal
- Fixed an issue in which Customers were not allowed to change selling plan in the Customer Portal if products in the selling plan group have been added as variants
- Fixed an issue in which it was not possible to change the condition of the Curated Box products in the Merchant Portal
- Fixed an issue in which settings were not translated for NL and DE languages in the Customer Portal
- Improved cancellation flow tracking for better performance analytics purposes
- Updated
customerPaymentMethod
to match Shopify payment method ID in the Subscriptions export in the Merchant Portal
June 7, 2024
Upsells in subscriptions
Acquiring new customers is expensive, so maximizing Customer Lifetime Value (CLV) becomes essential for businesses with subscription models. CLV can be enhanced by improving retention, increasing delivery frequency, and boosting the Average Order Value (AOV). Among various strategies to increase AOV, upselling stands out as one of the most popular and effective.
This week, we launched a new feature in Juo to support merchants in increasing CLV — Upsells. This feature allows merchants to create dedicated upsell campaigns for their subscribers. Merchants can select which products to offer as upsells, add exclusive discounts available only to subscribers, and set a time limit on the offer to encourage prompt action. Upsell products will be visible in the customer portal where subscribers can conveniently add them to their upcoming orders.
Upsells are available on all plans. To create an upsell experience, navigate to ‣ .
Improvements and fixes
- Added API-token based authentication to admin API endpoints
- Added cancellation flow tracking to the Customer Portal
- Added Recharge 2021-01 compatible list endpoints
- Fixed an issue in which custom workflow emails could not be sent
- Fixed an issue in which customers’ custom properties might not have been synced to Klaviyo
- Fixed an issue in which email rule was failing to send an email
- Fixed an issue in which endpoints using Shopify API failed when authorized with an API token
- Fixed an issue in which Mollie and Stripe webhooks were rejecting valid requests due to incorrect schema validation
- Fixed an issue in which retention forecast was presenting extreme values
- Fixed an issue in which SEPA Direct Debit charges were failing to reschedule after notification email
- Fixed an issue in which some email were missing subject in activity log
- Fixed an issue in which subscription reconciliation was failing when subscription contract was not present in Shopify
- Fixed an issue in which subscriptions with a free shipping discount could not be reconciled properly
- Improved the retention charts to better reflect the ongoing retention of subscriptions purchased before the analyzed period in the Merchant Portal
May 31, 2024
Email notifications log
Clear and transparent communication with subscribers is crucial for building strong retention. The foundation for this communication are transactional emails sent to subscribers and triggered by various events such as an upcoming renewal, a new order, or a failed payment.
To help merchants stay in sync with the notifications their subscribers receive, we are introducing an additional layer of information to the subscription timeline — the email notifications log. Starting from this week, merchants will be able to see exactly when an email notification was sent and delivered, and whether and when the customer opened the email and clicked the link. Soon, we will also add an option to manually trigger a resend notification. This will allow for more efficient customer support and, as a result, a better subscriber experience.
The email notifications log is part of the Subscription timeline.
Improvements and fixes
- Added a renewal check that prevents the renewal of subscriptions without a delivery method if they contain a product that requires shipping
- Added an option to include products in Curated Boxes for specific customer segments based on customer tags in the Merchant Portal
- Added order ID and order link to the “Subscription Renewed” entry in Activity Log and Subscription Timeline
- Added support for various conditions to the Curated Boxes
- Added the possibility to use discount values with decimals for Subscription Plans in the Merchant Portal
- Changed the behavior of Custom Workflows when the parent product is both removed in the final step and its price is retained for child products. The child products will now sum up to the parent product’s price before its removal
- Fixed an issue in which the “Cancel” button in the custom workflows condition was disabled when the condition was edited in the Merchant Portal
- Fixed an issue in which notification emails were not fully translated when message locale was including a region code
- Fixed an issue in which selling plans appeared in random order in the “Change Delivery Frequency” sidebar in the Customer Portal
- Fixed an issue in which the selected custom workflow’s condition was saved when the condition had no input in the Merchant Portal
- Fixed an issue in which subscription reconciliation was failing due to missing external IDs of lines or discounts
- Fixed an issue in which subscriptions failed to reconcile due to an invalid payment method
May 24, 2024
SEPA-based subscriptions via Stripe
This week, we are taking another step in our quest to provide EU Shopify merchants with the ability to offer subscriptions using local European payment methods, adding new features to our existing SEPA Direct Debit integration.
Until now, we’ve offered SEPA DD only through Mollie. Now, we’re adding another option — integration with Stripe. In the upcoming releases, it will also be enhanced with support for creating new SEPA Direct Debit mandates through Stripe.
If you’d like to learn more about the new feature, feel free to book a product demo or reach out to us via the community.
Improvements and fixes
- Added an option to select an InPost Parcel Locker in the Customer Portal
- Added a Subscription Frequency panel to the Manage Subscription page in the Customer Portal
- Unified panel alignment on the Dashboard in the Merchant Porta
- Fixed an issue where order retention was returning the same value for the first two orders every month
- Fixed an issue where metric history was being returned in a random order
- Fixed an issue where subscriptions with billing anchors could not be automatically rescheduled after purchase due to an overly restrictive safety check. This check was preventing the next billing date from being moved too far back compared to the date received from Shopify
- Fixed an issue where the Revenue and Subscription Retention filtering panels were only partially visible in the Merchant Portal
- Fixed an issue where revenue charts were presenting incorrect values on the Analytics page in the Merchant Portal
- Fixed an issue where product revenue metrics were only returning build-a-box revenue
May 17, 2024
Cohort Retention
Healthy retention metrics are crucial for a subscription business. Regular analysis of retention and churn rates allows merchants to identify areas for improvement and plan effective strategies to improve these key indicators.
This week, we’re introducing the Cohort Retention dashboard in the new Analytics section of Juo. This dashboard offers insights into customer retention performance and trends, allowing merchants to analyze the retention of customers who subscribed in a specific month.
Additionally, starting this week, merchants can find all of the metrics in the new section — Analytics. General metrics have been enriched with the number of Subscription Orders and AOV. Merchants can also view metrics with a breakdown for new subscription orders and recurring ones (renewals).
Improvements and fixes
- Added an option to use a different delivery profile for calculating shipping rates than the one used in checkout
- Added configurable message to shipping discount extension
- Added CurrentCycle field to Klaviyo metrics
- Added Dutch translation to the Customer Portal
- Added setting to apply shipping method to subscription contract from initial order. Shipping option for one time purchases is applied to subscription.
- Added setting to configure how many days before billing date renewal notifications should be sent
- Fixed an issue in which Activity Log entries might not be loaded due to unhandeled payment changed event in the Merchant Portal
- Fixed an issue in which refund response from Przelewy24 was failing validation to zero-length description
- Fixed an issue in which refunds were not processed due to unrecognized transaction gateway name
- Fixed an issue in which subscription intent detection did not work properly for some stores
- Fixed an issue in which the recharge discount with a fixed amount value was not properly distributed among grouped subscriptions
- Fixed an issue in which the refund response was failing validation for the Przelewy24 provider
- Fixed an issue in which the renewal subtotal might not be calculated correctly when updating multiple subscriptions belonging to the same scheduled renewal
May 10, 2024
Improvements and fixes
- Added an option to reactivate failed subscriptions in the Merchant Portal
- Added support for multiple lines of the same product having a custom workflow in a single subscription
- Added payment method information to the renewal orders
- Added a toggle to visually disable Subscription Plan extras in the Merchant Portal
- Improved the behavior of product prices in renewal orders. From now on, the base prices will reflect the base prices of the subscription lines
- Improved activity log performance by additional database indexes
- Fixed an issue in which the billing address was missing in renewal orders
- Fixed an issue in which subscription renewal couldn’t start for merged subscriptions from consecutive days
- Fixed an issue in which the payment status endpoint was returning a ‘paid’ status for unpaid, closed orders
- Fixed an issue in which timeline didn’t present complete subscription history in the Merchant Portal
- Fixed an issue in which an order could not be placed due to a total price difference caused by floating precision
- Fixed an issue in which the calculated order total price differed from the subscription’s subtotal by 0.01 due to a rounding error
- Fixed an issue in which no data message appears when empty (for migrated contracts) in the Merchant Portal
- Fixed an issue in which single word shop names had incorrect shop initials in the Merchant Portal
- Fixed an issue in which Build a Box Products Performance table presented blank row when there were no entries in the Merchant Portal
- Fixed an issue in which timeline didn’t present complete subscription history in the Merchant Portal
- Fixed an issue in which Subscription Attribute could be partially visible when opened with View all button in the Merchant Portal
- Fixed an issue in which some orders were failing to create due to too high discount value precision
- Fixed an issue in which products from the first step were added to orders containing a product with a Custom Workflow for consecutive steps
- Fixed an issue in which Subscription Cycle index on Activity Log and Subscription Timeline reffered to previous subscription cycle in the Merchant Portal
- Removed “Unknown” for product related timeline entries without a product title in the Merchant Portal
May 3, 2024
Subscription Timeline
Customer support teams relies on easy subscription management and detailed subscriber information to be able to quickly help customers with their queries.
This week, we’re launching Subscription Timeline to help customer support representatives provide positive subscriber experience. The Timeline displays all events related to a specific subscription, including changes made by a customer or merchant, as well as automatic actions.
Timeline is available for all merchants. To view it, navigate to ‣ . You’ll find the Timeline at the bottom section.
Improvements and fixes
- Added a Subscription Attributes panel to the Subscription page in the Merchant Portal
- Added an option to export Product Performance data to the Dashboard page in the Merchant Portal
- Added more configuration options to the payment customization function
- Added next shipping information for prepaid subscriptions on the Subscription page in the Merchant Portal
- Added shipping discount function
- Fixed an issue in which “Next Shipping” could display an incorrect date on the Subscription page in the Merchant Portal
- Fixed an issue in which a new renewal wasn’t scheduled after attempting to renew a subscription on the same day as the upcoming billing date.
- Fixed an issue in which it was not possible to update a subscription when one of the products was more expensive than the current base product price
- Fixed an issue in which an order was not created when shipping price was discounted
- Fixed an issue in which a renewal would skip a cycle when renewed on the same day as the anchor
- Fixed an issue in which an order was created with a different shipping method than specified
- Fixed an issue in which it was possible to split subscription lines, leaving free products dangling
April 26, 2024
Build-a-box analytics
Good performance of a subscription offer depends on regular data analysis and continuous iterations. In recent weeks, we’ve enhanced our analytics dashboard and added new layers to help merchants understand and boost the effectiveness of their offers. This week, we’re going further to expand Juo’s analytics and provide more data points for our merchants with Build-a-box analytics.
This new dashboard provides insights on Build-a-box offer performance, including top information like: Revenue, Number of orders and Average order value. These metrics are further divided by purchase type: One-time, Subscription first order, and Subscription recurring. Merchants can also analyze which products are most frequently purchased in the box. Product data points include: Total quantity sold, Average quantity per order, Total recurring revenue, and Total revenue.
The Build-a-box report can be found in the bottom section of the main Dashboard.
Improvements and fixes
- Added a “Show per page” option and table header to Activity Log in the Merchant Portal
- Added All Subscriptions link to the Customer pane on the Subscription page in the Merchant Portal
- Added Dutch language translations to notification emails
- Added firstName replacement to renewal flow notifications
- Added priority processing for webhooks so that critical topics are processed before others
- Changed the products’ performance tables to match the selected date range in the dashboard
- Fixed an issue in which discount limited to specific products was not working with Recharge integration
- Fixed an issue in which Enable Cancellation Poll checkbox was permanently disabled in the Merchant Portal
- Fixed an issue in which line’s custom attributes were not saved in Recharge integration
- Fixed an issue in which orders were created with incorrect total price
- Fixed an issue in which product metrics could be created with incorrect date
- Fixed an issue in which Products Performance table didn’t render properly when there were no products in the Merchant Portal
- Fixed an issue in which subscriptions with billing policies that included a cutoff day were not being processed correctly
- Fixed trend value in build-a-box, subscribers and subscriptions metrics in the Merchant Portal
April 19, 2024
Custom product properties
To make subscription offers more attractive, DTC brands often adjust and personalize products for each subscriber. By giving customers a range of customizations, merchants face the challenge of tracking all those selected options and making fulfillment easy. Additional information can be recorded in the form of custom properties that are saved separately for each subscription and facilitate product selection for each customer.
This week, following requests from our merchants, we added support to define and manage custom product properties in individual subscriptions. This feature allows merchants to collect, view, and edit additional, subscription-specific information about a given SKU and use it to personalize subscriptions. It effectively lets subscribers receive customized products.
Custom properties can be managed in a subscription view by updating a selected product. Information added as a custom property will automatically be added to all upcoming subscription orders.
Improvements and fixes
- Added an option to add a free product to new intentional subscriptions
- Added support for including line items and buttons in the notification emails of the renewal flow
- Added support for organization access token in Mollie integration
- Fixed an issue in which special characters were causing the subscriber/subscription search to fail
- Fixed an issue in which Add Product dropdown content was misaligned on Subscription page in the Merchant Portal
- Fixed an issue in which filtering customers by status caused an error in the Merchant Portal
- Fixed an issue in which loading empty products performance table caused an error in the Merchant Portal
- Fixed an issue in which the product link on the Products Performance table redirected to a non-existent URL in the Merchant Portal
- Fixed an issue in which the days before setting of the subscription billing policy failed to apply after the first purchase
- Fixed an issue where the subscription was failing to be created from the intent due to an incorrect pricing policy
April 12, 2024
Improvements and fixes
- Added subscribers export to the Merchant Portal
- Added an option to add one time products to subscription in the Merchant Portal
- Added support for the German language in the Merchant Portal settings
- Added concurrency to webhook processing
- Changed the subscription delivery price to display the dynamically calculated price on the subscription view in the Merchant Portal when dynamic delivery prices are enabled
- Changed the default behaviour of Shopify for purchased subscriptions with more frequent anchors than intervals. Previously, Shopify was selecting the next available anchor while disregarding the interval. Now, the next billing date will match with the next available anchor after applying the interval.
- Improved the calculation of the next billing date when the original order has scheduled fulfillments. Now, the next billing date will always be after the last scheduled fulfillment, as opposed to the default Shopify behavior.
- Fixed an issue in which incorrect data was presented at ARPU column on the Products Performance table in the Merchant Portal
- Fixed an issue in which the subscriptions list filters didn’t function when sorting or searching by subscription id in the Merchant Portal
- Fixed an issue in which a payment error notification was being sent to the merchant due to an invalid error code assigned by Shopify
April 5, 2024
Product-level analytics
This week, following requests from merchants, we added a new layer of data related to the performance of products sold in subscription.
To optimize the subscription experience, merchants often want to analyze which products are most often subscribed, which have the best retention, and which bring in the most revenue. Also, to ensure product availability for subscribers, merchants plan inventory in accordance with subscription renewals.
Merchants can find the report presenting key product-related information on the main dashboard. The available metrics show which products sell best on subscription, their Average Revenue Per User (ARPU), and the total revenue from the subscription of a particular SKU. And the aforementioned information about the number of subscriptions with a given product renewing in the next 7 and 30 days is also provided. This allows for inventory planning and ensures that subscribers receive their products on time.
Product-level analytics is available for clients on all plans.
Improvements and fixes
- Added a configurable dunning flow period
- Added German translation of the Customer Portal
- Added a breakdown of subscriptions to the subscribers list page in the Merchant Portal
- Added an endpoint with a list of customer’s orders to Recharge integration
- Added an option to embed the Terminal behind the app proxy within the shop domain
- Added customer re-indexing whenever a customer is updated in Shopify
- Added customer tag reconciliation to automatically correct customer tagging issues in Shopify
- Added minor visual improvements to the Terminal
- Updated the subscribers and subscriptions list view visually in the Merchant Portal
- Fixed an issue in which an unwrapped model ID was included in the merchant’s notification about failed payment collection
- Fixed an issue in which ARPU column in Products Performance table wasn’t formatted as price in the Merchant Portal
- Fixed an issue in which it was not possible to remove selling plan in the Merchant Portal
- Fixed an issue in which Line Chart in Dashboard failed to present stats due to negative width value in the Merchant Portal
- Fixed an issue in which subscribers metrics were presented on the Subscriptions page instead of the expected subscriptions metrics in the Merchant Portal
- Removed Top Subscribed Products list from Dashboard in favour of Products Performance table
March 29, 2024
Subscribers analytics and multi-property search
This week, we’ve been working on enhancing analytics by adding new metrics and refreshing charts for better visibility and clarity.
Understanding the metrics behind the subscriber base is crucial for improving retention and growing recurring revenue. From today in Juo, merchants have access to data points at the subscriber level. The information available to merchants includes the number of subscribers divided by status: active, paused, cancelled, expired, failed. Additionally, merchants can see a comparison against the previous period, as well as how the numbers have changed over the last 30 days. The line charts on the subscribers view are powered by our new metric endpoints.
Additionally, multi-property search and filtering options have been added to the subscribers dashboard. Merchants can now easily search for subscribers by: id, email, first name, last name, or phone number.
On top of the additional metrics, the line charts on the dashboard have been refreshed. Merchants can now also compare the previous period for the recurring revenue, retention, and active subscriptions line charts.
Improvements and fixes
- Added analytical events related to product purchases for the purpose of product-based analysis
- Added graceful termination of the http server so that no connections are closed while a new version of the app is released
- Added support for subscriptions created from orders with subscription intents placed through a legacy Shopify checkout
- Added custom attributes to order line items created when a subscription is renewed with an alternative payment method
- Changed the default date range in the dashboard to include a 7-day forecast in the Merchant Portal
- Fixed a race condition in which a Recharge customer was created with a missing phone number
- Fixed an issue where creating a Recharge customer was failing due to a missing payment method
- Fixed an issue in which renewal could not be processed when creating an order after the billing attempt was completed
- Fixed an issue where the Terminal failed to load for completed renewals
- Fixed Workflow email headers and formatting
- Fixed an issue in which customer shipping address update has failed in the Customer Portal
- Fixed an issue in which subscriptions were listed with incorrect next charge dates in the Recharge integration endpoint
- Fixed an issue in which the response validation of the refund status endpoint in Przelewy24 was failing
- Fixed an issue in which a subscription was being attempted to be created from a recurring order
March 22, 2024
New workflow rule: Send email
We are always seeking ways to increase flexibility and improve the efficiency of custom subscription workflows. Therefore, this week we are giving merchants a new powerful feature — the ability to send emails as rules in Cycles.
But that’s not all. The template editing itself has received some UX and QoL improvements. Email messages can be written in plain text or include HTML tags. Additionally, messages can include Liquid variables, tags, or filters which can be used for dynamic content like the customer.first_name
or store.name
. All this with autocomplete to make composing fast and easy.
Emails in workflows are enabled for all users by default and can be set up under Subscription Experiences ‣ Custom Workflows.
Improvements and fixes
- Added an option to disable the “Skip Next Order” functionality in the Customer Portal
- Added phone property when creating Recharge customers
- Added short ID to renewal flows for shorter payment links
- Adjusted “Apply to subscriptions” in tiered discounts settings. Now only items with recurring selling plan are excluded from discounts
- Fixed an issue in which an incorrect delivery price was returned when listing subscriptions with Recharge endpoint
- Fixed an issue in which BLIK aliases were not persisted correctly
- Fixed an issue in which BLIK one-click form was not submitting and reporting errors properly in Terminal
- Fixed an issue in which orders were created without custom attributes
- Fixed an issue in which refund could not be created due to invalid error handling in Przelewy24 integration
- Fixed an issue in which renewal notification flow would trigger when subscription is renewed by a customer action
- Fixed an issue in which selling plan indexes were not being removed properly
- Fixed an issue in which subscribers list was showing outdated results
- Fixed an issue in which subscription could not be cancelled when it was a part of scheduled renewal of multiple subscriptions
- Fixed an issue in which subscriptions created from subscription intents had the subscription plan discount applied twice
- Fixed an issue in which subscriptions with intents were losing selling plan information
- Fixed an issue in which Terminal was returning 401 error when it should return 200
- Fixed an issue that occurred when an attempt was made to create a Recharge account before the subscription was saved in the database
- Fixed an issue where it was not possible to retry a failed billing attempt in the Terminal
- Fixed an issue where only one renewal notification was being sent when multiple notifications should have been sent at once
- Fixed an issue where the dynamic delivery price could not be calculated when the initial delivery method was not the cheapest available delivery method
- Fixed an issue where the subscription plans list was including selling plans with fixed (non-recurring) policies
March 15, 2024
Renewal flows
Over the past few weeks, we’ve been working on new components for subscription renewal flows.
Every subscriber is unique, and the sequences responsible for renewing their subscription orders should reflect and adapt to this. Our building blocks allow for the creation of custom series of renewal actions using preferred communication channels. Merchants can use SMS or emails (DMs coming soon) and schedule custom sending times (specific days or hours), also in relation to the original subscription purchase timestamp. Messaging in the new retention flows can be customized freely and also A/B tested, in order to maximize those flows that yield the best results in retention. This is particularly important for A2A-based, intentional subscriptions.
The new retention flow engine is currently in beta, available for selected merchants.
Improvements and fixes
- Added a configurable renewal notification flow for Alternative Payment Methods (APMs)
- Added support for multiple anchors and delivery cut-off in the subscription plan
- Added a “Pro feature” notification to Selling Plan form which enables users on the Standard plan to peek Prepaid and Fixed Fulfillment configuration in the Merchant Portal
- Changed the behavior of Custom Workflows. From now on, they will add individual SKUs as unfulfilled right away, without waiting for their respective scheduled fulfillments to reach the fulfillment date
- Updated text on the selling plan setup page to a more descriptive in the Merchant Portal
- Fixed an issue in Curated Box setup in which incorrect field value was presented in the “days before” field when buffer period was enabled in the Merchant Portal
- Fixed an issue in the selling plan setup where Product Variants picker failed to delete a recently added product in the Merchant Portal
- Fixed an issue where an error was reported when a background job for an order was promoted, even though it had already been completed
- Fixed an issue in which Build a Box free product was mismatched in the Subscription Theme Extension
- Fixed an issue in which next billing date was not properly calculated for more complex anchors
- Fixed an issue in which partially fulfilled order appeared as last order in the Customer Portal
- Fixed an issue in which products from Curated Boxes were being scheduled in different months than their respective steps’ fulfillment days
- Fixed an issue in which province could not be properly updated on an address
- Fixed an issue in which Recharge endpoints were failing with an internal server error for unauthenticated requests
- Fixed an issue in which the billing dates of migrated subscriptions were affected by the ‘days before’ property of the billing policy
- Fixed an issue in which the notification for required billing action was failing to send
- Fixed an issue on the Subscription Extras Add Free Product. Product select action triggered a validation error on the Cycle Condition field in Merchant Portal
- Fixed an issue where it was not possible to remove all products or free products from Build-a-Box
- Fixed an issue where subscriptions could not be loaded because the province could not be resolved
March 08, 2024
Improvements and fixes
- Added a notification for unpaid orders, sent after a few minutes if the order is not paid
- Added the possibility to choose products not added to the sales channel in the Product Picker in the Merchant Portal
- Added an option to disable the “Add Product to Subscription” action in the Subscription Management settings in the Customer Portal
- Added hidden SKUs from the Custom Workflow boxes to the Subscription Details page in the Merchant Portal
- Added shipping discount support in the Merchant Portal and the Customer Portal
- Added an option to calculate the shipping price dynamically for each order based on its contents. This option is disabled by default and can be enabled upon request
- Added an option to merge multiple subscriptions into one order when renewal dates align on the same day. This option is disabled by default and can be enabled upon request
- Implemented synchronization of customer data following changes in Shopify
- Changed the default timeout for unpaid orders to be paid before they get cancelled from three days to two hours. This timeout is now configurable per shop, upon request
- Fixed an issue where curated box date operations were yielding incorrect days due to daylight saving time
- Fixed an issue where products from the first step were added to orders containing a product with a Custom Workflow for consecutive steps
- Fixed an issue where the incorrect buffer period value was set when it exceeded the fulfillment value in the selling plan setup, in the Merchant Portal
- Fixed an issue where the Curated Box fulfillment badge displayed the start day instead of the time range when fulfillment was set as ongoing in the Merchant Portal
- Fixed an issue where the billing related to the fulfillment day was not properly saved on the subscription and was not considered when calculating the next billing dates
- Fixed an issue where the products table in the Merchant Portal failed to load when one of the products or variants had been removed from Shopify
- Fixed an issue where submitting customer tag settings would reset edited fields in the order tags, and vice versa, in the Merchant Portal
- Fixed an issue in which customers could receive notifications in a different locale than set in their account
- Fixed an issue that prevented the submission of newly created curated box settings when form values remained unchanged in the Merchant Portal
March 01, 2024
Improvements and fixes
- Updated Shopify API to 2024-01
- Added an option to setup prepaid subscription to the Curated Boxes settings in the Merchant Portal
- Added support for prepaid subscription plans to Curated Boxes
- Added an option to hide individual SKUs from customers in Custom Workflows. When this option is checked in the Custom Workflow configuration, subscription view and notifications will not include individual SKUs from the current step
- Added support for scheduled fulfillments to the Custom Workflows. Anchors can now be used when setting up a subscription plan for Custom Workflow products
- Added an endpoint that returns customer’s active Recharge discounts
- Fixed an incorrect default value for the email template headline setting of the subscription renewal notification. This setting has been updated for all shops that have not changed the incorrect value
- Fixed an issue in which “Locked Renewal” tooltip presented incorrect renewal date in the Customer Portal
- Fixed an issue in which a Recharge customer could not be created due to trailing white spaces in customer name fields
- Fixed an issue in which adding new Custom Workflow resulted in redirect to non-existent url in the Merchant Portal
- Fixed an issue in which an order with a pending payment was not getting cancelled after the specified time
- Fixed an issue in which checking if subscription widget and link for managing subscriptions are added to the Shopify theme caused an error in the Merchant Portal
- Fixed an issue in which Integrations tab form in the app settings failed to save changes in the Merchant Portal
- Fixed an issue in which it was possible to apply an expired recharge discount
- Fixed an issue in which orders were processed as ones with subscription intent when the selling plan intent was an empty string
- Fixed an issue in which product variant select had no arrow icon in Product Swap pane in the Customer Portal
- Fixed an issue in which refunds for a 0.0 amount were failing to process
- Fixed an issue in which subscription line reconciliation was failing due to a missing selling plan
- Fixed an issue in which the app usage reconciliation job was failing when the shop had no active billing plan
- Fixed an issue in which the order couldn’t be upgraded to a subscription when there were additional non-local payment transactions on the order
- Fixed an issue where background jobs were terminated with an error after the app was uninstalled
- Fixed an issue where cancelling an unpaid order on time was resulting in an error, even though the action completed correctly
- Fixed an issue where creating multiple subscriptions within one transaction was failing due to a unique constraint
February 23, 2024
This week, apart from launching the first BLIK-based intentional subscriptions implementation (read the announcement), we’re giving merchants a small, but highly requested feature — the ability to edit tags.
Tags are essential tool for identifying, filtering, or segmenting specific orders and customers. They enable managers or data analysts to execute bulk actions on subscription-related entries. Each new subscription order and subscriber is automatically labeled by Juo with customer- and order-related tags. Merchants now have the ability to modify these tag labels to suit their individual needs. Edited tags can always be reset to their default state. Once the tag labels are updated, the changes will automatically be applied to all new orders and customers.
Soon we will give merchants the ability to create custom tags and overwrite labels retrospectively. To edit tag labels, go to ‣ ‣ .
Improvements and fixes
- Added an option to create multiple Curated Boxes in the Merchant Portal
- Added “Visit Docs” link to the “Set Up Curated Boxes” section on the Subscription Experiences page in the Merchant Portal
- Added a parameter to the get settings endpoint that returns the initial values instead of the current ones
- Added an option to set custom tags to orders and customers in the Merchant Portal
- Added a possibility to remove discount in customer portal with Recharge integration
- Fixed an issue where it was not possible to register a BLIK transaction due to a rounding issue
- Fixed an issue where the Pro badge could appear on an unavailable Subscription Experience in the Merchant Portal
- Fixed an issue where the subscription could not be reconciled due to an extra setting on the selling plan
- Fixed an issue where the app menu incorrectly highlighted “Dashboard” when the “Subscription Experience” page was selected in the Merchant Portal
- Fixed an issue where the selling plan index removal job was failing when the index had already been removed
- Fixed an issue in which upgrading order to subscription could conflict with other order attribute changes
- Fixed an issue where the customer redact webhook was processed for non-subscribers
- Fixed an issue where the “Show all orders” link was broken on the Subscription page in the Merchant Portal
- Fixed an issue in which creating Recharge customer was failing on first try
- Fixed an issue in which applying Recharge discount was failing when discount was only applicable to subscription products
- Fixed an issue in which a Recharge discount limited to a collection could not be applied
- Fixed an issue in which Recharge discount limited to collection was being applied to products outside this collection
February 16, 2024
Introducing Curated Boxes
Curated subscriptions have become a popular business strategy for many DTC brands. This trend is widely adopted by those who are willing to offer curated selections tailored to the unique tastes and preferences of their customers. However, navigating the complexities of this strategy in subscription requires a balance between customer personalization and smooth business operations.
Adding Curated Boxes to the box management in the app was specifically requested by store owners whose subscription tactics’ effectiveness depends on accurate stock planning and scheduling billing dates.
The main goal of variable boxes was to enable merchants to build a queue of predefined subscription boxes with different sets of SKUs. Box contents can be based on merchants’ specific subscription tactics and/or adjusted to their stock. Not to mention, this can depend on seasonal promotions or general trends among customers.
Merchants can plan specific fulfillment dates for each customized box. Shipment in Curated Boxes operates in 2 modes: shipment on a specific day (e.g., always on the 10th working day of each month) or, as it works in subscribe-and-save, on the day of subscription purchase (more precisely, the day of creating the Shopify contract).
Similarly, merchants can use one of two ways of scheduling billing: first, based on the date when the subscription contract was created (again, as it works in subscribe-and-save), and second, a variable date related to the shipping date (e.g. a few days before shipping).
Juo users can build and schedule up to 12 boxes in advance, set and edit their names as they like (names are not visible to subscribers), and will soon be able to preview the stock levels for each product both during the editing of the box and after its completion.
Soon, we will add the ability to show subscribers the contents of queued boxes. For now, all curated boxes work as mystery boxes, and their contents are not visible to customers.
To build your first queue of customized boxes, go to ‣ .
Improvements and fixes
- Added an option to hide the subscription widget when the variant is not available in the Shopify theme editor
- Added an option to set up Curated Boxes on the Subscription Experiences page in the Merchant Portal
- Added Curated Boxes support, with products automatically added to scheduled orders and keeping fulfillments in sync with Curated Boxes’ subscription plans
- Added support for refunding orders with transactions processed by alternative payment methods
- Changed the order cancellation behavior when the order is not paid in time to not suppress notifications by default
- Fixed a rounding issue in which the subscription total could differ by 0.01 from the expected amount
- Fixed an issue in which a duplicate order could be placed after a subscription was renewed using an alternative payment method if an error occurred immediately after the order was placed
- Fixed an issue in which an order might not be placed after a subscription was renewed by using an alternative payment method
- Fixed an issue in which payment method webhooks were attempting to synchronize payment methods of customers who are not subscribers
- Fixed an issue in which removing a product from the box was not possible when the subscription frequency had been changed previously in the Merchant Portal
- Fixed an issue in which subscription creation was further delayed after an order with subscription intent was paid with a delay
- Fixed an issue in which the Subscription Extras cycle condition couldn’t be set as “not equal to 1” in the Merchant Portal
- Fixed an issue in which subscription reconciliation jobs were triggered for subscriptions that do not need it
- Fixed an issue in which the retention chart would throw a console error if the chart end date was set to a past date in the Merchant Portal
- Fixed an issue in which the transaction status could be incorrect just before it transitions to the pending confirmation status
February 09, 2024
Improvements and fixes
- Added a visual indication for one-time products in subscription orders to the Merchant Portal
- Added a script to copy order attributes from the initial order with subscription intent to the subscription contract
- Added an integration with Recharge for smoother migration and cooperation purposes
- Fixed an issue in which changing subscription frequency caused an error in the Merchant Portal
- Fixed an issue in which the “Change” button for Delivery method was invisible on mobile devices in the Customer Portal
- Fixed and issue in which the labels in the Build-a-box “Summary” block were not loaded from the block settings
- Fixed an issue in which the discount code was removed one cycle too early from subscription contracts when applied to multiple cycles
- Fixed an issue in which orders with subscription intent failed to convert into subscriptions due to unknown payment method
- Fixed an issue in which BLIK payments failed to initiate for newly registered transactions
- Fixed an issue in which subscriptions were created from orders that were cancelled during payment
- Changed the
renewalLimit
value to better align input and response schemas
February 02, 2024
Converting new customers to subscribers and successfully retaining them are pivotal for most subscription-first merchants. Wanting to build lasting relationships with their subscribers, merchants need to continuously look for new ways to surprise, delight, and retain customers for the long term.
Today, we’re launching Extras to make it possible for merchants to elevate their current subscribers’ experience with additional perks and retain them more effectively. This merchant-requested feature makes it possible to boost the subscribers’ experience by offering additional price drops, free products, or no-cost shipping offered on top of the existing subscription discounts and benefits.
With add-ons, merchants can choose one or more additional benefits and have them added to any subscription cycle or cycles within an existing subscription plan. The extras will then be automatically added to all subscription orders that meet the selection criteria. This gives merchants an effective tool to reward their subscribers in bulk, without having to set up rewards for each subscriber or subscription individually.
Extras are enabled for all Juo merchants by default and can be set up under ‣ ‣ .
Improvements and fixes
- Fixed an issue in which updating one-time products could lead to converting them to recurring products
- Fixed an issue in which some subscriptions were accidentally processed one cycle too early
- Fixed an issue in which the membership tag was verified indefinitely after being assigned correctly to a customer
- Fixed an issue in which changing subscription frequency was not possible in the Customer Portal
- Fixed an issue in which both success and error state messages were shown simultaneously in the Customer Portal
- Fixed an issue in which removing products from subscriptions failed due to orphaned discounts
January 26, 2024
Enhanced Klaviyo integration
To keep their retention rates high, subscription merchants may have to deal with two types of churn: voluntary and involuntary. Voluntary churn happens when subscribers cancel their subscription deliberately and knowingly, while involuntary churn results from issues subscribers are often not aware of, such as lacking funds in their cards, having an expired credit card, or accidentally exceeding their CC limit.
So far, thanks to Juo <> Klaviyo integration, merchants could send targeted communication around key drivers of voluntary churn, such as purchases and upcoming renewals. Today, we’re expanding the existing Klaviyo integration service to also include billing and inventory-related metrics that will help merchants target and reduce involuntary churn specifically.
Starting from today, merchants will be able to inform their subscribers about the status of the payments (payment successful, payment failed, payment requires action), and out of stock items in their subscriptions. While informing, they will also be able to prompt their subscribers to provide input needed to resolve the payment and OOS issues and so, to keep their subscriptions active.
So, when a recurring payment fails because the subscriber’s CC has expired, merchants can now sent an automatic email notification that will inform the subscriber about the CC issue and ask them to update their payment details.
The additional events will send automatically starting from today and will be available for all merchants on the Standard and Pro plans who have enabled Klaviyo integration. The new metrics will start appearing in Klaviyo as soon as a corresponding event occurs for a given subscriber.
Improvements and fixes
- Added new metrics to Klaviyo integration:
Billed Subscription
, Billing Failed Subscription
, Billing Requires Action Subscription
and Product Out Of Stock Subscription
- Added an option to close the onboarding with some steps unfinished
- Added the Spanish language version of the Customer Portal
- Added the missing Polish translations to the Customer Portal
- Improved the look and feel of the product picker in the Merchant Portal
- Fixed an issue in which the lowest tier discount was being applied to a product when “Count all items towards one discount” was unchecked in the Tiered discount settings
- Fixed an issue in which only the currently selected frequency was shown when changing the delivery frequencies in the Customer Portal
- Fixed an issue in which the Subscription Widget failed to display when switching product variants from a variant without selling plans to a variant with selling plans
- Fixed an issue in which it was possible to add a shipping address without filling in the State/Province field for USA and Canada in the Merchant Portal
- Fixed an issue in which the “Learn More” button was misaligned on the Subscription Experiences page in the Merchant Portal
- Fixed an issue in which subscription updates could not be processed after revoking a payment
January 19, 2024
BLIK subscriptions
Customers have high expectations when it comes to making purchases. They want customized payment journeys that keep their data safe, while also being as frictionless and fast as possible. And when it comes to recurring payments, the standards and expectations are even higher. In short, subscribers expect nothing less than perfection.
To stay competitive, any merchant that accepts recurring payments should start with understanding the payment methods that their subscribers prefer. But payment experiences happen in a diverse global landscape that defies one-size-fits-all solutions. These preferences change with each generation. That makes the payment landscape in every market unique.
Now, especially Shopify merchants in Europe have a very limited range of options to offer when it comes to subscription payment methods. For us, as an EU-based startup, it is particularly important to provide ecommerce businesses with PSD3 compliant, A2A, open banking-enabled subscription payments (VRPs in the UK or DRPs in continental Europe).
Today we officially take the first step in that mission by offering an A2A-based subscription payment experience for merchants in Poland, which enables their customers to pay for subscriptions with BLIK — the most popular Polish payment method. BLIK dominates the Polish ecommerce market with almost a 70% share. If you don’t give Polish customers the ability to pay with BLIK, you practically accept a critical decrease in conversion rates and significantly lower customer experience.
BLIK for subscriptions (in Polish: Subskrypcje BLIKIEM) for Shopify is in a limited, invite-only private beta. If you’d like to join, please visit the Juo website and schedule a demo.
Improvements and fixes
- Added an option to apply Tiered discounts separately to each cart line item
- Added a coming soon Curated boxes experience to the Subscription Experiences page in the Merchant Portal
- Added new tags:
new_subscriber
and recurring_subscriber
assigned to eligible customers
- Added a possibility to change default tags applied to customers
- Fixed an issue in which a purchased subscription could not be processed correctly when it contained a product that was recently created
- Fixed an issue in which the Activity log page failed to load in the Merchant Portal
- Fixed an issue in which it was not possible to change payment methods in the Customer Portal
- Fixed an issue in which payment method changes in Shopify were not reflected in the app
- Fixed an issue in which an extra success message was shown when changing the active payment method in the Customer Portal
- Fixed an issue in which a success message was shown for failed payment method change attempts in the Customer Portal
- Fixed an issue in which customer tags might not be updated after subscription status changed
January 12, 2024
Improvements and fixes
- Added a new activity log event for when a subscription is migrated
- Added support for custom email templates on request
- Improved post-purchase and post-renewal subscription processing stability
- Improved background job scheduling for transaction commits
- Fixed an issue in which it was not possible to change a ShopPay or PayPal payment method in the Customer Portal
- Fixed an issue in which it was not possible to change a subscription plan in the Customer Portal
- Fixed an issue in which some subscription purchase notifications did not include Build-a-box discounts
- Fixed an issue in which billing attempt processing failed on the first attempt
- Fixed an issue in which a generic error showed up when a customer account was not detected in the Customer Portal
- Fixed an issue in which it was not possible to add a new product to a box in the Customer Portal
- Fixed an issue in which merchants on the Standard plan were not able to change the email notifications in the Merchant Portal
- Fixed an issue in which incorrect variant names were displayed for product with only one variant
- Fixed an issue in which subscription intent orders could not be turned into subscriptions when 3rd-party selling plans were selected
- Fixed an issue in which subscriptions failed to reindex after removing a product
- Fixed an issue in which new boxes failed to create due to missing parent products in the Merchant Portal
January 5, 2024
New year, new week, new product heights. Today, we announce the launch of the beta version of the Juo Subscription Platform. It’s new, it’s powerful, and it’s free from ecommerce platform constraints.
It’s always been our goal to go beyond Shopify and build a subscription enablement that also works with other popular ecommerce platforms, both globally (like WooCommerce) and locally (like IdoSell). This week, we took a huge step towards making it possible.
Here are some of the high-level concepts behind the change. First of all, our technology should support the concept of what we call intentional subscriptions. This means ultimate flexibility and freedom of choice for both merchants and their customers (subscribers). Secondly, as an EU-based company, we want to fully enable local payment methods, especially A2A recurring for subscriptions (Open banking ready and PSD3 compliant). We started by streamlining our subscription renewal process to support additional payment methods beyond those supported by Shopify, such as BLIK, iDEAL, and SEPA.
And finally, we don’t want to be dependent on Shopify, both tech- and business-wise. We think Shopify is great, but when it comes to subscriptions, it has its limitations. Currently, the majority of our application’s functionality is already independent of Shopify. Ultimately, the Juo Subscriptions app will simply be an integration with the main platform.
All in all, the platform now provides us (and ultimately merchants) with everything that’s needed for the subscription life cycle (new payment methods, subscription renewal improvements, and intentional subscriptions).
On a more granular level, along with the launch of our platform beta, we have made the following process improvements:
- Added new data structures to store information on subscriptions, products, and discounts
- Implemented two-way sync between Juo and Shopify to ensure that the data is always up to date on both platforms
- Enhanced the process of renewing subscriptions to make it more reliable, fast, and flexible
- Added new extension blocks that enable additional payment methods directly on Shopify Checkout
- Added new payment method: BLIK for subscriptions
- Added new payment method: SEPA Direct Debit
- Integrated with Mollie for SEPA Direct Debit
- Integrated with Przelewy24 for BLIK
Improvements and fixes
- Added support for SEPA Direct Debit payment method
- Added a visual feedback that payment is waiting to be processed
- Added an option to create subscriptions without a payment method
- Added extra safety check to prevent more than one active renewal processes at the same time
- Added safety check to renewal process that ensures there are no pending billing attempts
- Improved the performance of “Renew now” action on a subscription
- Fixed an issue in which “Skip” button was not working properly on subscriptions listing page in the Customer Portal
- Fixed an issue in which an expired discount could reappear on a subscription
- Fixed an issue in which no available shipping methods were presented in the Customer Portal
- Fixed an issue in which subscription panel might not be present on a checkout thank you page / order status page
- Fixed an issue in which subscription status could not be updated after processing a billing attempt
- Fixed an issue in which subscription was failing to load due to an archived order in the Customer Portal
- Fixed an issue in which update credit card was not possible in the Customer Portal
December 29, 2023
Improvements and fixes
- Added an empty state to subscription list in the Customer Portal
- Added the “Experiences” page which allows discovery and setup of major app features in the Merchant Portal
December 22, 2023
Redeem discounts in Customer Portal
Merchants selling subscriptions via Juo can apply a variety of incentives to entice and reward their customers: free gifts, loyalty bonuses, progressive discounts, quantity discounts, and since recently — combined discounts.
To keep the appeal of these incentives fresh and make sure that they won’t go unnoticed, we’re now also adding support for one-time, subscription-specific discounts as a way for merchants to boost their subscriber retention, increase LTV, and decrease the likelihood of churn.
Starting from this week, merchants can create and share additional subscription discount codes (for percentage based, fixed amount, free shipping, product and order discounts) with their subscribers and let them redeem the discounts directly in the Customer Portal. Which means, merchants can now use one-time, seasonal discounts to not only attract new customers, but also as a powerful subscriber retention booster.
The additional discount codes will be added one-time on top of the existing, automatic discounts and loyalty benefits that are already applied to subscriptions. They can be activated in ‣ ‣ . Simply check Redeem discount code to enable.
Improvements and fixes
- Added the “Redeem discount code” option to the Customer Portal management settings in the Merchant Portal
- Added the ability to apply a discount using a discount code to an ongoing subscription in the Customer Portal
- Fixed an issue in which some subscriptions could not be indexed properly due to too long notes
- Fixed an issue in which subscription plan name inputs might show different names than the ones in the Merchant Portal
- Fixed an issue in which the minimum billing cycles value was duplicated from an existing plan when editing selling plans in the Merchant Portal
December 15, 2023
Combined discounts
Offering additional discounts is among the most popular and effective conversion tactics merchants can use. Subscribe and save offers, subscription boxes, starter packs, or SKU swaps usually come with extra discounts that help to turn more potential customers into subscribers. Especially in the holiday season, merchants may need to flexibly combine some discounts, while excluding others, to tap their full subscription potential.
This week, we’re adding discount combinations for merchants who’d like to have more control over the incentives they want to offer along with their products. Using Combined discounts, merchants can choose which types of discounts will be stackable for one-time, subscription, and subscription box orders. Meaning, they can simultaneously and automatically apply, e.g. box, product, and shipping discounts to eligible orders, while also giving their customers the ability to enter additional discount codes manually at checkout.
Alternatively, merchants can also choose to not apply certain additional discounts to their subscribe and save and subscription box orders, gaining full control over the savings they want to enable for their subscribers.
Combined discounts are available for all Juo merchants starting from this week and can be set up under Build-a-box and Tiered discounts, respectively.
Improvements and fixes
- Added the possibility to set minimum box item count for free gifts when ordering Build-a-box
- Added an option to combine Build-a-box discount with other discounts
- Added an option to combine the Tiered discount with other discounts
- Added
subscription
tag to all subscription orders
- Added a custom
Detected Subscription Intent
metric sent to Klaviyo when subscription intent has been detected
- Improved the average subscription duration calculation method in the Dashboard
- Fixed an issue in which it was not possible to update Build-a-box subscriptions if there were more than 10 selling plans set up in the Merchant Portal
December 8, 2023
Starter packs
Subscription experiences that convert customers into subscribers start with creating a high perceived value from the very first order. Merchants who want to capitalize on their customers’ subscription intent and turn them into subscribers more effectively are looking for new ways to provide extra perks to their subscribers, especially at the onset of their journey.
Today, we’re adding a new type of workflow that enables merchants to create starter pack / refill subscriptions and turn more of their customers into subscribers with an enticing first order.
Using Starter packs, merchants can set up a sequence of orders that will include a starter pack (containing a special product or set of products), followed by refill (or replenishment) orders, available in subscription. The prices for the Starter pack and refills can either depend on the products that are included or be averaged for the entire subscription.
As opposed to regular Juo’s dynamic boxes with fixed SKUs, Starter packs give customers the ability to manage their subscriptions after the first, welcome order. Meaning, they can swap, remove or add products, adjust order frequency, or reschedule upcoming deliveries as they would with any subscriptions. This allows for more flexibility and helps not only convert, but also retain existing subscribers for longer.
Starter packs are available for all Juo merchants and can be set up under Dynamic boxes. (To create a Starter pack, make sure that “Fulfill parent product automatically” is checked off and the “Continue subscription with products from the final step” is selected).
Improvements and fixes:
- Added a tooltip to padlock that shows fixed fulfillment day for subscriptions and updated its appearance in the Customer Portal
- Improved updating products in subscription boxes to automatically re-apply product discounts in the Merchant Portal
- Fixed an issue in which fixed fulfillment day tooltip displayed incorrect message for weekday fulfillments in the Customer Portal
- Fixed an issue in which it was not possible to change subscription frequency when fixed fulfillment day was set in the Customer Portal
- Fixed an issue in which the
shop/redact
request webhook handler failed due to incorrect input schema
- Fixed an issue in which orders from delayed renewals (due to billing failures or out-of-stock items), had their fulfillment pushed to the next fulfillment window when fixed fulfillment day was set for a subscription plan
- Fixed an issue that caused renewals of migrated subscriptions to fail if subscriptions had failed billing attempts prior to migration
- Fixed an issue in which editing products in a box resulted in duplicated discounts
December 1, 2023
Subscription intent
We believe in the great potential of unlocking subscription intent. Understanding the buying patterns and behaviors of returning customers is key to converting them into loyal subscribers and building sustainable retention. However, to create highly personalized experiences, merchants first need to identify the right customer segments.
So this week we’re introducing subscription intent detection. Juo’s smart algorithm scans the order base to identify and tag customers likely to become subscribers. If a customer has purchased the same (or similar) product multiple times, this feature allows merchants to tag this customer as a potential subscriber and create a specific segment based on the tag. This means, merchants can then launch contextual campaigns, incentivizing these loyal customers to convert their purchases into a subscription.
Also, by creating subscription intent segments in Shopify or Klaviyo, merchants can now send all kinds of highly personalized marketing campaigns. Customer data points available for reference include: average purchase frequency, purchased product SKUs, and product variants.
Subscription intent detection is a PRO feature, but for a limited time, it will be available to all Juo customers.
Merchants can enable it under Settings > Retention and acquisition > Subscription intent.
Improvements and fixes
- Added an option to disable automatic fulfillment of parent products in orders containing Dynamic boxes
- Added an option to remove parent products from Dynamic boxes after a set number of cycles
- Added information about remaining fulfillments for prepaid orders to the Subscription details view in the Customer Portal
- Fixed an issue in which some changes were not being correctly processed due to a background job starting before the database transaction was committed
- Fixed an issue in which it was not possible to remove products from subscriptions in the Customer Portal
- Fixed an issue in which submitting shipping method changes resulted in an error when no option was chosen in the Customer Portal
- Fixed an issue in which the Box product was missing an image in the Subscription details view in the Merchant Portal
- Fixed an issue in which incorrect prices were displayed in the Subscription widget when a product variant was not available for sale
- Fixed an issue in which incorrect selling plans might show up in the Subscription widget when switching between product variants
November 24, 2023
Improvements and fixes
- Added an option to not apply tiered discounts to products sold in subscriptions
- Added order fulfillment date calculation based on
Shipment Week
cart attribute for initial orders in prepaid subscription contracts
- Added a fallback to the default customer address when calculating product prices for subscriptions with no delivery address set
- Switched from item discount to order discount for tiered discounts when not applied to subscription products
- Fixed an issue in which the shop redact request webhook handler failed due to an incorrect input schema
- Fixed an issue in which background jobs were being delayed with errors after uninstalling the app
- Fixed a race condition error that occurred when a new recurring order was being processed by two separate processing jobs at the same time
- Fixed an issue in which it was impossible to replace products from a box subscription in the Customer Portal
- Fixed a race condition error in which saving the Customer Portal theme settings in the Merchant Portal could result in only some of the settings being properly propagated to the theme
November 17, 2023
Moonshot.store take-off
In order to work as effective recurring revenue drivers, subscription experiences need to be tailored to specific stores and specific audiences. Being one of the most feature-rich subscription apps on the market, Juo givers merchants virtually endless possibilities as to the type, range, and complexity of the subscription experiences they can create.
We’re launching Moonshot Store (a.k.a. Juo demo store) to give merchants a better idea of how these different subscription experiences can work and behave when implemented, as well as give them the possibility to test them live on an actual, working store.
Using the Moonshot’s extraterrestrial inventory and setup as a substitute for their own, merchants can navigate between the available products, learn more about subscription offers, and proceed to checkout, having relevant discounts and benefits applied. For example, they can add different products to their cart in subscription, or add products one-time and then subscribe the entire cart. They can create their own subscription boxes, and multi-variant boxes, and see how the Box Booster’s incentives work. Or, they can learn about the Moonshot membership program or Moonshot subscription program through a dedicated landing page.
Apart from live-previewing and testing the features, Moonshot also intends to serve as an inspiration for merchants who are already selling subscriptions or want to launch a subscription program in their stores, providing ideas, examples, and guidance for their own implementation.
Moonshot is now available from the Juo Subscriptions listing page on the Shopify App Store and will be expanded with new experiences in line with new Juo features.
Improvements and fixes
- Added lazy loading to the onboarding video in the Merchant Portal
- Fixed an issue where it was impossible to remove a product with a one-time discount that had expired
- Fixed an issue in which UVPs were not editable in the subscription widget
- Fixed an issue in which it was not possible to select one of the available billing plans in the Merchant Portal
- Fixed an issue where a dialog informing that a feature is not available on the current plan was not dismissed when navigating to another page in the Merchant Portal
- Fixed an issue in which the
/exitiframe
page was not working correctly in the Merchant Portal
November 10, 2023
New pricing including Pro plan
After the official Juo launch on Shopify App Store, new merchants have been able to self-onboard and self-serve under one-fits-all, early adopter pricing. Since then, we’ve started launching limited-access Pro features, aimed at subscription-savvy merchants who want to create advanced subscription experiences, like dynamic product swapping, contextual upsells to subscriptions, or personalized notifications with total flexibility and automation.
Following these new additions, we’re now launching a Pro pricing plan that contains all the recently launched advanced features, as well as additional retention, AOV boosting, and analytics tools, aimed at subscription-first merchants. Launching or upgrading to the Pro plan, they can further optimize and customize their current subscription offering with advanced workflows using personalized SMS notifications, intro and replenishment offers, or conditional, dynamic product swapping.
Alongside the Pro plan, we’re now offering the Standard plan which contains out-of-the-box, customizable subscription widgets and easy-to-set-up subscription enablers that can be launched within minutes without any extra assistance.
The two pricing plans are now available both in the Shopify App Store and in the app, so merchants getting started with Juo or looking to upgrade their current plan, can easily test / preview the available subscription features and switch to a higher plan once their subscription needs grow.
The current plan can be viewed and managed in the Settings tab, under Manage billing plan.
Improvements and fixes
- Added an option to enable/disable Dynamic boxes in the Merchant Portal
- Added a billing plan selection step to the installation flow in the Merchant Portal
- Added an option to manage the billing plan on the settings page in the Merchant Portal
- Added badges to features that are only available on the Pro plan in the Merchant Portal
- Fixed an issue in which out of stock notification email was sometimes not sent
- Fixed an issue in which pausing a subscription didn’t work for contracts with fixed delivery dates
- Fixed an issue in which the billing cycle limit was defaulting to “1” when adding a new selling plan in the Merchant Portal
- Fixed an issue in which the subscriptions breakdown panel on the dashboard displayed zeros due to an invalid date range in the Merchant Portal
November 3, 2023
New feature: Billing cycles limit
Both prepaid subscriptions and subscription gifts can help merchants boost their new subscriber acquisition while significantly reducing CAC, especially in the holiday season.
We’re launching Billing cycles limit to help merchants combine their prepaids, custom boxes, and dynamic boxes with fixed-length subscriptions that will automatically stop after a set number of renewals. This means more effective subscriber acquisition for merchants and better experience for the customers who are looking for giftboxes or time-limited prepaids. Instead of subscribing indefinitely upfront, these customers can now choose to only pay for a number of orders in a subscription they want to give as a gift and have that subscription automatically put on hold after the renewal limit has been reached.
Soon, it will also be able for merchants to let customers reactivate their existing prepaid subscriptions or boxes after they’ve been put on hold, by giving them an option to either prolong the subscription for another period or even subscribe indefinitely.
The feature is available for all merchants by default and can be set up under Subscribe & save > Selling plans > Additional options on both the regular and Pro plans.
Improvements and fixes
- Added next billing date calculation based on
Shipment Week
cart attribute to subscription contracts for the first subscription renewal
- Added notification messages for subscriptions with Billing cycles limit set up in the Customer Portal
- Added Billing cycles limit information to the Subscription details page in the Merchant Portal
- Added the ability to set up Billing cycles limit when creating a subscription plan in the Merchant Portal
- Updated maximum billing cycle setting title and description in the Merchant Portal
- Fixed an issue in which prepaid subscriptions could not be properly renewed if there were prepaid orders pending
- Fixed an issue in which the status of a subscriptions with Billing cycles limit set up was updated one cycle later than it should have been
- Fixed an issue in which the onboarding section was pushing the layout down with a significant delay on the dashboard in the Merchant Portal
- Fixed an issue in which incorrect prices were shown when editing boxes in the Customer Portal
October 27, 2023
Improvements and fixes
- Added support for the
maxCycles
setting for Selling plans
- Added support for Selling plans with the same delivery intervals but different billing intervals, discounts, or minimum required renewals in a single subscription plan
- Added a new widget design to the Subscription widget block
- Added an option to select between different widget designs in the Subscription widget block
- Fixed an issue in which required renewals were incorrectly calculated for migrated subscriptions
- Fixed an issue in which maximum 20 product variants were available when editing Build-a-boxes in the Customer Portal
- Fixed an issue in which an incorrect next renewal date was displayed after an instant renewal was triggered in the Customer Portal
October 20, 2023
Multi-variant box management
Subscription contracts with multiple items, such as custom or curated boxes, may be more difficult for merchants to retain, if not backed up by flexible management. Letting subscribers to create and adjust their existing box orders with ease is known to facilitate both new customer acquisition and current subscriber retention.
With today’s update, we enable multi-variant support for managing custom and curated boxes. This customer-requested feature makes it possible for merchants to provide an even more flexible box building and management experience to their customers on the product page storefront and in the Customer Portal. Thanks to enhanced inventory management support, customers building their custom boxes can now add two or more variants of the same product to the box and receive volume discounts based on the number of variants added.
What is more, customers who have already purchased their custom boxes will now also be able to exchange their content with no obstacles, switching to different products or variants even more flexibly in the Customer Portal. This means not only easy swapping from one variant to another, but also adding and keeping multiple variants in an existing single-variant box.
Multi-variant box management will be available in Juo starting from this week and will be enabled by default for all merchants who offer custom boxes in their stores.
Improvements and fixes
- Added a Checkout UI block containing subscription details to add to the Thank you pages
- Added sorting for Build-a-box tier discounts in the API response
- Added an “Edit” link to the tier discounts list in the Build-a-box settings panel
- Improved the “Add Selling Plan” flow with settings pre-filled from the existing plans in the Merchant Portal
- Improved selling plan interval selection by differentiating between singular and plural values in the Merchant Portal
- Improved copy in the onboarding section in the Merchant Portal
- Improved the initial loading performance of the Merchant Portal
- Removed “Merchant Code” and “Description” fields from the selling plan creation form in the Merchant Portal
- Fixed an issue in which Build-a-box discount was not properly added to subscription contracts
- Fixed an issue in which some index changes were not retained in the database due to race condition in the flushing mechanism
- Fixed an issue in which adding and editing selling plan was blocked when only one plan was added in the Merchant Portal
- Fixed an issue in which the product picker was not working correctly in the Merchant Portal
- Fixed an issue with broken product links in the products table in the Merchant Portal
- Fixed an issue in which the Merchant Portal failed to load for custom apps
- Fixed an issue in which the initial paint of the Merchant Panel was delayed by deferred scripts
October 13, 2023
TYP/OSP extension for subscription orders
Shopify’s Checkout Extensibility will be expanding this month, letting merchants customize Thank you and Order status pages on top of Checkout and Shop Pay with dedicated apps and extensions. For subscription merchants, this presents another opportunity to simplify subscription management for the existing subscribers, increase AOV, and even convert one-time purchases to subscriptions.
Leveraging the Checkout UI Extension and Shopify Functions, we’re now making it possible for merchants to display additional subscription information on their Thank you and Order status pages, post-purchase. All subscription orders will now feature a list of subscription products ordered with their quantities, along with delivery frequencies, billing date, and the next scheduled renewal. On top of that, subscribers will also be able to switch to managing their subscriptions easily from the Thank you and Order status page, using the Manage subscription button in the subscription summary section.
Soon, it will also be possible to display related products and let customers upsell to subscription from the TYP/OSP pages. The additional subscription details and the upsell functionality will be available for both Standard and Plus merchants once Shopify makes the extensions officially available.
Improvements and fixes
- Added an option to add multiple variants of the same product to Build-a-box subscriptions in the Customer Portal
- Added an option to edit multiple variants of the same product to Build-a-box subscriptions in the Customer Portal
- Added notification for the maximum discount threshold when editing Build-a-box subscrptions in the Customer Portal
- Added
change
event trigger for selling plan changes in the subscription widget
- Updated subscription renewal process to no longer interrupt when Klaviyo integration is not setup correctly
- Updated Shopify App Bridge to the CDN version in the Merchant Portal
- Fixed an issue in which exporting subscriptions failed due to incorrect pricing policy validation schema
- Fixed an issue in which some Subscription page translations were not visible in the Customer Portal
October 6, 2023
Juo Docs
Feature-rich subscription apps offer more value and sustainability with a much better initial experience if they’re accompanied by suitable documentation. Merchants who onboard into a new subscription platform are able to use the documentation to set up their subscription offers on the spot, without too extensive external support.
Following the official Juo launch on the Shopify App Store, we’re now launching Juo Docs to encourage new merchants in Juo to self-serve and take full ownership of their subscription setup, from storefront integration, through customizations, to (re-)launching and managing their subscription plans.
The Docs feature a series of how-to guides that make the onboarding process easier for new merchants and ensure they can have their subscription plans set up to their preferences within minutes. Merchants getting started with subscriptions can also reference the guides to better understand what kinds of subscriptions they can offer in their stores with Juo. Or, they can also check out Juo’s subscription glossary and get familiar with subscription-related concepts, their meanings, and practical applications for their stores.
Tech-wise, we built a custom solution which checks all the boxes for us. We use Strapi as a headless CMS for content creation and management, Astro for static rendering of the pages, and Pagefind for static search. As with the app, we like to take care of all the details ourselves.
Soon, the Docs will also include developers’ documentation, including the API, so that more complex / custom integrations and implementations for larger stores can also be handled on the merchants’ side. The Docs will also be expanded to cover the most recent and upcoming features in the app.
Improvements and fixes
- Added server-side rendering to the Merchant Portal
- Added a new documentation link for creating selling plans to the onboarding section in the Merchant Portal
- Added the possibility to choose how shipping rates will be calculated (based on the shipping profile or the current order)
- Added an option to authorize admin API requests with an API token
- Added subscriptions export endpoint to admin API
- Added delay to create
Auth0Client
job schedule to prevent issues when the access token is not ready yet
- Updated documentation links to add a subscription widget and a link to the Customer Portal in the onboarding section
- Changed the way the upcoming recurring revenue metric is calculated to include all scheduled renewals, regardless of the retention rate forecast
- Changed the label on the Dynamic box creation button in the Merchant Portal
- Fixed an issue in which subscriptions with multiple products were incorrectly promoted for renewal when only some of the products were back in stock
- Fixed an issue in which the
orders/create
webhook handler failed due to an incorrect input schema
- Fixed an issue in which rescheduled queue jobs didn’t have the delay property updated correctly
- Fixed an issue in which remaining queue jobs were not handled properly after the app was uninstalled
- Fixed an issue in which some subscriptions renewed prematurely before the grace period of 10 minutes after each update ended
- Fixed an issue in which webhooks for stores that have uninstalled the app were not properly handled
- Fixed an issue in which information about upcoming renewals was visible even though the subscription was not active
September 29, 2023
Improvements and fixes
- Added icons to the Activity log to indicate whether an action was performed by the customer or by the merchant in the Merchant Portal
- Added the
read_all_orders
scope for handling subscription orders migration
- Improved Activity log event formatting in the Merchant Portal
- Simplified the menu actions in the Customer Portal
- Fixed an issue in the Activity log in which next billing date was incorrectly displayed as today in the Merchant Portal
- Fixed an issue in which using calendar to set the next billing date incorrectly showed the next/previous day due to the timezone offset
- Fixed an issue where the “Subscription Updated” notification was displayed along with the subscription update error after a product swap or remove, when no shipping methods were selected in the Customer Portal
- Fixed an issue in which unselecting a day on the calendar when selecting the next billing day resulted in an error in the Customer Portal
- Fixed an issue in which the currency on the draft order value calculation for migrated prepaid subscriptions was not correct
- Fixed an issue in which the job success counter incremented incorrectly, leading to false-positive job failure ratio alerts
- Fixed an issue in which migrated subscription customers were not tagged according to the Shopify product subscriber status
- Fixed the issue in which the “PRO” label was not displaying correctly in the Merchant Portal
September 22, 2023
Activity log
Running a subscription-first business requires merchants to keep track of the ongoing subscription activity in their stores — from new purchases and renewals, through payment and order processing, to changes and reschedules made by subscribers. Juggling multiple subscription contracts and subscriber adjustments calls for a real-time, organized record of all subscription events.
This week, we’re launching Activity log to give merchants full visibility into their subscription usage and billing activity in a separate view, without the need to work across multiple subscription offers and contracts independently.
Using the log, merchants can get a quick, real-time overview of all subscription-related events in their stores, such as purchase, renewal, payment, order reschedule, item change, or any other modification. They can also zoom in on a specific event and find out the exact date and time, the trigger, and all the details of what exactly was modified.
Currently, merchants can use a date filter to narrow down to a specific day or days they want to look at more closely. Soon, they’ll also be able to filter and export log data to find and analyze the behaviors of individual subscribers and the performance of their selling plans as a whole.
Activity log is enabled for all merchants by default. It can be accessed from the app menu or through a link in the Recent activity section on the Dashboard.
Improvements and fixes
- Added a new setting to Box Booster that expands or collapses the widget by default
- Added an option to set fixed fulfillment day for a day of the week in the Merchant Portal
- Added support for storing the last order date for migrated prepaid subscriptions
- Fixed an issue in which Build-a-Box discounts could be added twice to the same subscription contract
September 15, 2023
Adding SMS notifications
Building subscriber loyalty and engagement depends on regular and ongoing communication between the brand and its audience. Merchants who want to develop closer relationships with their existing subscribers, as well as attract new ones, are more likely to prioritize direct and personal communication channels, like text notifications, or social media.
We’re adding SMS notifications as a new communication channel that allows merchants to reach their subscribers directly with more targeted, point-in-time messaging. Using SMS notifications, merchants can schedule their subscription renewal messages to send out automatically to subscribers at key steps in their subscription journey. Sent at the right moment, these messages increase engagement and management ease, especially for loyal, long-term subscribers.
To account for various subscription offers and subscriber audiences, each merchant can flexibly adjust the content of their notifications. They can also use smart Juo shortcodes to dynamically tailor parts of the message, like time to renewal or login link, to individual subscribers. Subscribers following the link will be able to make last-minute changes in their subscriptions conveniently, without switching context.
SMS notifications are currently a PRO feature that is enabled on request. Early adopters and merchants on the PRO pricing plan can request access and set up the notifications under Settings > Notifications > SMS.
Improvements and fixes
- Added a Custom CSS block to Box Booster in the Shopify theme customizer
- Added tooltips to disabled actions in the Customer Portal when Fixed fulfillment day is enabled
- Updated the appearance and purchase type selection behavior in the Subscription widget
- Changed the close button placement when Box Booster is aligned to the left
- Fixed an issue in which the Box Booster widget was not positioned correctly when placed in the right corner of the screen
- Fixed an issue in which some scheduling jobs have taken wrong parameter values
- Fixed an issue in which adding products to subscription showed success state too early in the Customer Portal
September 08, 2023
New feature: Fixed fulfillment day
As subscriptions become more widespread in ecom, so do next-gen subscription models, like boxes or memberships. Unlike basic subscriptions, which can be billed and sent to each customer on the spot, boxes and memberships are more easily managed and provide a better subscriber experience if they’re sent or enabled on a fixed schedule.
Our new feature, Fixed fulfillment, helps merchants streamline their order fulfillment for better inventory and subscriber experience management. Using this new feature, merchants can set up their boxes, memberships, and traditional subscriptions to be billed and fulfilled always on the same day of the month, so they can handle all the shipments simultaneously.
In order to synchronize inventory restocks with shipments, merchants can also add a buffer period before the planned fulfillment day. Orders placed within the buffer period will be rescheduled to a later date. They can also set separate treatment of the first orders in a subscription — and send them as they come, or wait for the next scheduled fulfillment day. These two options ensure they’ll have enough time to always process the order before the planned fulfillment and that their customers won’t double order on their subscription.
Fixed fulfillment can be set individually for each subscription plan, so different frequencies or different types of subscriptions can be scheduled for different days of the month, giving merchants more control over their inventory flow.
To set up Fixed fulfillment, go to Selling plans > Advanced settings > Fixed fulfillment day.
Improvements and fixes
- Added the possibility to change the placement of the Box Booster notification on screen
- Updated the contract’s next billing date calculation based on “Fixed fulfillment day” settings from the Merchant Portal
- Disabled “Renew now” and “Change next order date” options for subscriptions with fixed delivery dates in the Customer Portal
- Fixed an issue in which prepaid orders could be renewed in inactive subscriptions
- Fixed an issue with incorrect price calculations in the Box Booster
- Fixed an issue in which product quantity changes also triggered product variant replacements, affecting the prices in the Merchant and Customer Portals
- Fixed an issue in which a blank page was displayed when opening the Merchant Portal
- Fixed an issue in which it was not possible to add, update, or remove Selling plans in the Merchant Portal
- Fixed an issue in which the “Update product” modal showed incorrect information about the selected variant in the Merchant Portal
September 01, 2023
Improvements and fixes
- Added Activity log for recording subscription events
- Added support for subscriptions to expire after a specific number of renewals
- Added an option to select a new shipping method when the current method was unavailable while updating box products in the Customer Portal
- Changed the order of the submit buttons in the Cancellation discount flow in the Customer Portal
- Updated the Box Booster notification bubble design
- Fixed an issue in which it was not possible to update or swap a product in a subscription due to a button not working properly in the shipping method sidebar
- Fixed an issue in which subscription item with discount could not be deleted from a subscription contract
- Fixed an issue in which the
customers/redact
and customers/data_request
webhook handlers failed due to an incorrect input schema
- Fixed an issue in which it was possible to send a product update or swap request with a 0 quantity, causing a failure in the Customer Portal
- Fixed an issue in which removing a product failed with a bad request error in the Customer Portal
- Fixed an issue in which removing a product was not followed by a success notification and closing of the shipping method sidebar in the Customer Portal
August 25, 2023
Introducing Build-a-box Booster
Subscription boxes have taken ecommerce by storm as a fun and fresh way for customers to pick and subscribe to their favorite products. Variety and convenience, as well as cost savings these boxes provide make them very effective in increasing AOV and LTV for the brands offering them in their stores.
Yet, custom box builders are still a new thing, so they’re not free from some shortcomings for both merchants and customers. E.g., to enable box building, merchants need to use a dedicated “Build your box” page that has to be added to their store theme. This page only allows customers to select from a limited subset of products and are not always discovered in their shopping journey. As a result, there are many customers who might be willing to buy a box, but end up not doing so.
We’re launching Box Booster today as an enhancement for Build-a-box. Box Booster provides an across-inventory, page-independent, convenient way for the customers to build their boxes while they’re browsing the store. Based on the Fogg Behavior Model, it follows the customer on a page and detects when they’ve added a box-eligible product to their order and are close to unlocking an additional incentive. It then displays a storefront-adjusted, clickable notification that prompts the customer to add more products to their current box and unlock an even bigger benefit. Basically, it lowers the effort required to perform the action and serves as a trigger.
Booster uses PerformanceObserver API to listen to cart changes and adjust the incentives to its content in real time. It also works with all Shopify themes, custom carts, or any 3rd party extensions.
Box Booster is enabled by adding a block in the Shopify theme customizer to the pages where merchants want it to appear. Incentive details, tiers, and eligible products can be set up in the Merchant Portal, under Build-a-box.
Improvements and fixes
- Added enriched product descriptions in the Customer Portal
- Enabled price adjustment settings for Dynamic Boxes in the Merchant Portal
- Enabled cycle completion settings for Dynamic Boxes in the Merchant Portal
- Fixed an issue in which the retention chart showed no data in the Merchant Portal
- Fixed an issue in which the Build-a-box discount was incorrectly applied to subscription renewals even when the minimum quantity requirement was not met
- Fixed an issue in which app installation failed to initialize due to Shopify SDK bot detection
August 18, 2023
Improvements and fixes
- Added an option to change the current subscription cycle in the Merchant Portal
- Added an option to reactivate cancelled subscriptions in the Merchant Portal
- Added an option to select the “1st renewal” cohort on the retention chart and summary in the Merchant Portal
- Added tabs to app settings in the Merchant Portal
- Added the ability to reorder the cancellation poll answers in the Merchant Portal
- Changed column order on the subscriptions list view in the Merchant Portal
- Updated the date picker to include predefined date ranges on the dashboard in the Merchant Portal
- Fixed an issue in which dynamic box quantity was not respected when adding products to box orders or subscriptions
- Fixed an issue in which some scheduling jobs for subscription renewals failed instead of finishing when a subscription had already renewed
- Fixed an issue in which some background jobs failed to complete on retry due to mismatched downstream job states
- Fixed an issue in which subscription renewal processing might not have been idempotent when it failed due to incorrect storage of the processing state
August 11, 2023
Customizable retention flow
Letting subscribers churn with no attempts to retain them is a huge missed opportunity for merchants. Not trying to understand why they want to cancel their subscription in the first place is another. With customizable, multipurpose retention flow, merchants can not only retain subscribers more effectively, but also collect valuable information in the process. Not to mention, custom flows with targeted incentives will always lead to higher retention and LTV.
Today, we’re adding new customization features to the retention flow to help merchants combine insight gathering with increased subscriber retention. Thanks to flexible incentive awards and survey logic, merchants can now suggest their own reasons for cancellation and decide which specific incentive should follow each reason. For example, they can offer extra discounts if the price is the main concern, or prompt to stay longer in return for additional feedback.
Soon, merchants will also be able to encourage product swaps with personalized product recommendations or suggest subscription cycle adjustments instead of cancelling. The new retention flow is available under Settings → Cancellation flow in the Merchant Portal — just check “Cancellation poll” to enable.
Improvements and fixes
- Added a secondary step when adding, swapping, or removing subscription items in the Customer Portal, which allows to select a new delivery method when the current method is not available after the changes
- Added the possibility to save cancellation reasons as custom attributes of subscription contracts
- Added “one-time” label to products added to next order only in the Customer Portal
- Added cancellation reason to the subscription details view in the Merchant Portal
- Improved search efficiency and accuracy on the subscriptions list view by adding more searchable fields, rank ordering, and prefix matching
- Updated the subscriptions list to show the newest subscriptions first by default in the Merchant Portal
- Fixed an issue in which the savings value displayed in the Subscription Purchased email didn’t take into account the quantity of purchased items
- Fixed an issue in which quantity was not displayed for subscription items in the Customer Portal
- Fixed an issue in which the Edit button was displayed for cancelled subscription boxes in the Customer Portal
- Fixed an issue in which clicking on a menu button again didn’t close the previously opened menu in the Customer Portal
- Fixed an issue in which minimum cycles notification was not properly displayed in the Customer Portal
- Fixed an issue in which cancellation discount offers were still visible for subscriptions in the Customer Portal, despite the discount already being applied to them
- Fixed an issue in which an error message was displayed on the dashboard in the Merchant portal when there were no subscription contracts yet
- Fixed an issue in which pagination for subscriptions was not working properly when sorting by the next renewal date in the Merchant Portal
- Fixed the loading state of the dashboard metrics in the Merchant Portal
August 4, 2023
Multi-property smart search
Zooming in on a group of subscriptions with selected attributes and isolating individual subscriptions for updates is key to streamlined subscription management and customer support, especially for merchants with larger subscriber volumes. As their subscriber bases continue to grow, merchants can no longer handle subscription management effectively without some degree of automation.
With today’s update, we’re giving merchants the ability to find and update subscriptions based on any of their attributes, such as ID, customer name, or email and adjust these subscriptions to their current needs and strategies. With multi-column smart search, merchants can filter out any subscriptions by status or length to only focus on subscribers who have recently purchased, need to update their payment method, or whose subscription is about to renew — making it possible to edit subscription cycle and content details selectively for subscribers.
Introduction of AI into the ecom space has now opened the door for more robust and targeted subscription management. With AI support, Juo merchants will soon be able to collectively adjust groups of subscriptions with a single change, add, or replace command applied to subscriptions with selected tags, properties, or even products.
Currently, single edits is available for all merchants, with bulk editing to be announced next.
Improvements and fixes
- Added metrics overview to the dashboard in the Merchant Portal
- Added searching, filtering, sorting, and pagination options to the subscriptions list in the Merchant Portal
- Added search and filter query parameters to the subscriptions endpoint for the Merchant Portal
- Updated the look of Subscriptions table in the Merchant Portal
- Updated the look and feel of “Add” & “Swap” product actions in the Customer Portal
- Improved the performance overhead of product and subscription reindex jobs by implementing batch processing
- Fixed an issue where certain steps of a background job that processed subscription orders were not idempotent, resulting in multiple events being sent out
- Fixed an issue in which a job was unable to retry due to an atomic job part being started but not finished successfully
- Fixed an issue in which the subscription renewal job became stuck after renewing, because the subscription was processed by a webhook handler before the job was finished
- Fixed an issue in which it was not possible to adjust the shipping rate of inactive subscriptions in the Merchant Portal
- Fixed an issue where random requests were failing in the Customer Portal due to a malformed signature from Shopify
July 28, 2023
Improvements and fixes
- Added an option to edit boxes in the Customer Portal
- Changed the way discounts are applied when updating products in boxes from coupon codes to manual discounts
- Changed the dashboard to use the shop’s timezone instead of the local timezone in the Merchant Portal
- Changed the subscriptions by status chart type from stacked area to line chart in the Merchant Portal
- Fixed an issue in which subscriptions with multiple out-of-stock items attempted to renew when any one of these items went back in stock
- Fixed an issue in which new subscriptions failed to index due to indexing jobs being triggered too soon
- Fixed an issue in which subscriptions with more than 10 line items could not be displayed in the Merchant and Customer Portals
- Fixed an issue in which the app failed to fetch data when no subscriptions were present in the Merchant Portal
- Fixed an issue in which the subscription forecast by status was based on the totals rather than trends in the Merchant Portal
- Fixed an issue in which the retention summary failed to display, despite there being sufficient data to show the current retention value in the Merchant Portal
- Fixed an issue in which the revenue chart in the Merchant Portal displayed an empty state when there were no purchases or renewals during the selected period
- Fixed an issue with subscription sorting not working correctly
- Fixed an issue with in-app pagination not working correctly
July 21, 2023
Klaviyo integration
Running store-specific workflows, like dynamic boxes or replenishments, merchants also need targeted email flows that can trigger at key moments of subscriber journeys to boost recurring revenue, subscriber loyalty, and further reduce churn.
For targeted customer communication, Klaviyo is a go-to solution and so it was important for merchants to keep their subscriber communication under the same roof. Hence, Klaviyo integration has been the number one request since our official app launch in April.
Today, we introduce Juo + Klaviyo integration to allow merchants set up their own custom email flows in Klaviyo, alongside and fully linked to their subscription workflows in Juo. Thanks to that, merchants can now target subscribers with custom email flows, based on subscription-specific events and attributes, such as the number and type of the products in a subscription, next renewal date, or subscription length.
What’s more, merchants can also combine Juo email templates with their Klaviyo flows to handle payment and inventory-specific cases that would be hard to set up in Klaviyo, such as dunning flows or handling out-of-stock items.
Klaviyo integration will be available for all merchants starting from this week and can be activated with your API key in the app Settings, under Integrations → Klaviyo.
Improvements and fixes
- Added the
write_shipping
scope item to access the Shipping API
- Enabled automated usage fees for all shops by default
- Updated tiered discounts to only apply to products purchased via the Build-a-box page
- Updated migrated subscriptions to display the actual creation date
- Updated subscription list page to use the actual creation date for migrated subscriptions in the Merchant Portal
- Updated the dashboard in the Merchant Portal to use the merchant’s actual timezone instead of UTC
- Updated the visual appearance of the filter button on the dashboard in the Merchant Portal
- Removed variant selector when only one variant was available when adding products in the Customer Portal
- Fixed an issue in which the Dynamic box parent product was not automatically fulfilled when the fulfillment order was already in progress
- Fixed an issue in which changing subscription products failed due to delivery price changes in the currently used delivery method
- Fixed an issue in which social login failed to validate the token upon login to the Customer Portal
- Fixed an issue in which store settings failed to sync during new app version deployment due to an unhandled promise rejection
- Fixed an issue in which changing subscription delivery failed when the new delivery method was carrier-provided
- Fixed an issue in which creation dates of migrated subscriptions were displayed instead of creation dates of original subscriptions
- Fixed an issue in which retention points were in reverse order, causing the retained subscription forecast chart to display more retained subscriptions than actually predicted in the Merchant Portal
- Fixed an issue in which the “Subscriptions by status” chart line was not being stacked properly, causing zero-value lines to overlap with other line on the dashboard in the Merchant Portal
- Fixed an issue in which two data points were present for a single day on the dashboard in the Merchant Portal
- Fixed an issue in which it was possible to retrieve products from a previous order in a subscription that didn’t belong to a given subscriber in the Customer Portal
- Fixed an issue in which it was possible to add a cancellation discount to a subscription that didn’t belong to a given subscriber in the Customer Portal
- Fixed an issue in which removed selling plans were not removed from indexes, leading to extraneous subscription plans being displayed in the Customer Portal
July 14, 2023
Lossless migration CLI
Onboarding new merchants who have offered subscriptions before is much more challenging than installing afresh. Each subscription contract in Shopify is linked to multiple other entities: products, subscribers, payment information, shipping details, subscription orders, etc. In other words, migrating from one platform to another is usually full of edge-cases and nuances.
Failing to migrate any part of the subscription ecosystem can lead to missed future orders, cancellations, or even losing current subscribers over the need to resubscribe or create a new customer account.
By our standards, there’s only one way to do it right: lossless migration. We’ve been working for some time on an auxiliary migration CLI, enabling 100% accurate, seamless migration of not only current, but also historical subscription data.
Currently, Juo makes it possible for merchants, no matter if they use Subscriptions API or not, to switch their subscription solution seamlessly, without losing any subscription contracts, or subscribers in the process.
With this week’s update, not only current but also legacy data, including subscription order history and key subscription events, will be transferred in migrations.
This means, new customers migrating to Juo will maintain their subscription order and data continuity, with Juo as a single source of truth as to how their subscriptions performed before and after migration. Subscribers will also see their past and present subscription information in the Customer Portal for smooth and uninterrupted (no action required) subscription experience.
Improvements and fixes
- Added linear regression to the new subscriptions forecasting to improve the accuracy of revenue, retention, new subscriptions, and retained subscriptions forecasts
- Added currency conversion to display revenue metrics in the shop’s currency
- Added missing chart legends and updated the existing legends visually in the Merchant Portal
- Improved content on the Selling plan management page to make it clearer in the Merchant Portal
- Updated the Forecasted label on the Dashboard page in the Merchant Portal
- Renamed “Selling plans” in the menu to “Subscribe & save” in the Merchant Portal
- Changed the Subscriptions by status chart from a bar chart to a stacked area chart for better readability in the Merchant Portal
- Fixed an issue in which Dynamic box parent products were not auto-fulfilled when they were the first line items in pending orders
- Fixed an issue in which the app usage rates were applied twice to some items when Build-a-box was purchased in production
- Fixed an issue in which the forecasted retention chart in the Merchant Portal did not include forecasted new purchases
- Fixed an issue in which subscription renewal emails were sent with an incorrect next billing date
- Fixed an issue in which the pricing policy was not applied properly when the current subscription cycle was changed by a value higher than one
- Fixed an issue in which migrated subscriptions could not be processed if they were migrated after the zero renewal cycle
- Fixed an issue in which the summary of forecasted retained subscriptions displayed an incorrect value in the Merchant Portal
- Fixed an issue in which subscription chart metrics were not up to date for a day in the Merchant Portal
- Fixed an issue in which the last day of the selected date range was missing from the chart in the Merchant Portal
- Fixed an issue in which active subscriptions summary and retained subscriptions forecast summary did not match the data in the Merchant Portal
- Fixed an issue in which the loading animation was missing on the pagination buttons in the Merchant Portal
- Fixed an issue in which the success message was shown in the toast when a subscription failed to renew in the Customer Portal
- Fixed an issue in which rescheduled jobs were retried after an excessively long delay
- Fixed an issue in which resuming a subscription didn’t properly trigger a renewal job
July 07, 2023
Forecasts
Lately we added Subscription Analytics to help merchants get insight into how their subscriptions have performed to date. Today, we’re adding Forecasts to let them look into the future of their subscription performance and adjust their inventory strategies in advance.
Forecast predictions are based on statistical analysis methods, which factor in variables such as differences in billing cycle lengths, subscriber base growth speed, actual and expected churn rates, as well as subscriber recovery ratio.
Subscription merchants typically combine a couple of revenue streams and distribution channels within a single store, so they need even more careful inventory and budget planning to cater for that. Being able to see how much demand for specific products they can expect, e.g. next month is key to avoid either under- or overstocking and the issues they entail.
Going to Subscription Analytics on the dashboard, merchants will now be able to see how their subscriptions are going to perform up to a month in advance in terms of revenue, retention, and active subscriptions. Using a date range selector, merchants can also narrow this down to a shorter period, like two weeks or a couple of days. They can also use a filter next to the revenue tab to switch between all orders, new subscriptions, or renewals.
And soon merchants will also be able to see similar predictions for other metrics, like their current subscriber retention, number of subscriptions, new subscribers and even the most popular products, leading to more organized and sustainable inventory management.
Adding products to existing subscriptions
Being able to add more items to existing subscriptions is a great way to delight subscribers and let them experiment (not to mention AOV). Up till now, only merchants were able to add products to subscriptions for their subscribers. Customer support-wise, it was far from ideal.
So, with this week’s update, also subscribers will be able to add new products to their existing subscriptions themselves, anytime, in the Customer Portal. To keep the add experience flexible, they will also be able to decide if they want to add a product permanently to their subscriptions, or just add it to the next order to give it a try first.
While adding new products, subscribers will also retain their existing loyalty benefits (like bulk or loyalty discounts), for a more subscription experience. This feature will be available by default for all Juo merchants starting from this week.
Improvements and fixes
- Added the Summary block for the Build-a-box functionality
- Added application usage fee charged weekly to all shops billed based on usage
- Added storage for additional subscription information, like creation date and order history, to facilitate migrations
- Improved the accuracy of the activity log to accommodate more complex data changes within the system
- Fixed an issue in which subscription renewals failed to process correctly when an error occurred between charging and processing
- Fixed an issue in which the subscription timeline links directed to the order list instead of individual orders
- Fixed an issue in which Build-a-box discounts were not applied to subscriptions when there were too many discounts or items added to an order
- Fixed an issue in which Dynamic Boxes failed to process when subscriptions had too many line items
- Fixed an issue in which Dynamic Boxes defaulted to “Repeat the last step” instead of “Repeat the cycle”
- Fixed an issue in which the Dynamic Box parent product failed to auto-fulfill correctly when there were multiple fulfillment orders
- Fixed subscription renewal notification message in the Merchant Portal
- Fixed an issue in which some toast messages used incorrect language version in the Customer Portal
- Fixed an issue where users were unable to set the previous renewal date after it had been modified in the Customer Portal
- Fixed an issue in which the reconciliation job failed despite no issues being detected
- Fixed an issue with extraneous jobs registered for syncing product boxes
- Fixed duplicate “Subscription Renewed” event
June 30, 2023
Improvements and fixes
- Added an option to show more than 6 top products on the Dashboard in the Merchant Portal
- Added automated prioritization of subscription renewal jobs when out-of-stock items become available
- Added daily reconciliation of renewal jobs for all active subscriptions
- Increased delay for subscription renewal attempts when items are out of stock
- Restored information about minimum billing cycles in the Customer Portal
- Set up the reconciliation job to fail instead of complete when there are missing renewal jobs
- Fixed an issue in which outdated billing prevented the Merchant Portal from loading properly
- Fixed an issue in which the retention chart didn’t show new subscriptions when no subscriptions were purchased on a given day
- Fixed an issue in which Last order information couldn’t be fetched after removing products
- Fixed an issue in which recording an activity log entry prevented storing the billing plan for newly installed applications
- Fixed an issue where per-installation settings didn’t work correctly
- Fixed the dunning period deadline calculation to be based on the original renewal date and first billing attempt date
- Fixed an issue in which the “Renew now” action timed out while waiting to process an issued billing attempt
- Fixed an issue in which subscription changes took longer to process when there was a pending renewal
- Fixed an issue in which the Subscription details page failed to load when the minimum billing cycle requirement was met
- Fixed an issue in which
purchased
and renewal
subscription events recorded with incorrect values
- Fixed an issue in which the notification for minimum billing cycles was visible in the Merchant Portal even though the requirement had already been met
- Fixed an issue in which the Edit shipping modal failed to open in the Merchant Portal
- Fixed an issue in which dashboard summaries showed incorrect values when future dates were selected in the Merchant Portal
- Fixed an issue in which some chart bars overlapped with forecasted bars on the Dashboard in the Merchant Portal
- Fixed an issue in which the retention forecast in the Merchant Portal didn’t show the sum of new subscriptions from the previous period
- Fixed the source maps in the Customer Portal
- Fixed an issue in which product swap sidebar didn’t close after swapping products in the Customer Portal
June 23, 2023
Announcing Workflows with Dynamic boxes
Sending one and the same products repeatedly in a subscription is not only limiting for merchants, but also monotonous for subscribers. This is the so-called subscription fatigue, which sooner or later ends up with churn. If merchants want to maintain high retention rates across the subscriber lifecycle, they need to shift toward more personalized and varied subscription experience.
Our biggest announcement so far, Subscription Workflows help merchants transition from generic, one-fits-all subscription offers to dynamic and contextual subscription workflows. Using workflows, merchants can set up and gradually adjust what subscribers get with each subscription order, based on the items they’ve subscribed to, the current number of renewals, and even individual subscribers’ characteristics.
Starting from this week, merchants can set up their own Dynamic boxes. This is also the first stepping stone for Workflows — a new core feature in Juo that will allow to build personalized and adaptive subscription experiences with total flexibility and automation.
Using product purchase as a trigger and applying a set of pre-defined conditions and actions, merchants can use Dynamic boxes to craft unique SKU swapping sequences, build starter kit + replenishment offers, or add free products or extra discounts to subscriptions for increased loyalty and retention.
And applying subscriber tags for segmentation, they can even adjust the content of subscriptions orders based on subscriber segments, so that subscribers with different sets of tags will also receive different products. The entire workflow can be set up and customized in the Dynamic boxes tab in the main menu.
Improvements and fixes
- Added an option to update SKU prices for subscriptions when inventory prices change
- Added a possibility to collapse the Subscriptions option in the Subscription Widget when it’s not selected
- Added an option to associate subscription plans with products on the variant level so that only selected product variants can be added to subscriptions
- Added notification toasts that provide visual feedback for subscriber actions in the Customer Portal
- Added an event to record Build-a-box product orders
- Added
RewriteFrames
to Sentry integration for better error reporting
- Improved queue jobs monitoring to detect stalled or failed background jobs more quickly and with greater confidence
- Updated the subscription table to only show product images if there’s more than one product in the Merchant Portal
- Updated product images visually and added a tooltip with the product title to the subscriptions list in the Merchant Portal
- Fixed an issue in which Dynamic box products in the last order were displayed with discounted prices instead of “Included” labels and were not grouped below the parent products
- Fixed an issue in which the “Subscription Retention” chart did not display new subscriptions in the Merchant Portal
- Fixed an issue in which the subscription value was not captured properly if payment had not yet received payment
- Fixed an issue in which multiple payment requests could be initiated for an app that was not completely installed
- Fixed an issue in which fulfillments of the Dynamic box parent products were displayed as “Shipped” on the Subscription details view in the Customer Portal
- Fixed an issue in which redirects from the public app to the custom app failed due to missing host parameter
- Fixed an issue in which total revenue was using an wrong currency in the Merchant Portal
- Fixed an issue in which selling plans from other apps were sometimes listed in the Subscription Widget
- Fixed an issue in which
load()
failed to return Promise
in the SDK
- Fixed an issue in which failed subscription renewal events were recorded with incorrect IDs
- Fixed an issue in which the renewal message was displayed for new subscriptions in the Customer Portal
- Fixed the issue that resulted in incomplete error reporting in Sentry by updating Sentry to the latest version and using
debug_id
- Fixed an issue in which errors originating in the Customer Portal were not reported in Sentry
- Fixed an issue in which stack frames were incorrectly rewritten before being sent to Sentry
June 16, 2023
Launching: Subscription Analytics
A quick pulse-check of the main subscription metrics may allow merchants to assess if they are at a profit. But to craft a long-term subscription strategy and assess its effectiveness, they will need much more insight than that.
That’s why we’re launching a Subscription Analytics dashboard that enables merchants to go a layer deeper and observe how their subscription KPIs grow over time.
Top-level metrics, like revenue, retention, or number of active subscriptions still give merchants a clear idea of how their subscription offering is faring. But then, they can track the progress day by day, month by month or year by year, either in broad or by focusing on a narrower date range to get a more detailed picture.
They can also zoom in on subscription-oriented metrics, and see how their volume of active and retained subscriptions increases with every subscription cycle. There are a few product-oriented metrics as well to easily check which SKUs are doing the best subscription-wise — and an Activity log for a quick glance into the recent subscription activity. To see these changes, just log in to Juo and open the new Dashboard.
Improvements and fixes
- Added subscriptions count metric checked every hour for analytical purposes
- Added Swap and Remove buttons for subscription items which have been deleted from the store in the Merchant Portal
- Improved layout and element spacing in the Customer Portal
- Updated subscription order to display active subscriptions first in the Customer Portal
- Updated the activity panel on the Dashboard in the Merchant Portal
- Changed Polish label on the Skip button in the Customer Portal
- Changed “Powered by Juo” to “Subscriptions by Juo” in the Customer Portal
- Changed the color of the Play button from black to white on the Dashboard in the Merchant Portal
- Removed Update and Swap buttons for subscription items which have been deleted from the store in the Customer Portal
- Fixed an issue in which Subscription History background didn’t match a selected theme
- Fixed an issue in which the user was not correctly redirected to an error page when entering an invalid or forbidden URL in the Customer Portal
- Fixed an issue with subscription processing that occurred when a subscription was renewed multiple times within the same cycle (for example, a monthly subscription renewed twice in a given month)
- Fixed an issue in which subscription retries were not delayed for a sufficiently long period when a billing attempt failed
- Fixed an issue in which swapping was not possible for items with an empty
pricingPolicy
- Fixed an issue in which failed requests returned HTML instead of JSON when behind the App Proxy
June 09, 2023
Handling out-of-stock items
When the volume of subscription orders rapidly increases, both merchants and their subscribers need more robust ways to handle subscriptions with out-of-stock items.
The merchants can now allow for subscriptions to renew, regardless of whether or not they contain out-of-stock items, or wait until the out-of-stock items are available again. To choose one of the two options, go to Settings → Inventory.
The subscribers are also getting more control over their subscriptions with out-of-stock items. Whenever their subscription fails to renew due to availability issues, they will get an out-of-stock notification email, prompting them to swap or remove the said item(s) from their subscriptions. (To turn on this notification and adjust the content go to Settings → Email templates)
After the swap or removal is confirmed, the subscription will automatically renew. The subscribers will also be able to check if their subscriptions contain out-of-stock items and how this affects their subscription renewals in the Customer Portal.
Improvements and fixes
- Added the possibility to remove items from subscription boxes in the Merchant Portal
- Added the possibility to capture reasons for failed renewals, including removed or out-of-stock items
- Added new email template for subscriptions containing out-of-stock items
- Added information about recent renewals to the subscription view and confirmation dialog in the Customer Portal
- Added information about renewal failure due to removed or out-of-stock items to the Merchant and Customer Portals
- Added a visual indicator for out-of-stock items in the Merchant and Customer Portals
- Added a safety mechanism to prevent customers from accidentally editing their subscriptions twice in the Customer Portal
- Added debug IDs to sourcemap files
- Improved the settings for handling subscriptions with out-of-stock items in the Merchant Portal
- Changed the subscription renewal attempt schedule to match the billing attempt schedule for removed or out-of-stock items
- Changed the timeout duration for subscription renewal from 10 to 20 seconds
- Fixed an issue in which replacing an item in subscription failed due to conflict with billing cycle processing
- Fixed an issue in which unauthorized requests from the Customer Portal resulted in internal server error instead of unauthorized error
- Fixed an issue in which the direct login link redirected back to the login form in the Customer Portal
- Fixed an issue where the “Renew Now” feature was timing out because it was waiting too long for billing status information
June 02, 2023
Introducing variable discounts
New discount features have been on our roadmap for some time now, but requests from merchants made us ship them faster. On top of fixed discounts for subscription orders, we’re now adding a completely new type: variable discounts. This new feature allows merchants to add percent-off discounts that will increase (or decrease) after a given number of subscription cycles. In the MVP version, the merchants can choose the initial and the updated discount and the number of orders before it’s updated.
The discount amount and the interval can both be set up during selling plan creation, under Discounts. For greater control, the enhanced version will also allow to specify how much the discount should increase or decrease with each subscription order (to be launched soon).
Improvements and fixes
- Added billing entries for different transaction types to improve billing granularity
- Added support for multiple pricing policies in subscription plans to
enable discounts based on the number of renewals
- Improved the selling plan creation modal in the Merchant Portal
- Improved the appearance of the Customer Portal settings input forms to match those in the Merchant Portal
- Fixed an issue in which adding new boxes was not possible
- Fixed an issue in which the order refund webhook handler failed due to receiving incorrect input
- Fixed an issue in which tiered discounts were not being applied on renewals
- Fixed an issue which prevented updating a product when a discount was applied to it
- Fixed an issue in which an incorrect title was displayed on the subscription cancellation confirmation modal in the Customer Portal
- Fixed an issue in which some management options were not visible in the Customer Portal
- Fixed an issue in which the languages in parts of the notification emails did not match
- Fixed an issue in which new orders containing more than 10 line items failed to process
- Fixed incorrect subscription contract id formatting which caused errors in Shopify API queries
May 26, 2023
Launching subscriber retention flow
Keeping retention rates high is at the core of any successful subscription brand. The new retention flow in Juo helps delight and retrieve a hesitant subscriber who attempts to cancel their subscription. Merchants can choose how to handle cancellation requests and combat churn by offering a one-time, n-time, or a permanent discount to subscribers, who can then keep their subscriptions with an extra % off. The discount and the message that goes with it can be set up in the Settings tab, under Retention.
New Customer Portal customizations
The subscriber-facing side of Juo got a major revamp and now it adjusts itself automatically to the storefront design. The keep things even more flexible for merchants, we’re giving them full control over the look and feel and the management options available in the Customer Portal.
Following this update, the merchants can further adjust the colors and style of key UI elements (like buttons or inputs). They can also decide which actions should be available to their subscribers, turning on or off product, delivery, and subscription management options in the Customer Portal. To adjust them, go to Subscription settings → Customer Portal.
Improvements and fixes
- Added a safety mechanism to prevent merchants from accidentally editing their subscriptions twice in the Merchant Portal
- Changed the renewal job timeout for editing subscriptions in the Merchant Portal from 60 to 10 seconds
- Added a date picker to delivery date settings in the Merchant and Customer Portals
- Updated key management actions to display on modals in the Customer Portal
- Added visual improvements to the subscription details page in the Customer Portal
- Added visual improvements to the subscription list page in the Customer Portal
- Migrated the settings storage from Shopify Metafield to an internal database
- Fixed an issue in which the loading animation didn’t appear during variant editing in the Customer Portal
- Fixed an issue in which the total price for the subscription order was not calculated correctly in transactional emails sent to subscribers
- Fixed an issue in which changing the subscription cycle failed because the renewal date was in the past in the Merchant and Customer Portals
- Fixed an issue in which the merchant was not redirected to the Tiered discount editing page after adding a new discount in the Merchant Portal
- Fixed an issue in which the subscription management requests were completed before the renewal jobs were properly registered for subscriptions
- Fixed an issue in which product indexes were not being removed when removing products from Shopify
May 19, 2023
Revamping the Customer Portal
The number of subscribers who manage their subscriptions in Juo has grown a lot in the past few weeks. How they can do it impacts the subscriber experience directly, so the quality here cannot be compromised. That’s why we’re introducing a sleeker, mobile-first Customer Portal, which makes subscription management more streamlined and more intuitive than ever.
This brand new design is also brand compliant, which means the merchants don’t have to worry about matching the look and feel to their storefronts. The color scheme and fonts will just adjust to their current themes automatically.
More management options in the Merchant Portal
We’re pushing further with the new additions to the Merchant Portal that add another layer of information around the payments and dunning. Now, merchants will always be able to see if and when the payment went through thanks to handy statuses that display right under the payment method in the subscription details view. If it didn’t go through, they will also see the date of the next retry and current retry attempts. The next step? More flexibility and control over the dunning flow.
With the new update, the merchants can also generate a link to the Customer Portal log into it as any of their subscribers. Thanks to that, they can not only preview what their subscribers are seeing when they log in, but also will be able to help them with some more advanced settings or requests.
Improvements and fixes
- Added a 10-minute delay before renewing a subscription after any changes are made to avoid duplicate renewals due to mistakes
- Added a waiting period for payment processing to finish before refreshing the subscription view in the Merchant and Customer Portal
- Added an option to redirect from the public app to the custom app when both are installed in the store
- Added unavailable products to the available-products request response from the Merchant Portal
- Changed last delivery section visibility in the Customer Portal, it’s visible now when products from the subscription are different than in the last order
- Changed the isolation method from iframe to web component in the Customer Portal
- Fixed an issue in which the “free shipping” label was showing the price instead on the subscriptions list page in the Customer Portal
- Fixed an issue in which the scroll position remained the same when moving to a different page in the Customer Portal
- Fixed an issue in which the subscription payment status label was displaying the subscription status instead
- Fixed the issue in which the currency format was displayed incorrectly for certain locale and currency pairs in the Merchant and Customer Portals
- Fixed the reset CSS in the Customer Portal
- Fixed input type for base_fee and transaction_fee in the database
May 12, 2023
Improvements and fixes
- Added “Edit / View subscription” buttons to post-purchase email notifications
- Added an option to update the product variant and quantity on the Subscription details view in the Merchant Portal
- Added usage-based charging in the app to enable transaction fee payments
- Fixed an issue in which the user was able to change the shipping country in an existing subscription in the Merchant and Customer Portals
- Fixed an issue in which box items were not grouped properly in the ‘Last delivery’ section in the Customer Portal
- Fixed an issue in which an additional scrollbar appeared in the Customer Portal
May 05, 2023
Merchant Portal redesign
We’re going live with a new Merchant Portal design: more polished, more modern, and bringing all the key subscription information to the fore. The product list is not at the top, right where the merchants need it for straightforward product and discount management. The shipping method and subscription cycle information are laid out in separate boxes under the products to make tracking and editing less of a fuss.
The merchants will now also find the subscription cost and total lifetime value right under the subscription ID — so they’re always in the know about how well individual subscriptions fare in terms of LTV. To see all these new additions, just navigate to the Subscriptions tab and open any selected subscription.
Improvements and fixes
- Added a mode (disabled by default) to embed the Customer Portal without an iframe, and a modern CSS reset for better theme integration
- Added an option to update the delivery price in the Merchant Portal
- Added GTM integration
- Added the Last delivery panel to the subscription view in the Customer Portal
- Fixed an issue in which Total value was incorrect on the subscription view in the Merchant Portal
- Fixed an issue in which the UVP section in the Juo Subscription Widget was unstyled
- Fixed an issue where adding variants to Build-a-box was failing because of a missing product relation
- Unified the app metafield namespace
April 28, 2023
Custom selling plans and notes
We’re adding more flexibility to manage existing subscriptions this week. Merchants can now set custom selling plans with individualized delivery intervals for each subscriber.
Also, merchants can now add notes to each subscription, e.g. special customer request or important information to remember about. Anything that matters to improve subscriber experience. Notes will be automatically added to all subsequent orders.
Improvements and fixes
- Added an API endpoint to create a custom delivery price in a subscription contract
- Added customer panel to the subscription view in the Merchant Portal
- Fixed an issue in which the “Build a box” button for adding a new box was only visible when there were no boxes added
- Fixed an issue where the customer’s phone number was missing and non-editable in both the Merchant Portal and the Customer Portal
- Fixed an issue where subscription details could not be viewed if there were more than 5 line items
- Fixed an issue in which it was not possible to add a discount for a selected subscription line item in the Merchant Portal
- Fixed an issue in which the “Retry now” link for billing attempts was not visible after a failed payment in the Merchant Portal
- Fixed labels for the Billing & Delivery column on the Subscriptions list in the Merchant Portal
April 21, 2023
Public app status
Today, we’re excited to announce that after an unsurprisingly smooth review, Juo has become a public app on the Shopify App Store. Still in beta, still working in stealth with selected merchants, hence still temporarily unlisted, but officially public. The new status will allow us to ship new platform features faster and in a much more convenient way for merchants.
New discounts options for merchants
Treating each subscriber individually is key to retention. With Juo’s new functionality merchants can now add discounts at the subscription level. Discounts can be applied once, several times, or permanently for a given subscription or particular products in it. This option can also be used to grant subscribers a free product—simply add a product to the subscription with a 100% discount.
Improvements and fixes
- Added information to the Theme Customization mode to notify merchants when the Subscription Widget is added to a product that has no selling plans available
- Added the possibility to set different scopes for different custom apps
- Added locale detection based on the currently selected locale in the Shopify store
- Added a new, more informative header panel to subscription view in the Merchant Portal
- Added new endpoints for products and variants in the Merchant Portal
- Added scopes re-authorization only when needed. The app will not require re-authorization for new optional scopes unless it is required
- Changed Revenue data point to display revenue from the last 30 days in the Merchant Portal
- Fixed an issue in which the Juo Subscription Widget style reset was not loaded properly
- Fixed an issue in which the loading state was not working correctly before loading started
- Fixed an issue in which the modal close button did not work in the Merchant Portal
- Fixed an issue in which requests were unauthorized when read scope was required and the app had already been granted write access
- Fixed an issue where discounts that had reached their usage count were still visible in the subscription view of the Merchant Portal
April 14, 2023
Improvements and fixes
- Added a “Manage subscription” block linking to the Customer Portal to add to your theme
- Fixed an issue in which the available product variants were shown with incorrect prices when updating the products in the Customer Portal
- Fixed an issue in which some requests could fail due to Shopify API throttling, caused be the extensive cost of some queries
- Fixed an issue in which the error toast was shown when the app required re-authorization
- Fixed the response code when invalid JWT token was used to authorize a request
- Fixed an issue in which the app install could go into a charge request loop
- Fixed a flash of unstyled content before the skeleton loader
April 7, 2023
Managing multi-subscription customers
For larger stores with multiple subscription orders, tracing these orders back to individual subscribers can be a real hurdle. We’re now making it easier for merchants to get an overview and manage their multi-subscription customers under the new “Subscribers” tab. The tab contains a list of all subscribers, along with the number of active subscriptions they have, and their current status.
The merchants can also display and update additional deets about each subscriber (like shipping and payment information or their current order info), by clicking the “Manage” link next to each subscriber’s name. To keep these things accessible, the new tab sits right under Dashboard in Juo.
Improvements and fixes
- Added an option to add products to subscriptions in the Merchant Portal
- Enabled billing for the public app
- Switched to Shopify product picker when changing subscription products in the Merchant Portal
- Changed the error response to unauthorized response when the API request didn’t contain the shop parameter
- Fixed an issue in which adding products to a box was not working correctly
- Fixed an issue in which a product kept the previous quantity after editing in the Customer Portal
- Fixed an issue in which the product price could change after the quantity change
- Fixed an issue in which product swapping didn’t work for products with different selling plans
- Fixed an issue in which product swapping failed to work
- Fixed an issue in which the subscription widget threw a console error if no discount was applied in the selling plan
- Fixed an issue in which opening a link in a new window/tab didn’t work in the Merchant Portal
- Fixed an issue in which stock items were not indexed immediately after the app installation
- Fixed an issue in which per application settings were being merged together
- Fixed an issue in which JSON was shown instead of an error page in the Merchant Portal
March 31, 2023
Onboarding flow for new merchants
We focused more on self-service this week with the new onboarding flow that the merchants can follow to get started with subscriptions without dev assistance. The onboarding flow covers 3 steps that every merchant needs to perform to create a working subscription offer: (1) creating a selling plan, (2) installing the subscription widget on their product page, and (3) adding a link to Manage subscriptions to their login screen.
More tricky steps (2) and (3) are covered in Help articles that are linked under the respective onboarding sections, so if anyone gets stuck, they can watch a how-to video or follow a step-by-step guide to get back on track. Note that the merchants who are already actively selling subscriptions (and so have performed these steps) will not see the onboarding. New merchants will find it on the Dashboard.
Improvements and fixes
- Added more data points (paused and cancelled subscriptions, revenue) to the Dashboard in the Merchant Portal
- Added an option to edit the subscription plan in the Merchant Portal
- Added “eligibility for subscriptions” information in the Merchant Portal
- Added per-application settings for the Merchant Portal
- Added an option to change the product variant in the Customer Portal
- Added an option to swap box items in the Customer Portal
- Added selling plan names to the alternative plan selection step in the Customer Portal
- Added error pages to the Merchant and Customer Portals
- Added
Content-Security-Policy
header to the Merchant and Customer Portals
- Added check if the link to the Customer Portal has been added to login.liquid file
- Added support for local delivery and pickup delivery when changing products in subscription
- Added automatic tagging for box orders (
products_box
tag)
- Added visual feedback after pressing a button on the shipping modal
- Added an alternative database storage for store settings
- Added an option to set a default error handler and override it per resource to the SDK
- Added
subscriptions.juo.app
domain
- Changed app url to
https://subscriptions.juo.app
- Changed the selling plan group API routes to always use the plural form
- Fixed a false-positive error being reported when a running background job is rescheduled
- Fixed an issue in which displaying Revenue caused an error when there was no revenue provided
March 24, 2023
New ways to adjust products in subscription
This week we’re adding more flexibility and ease to how merchants and subscribers can manage their active subscriptions. With this update, both groups can easily change the number of products in subscription with just one click and the remove and swap functionalities for the subscribed products are now easily accessible from the subscription details view in the Customer and Merchant Portals.
The swap functionality got a major upgrade, too — and now uses product suggestions on top of the classic search. Whenever the merchant or subscriber wants to swap a product, different variants of this product are being suggested to make the replacement easier. The product tiles under swap now also show more information about the product variant, quantity and price, so there’s no doubts about what’s being changed for what and how this affects the price.
More flexible handling out-of-stock items
So far, subscriptions would only automatically renew if they contained no out-of-stock items. For out-of-stock items, renewals attempts were made for 3 months, followed with a cancellation. Now, the merchants who experience frequent stock fluctuations can decide if they want to let subscriptions with out-of-stock items renew automatically, or not. To enable this feature, just check “Renew when products out of stock” under Settings. Once it’s active, the subscriptions containing out-of-stock items will be renewed and charged according to the billing plan, and then processed and shipped by the merchants independently as the missing items become available again.
Improvements and fixes
- Added eligibility for subscriptions information in the Merchant Portal
- Added empty states on the Dashboard in the Merchant Portal
- Added support for product edits to migrated subscriptions
- Added an endpoint for subscription line removal
- Added auto-create auth0 client after the Shopify app is installed
- Added handling for mandatory GDPR webhooks
- Added app installation event tracking
- Improved the subscription widget appearance for very small devices and narrow column layouts
- Improved currency formatting in the subscription widget
- Reordered navigation links and changed “Manage” to “Selling plans” in the Merchant Portal
- Fixed an issue in which merchants were able to pick occupied delivery intervals when creating selling plans
- Fixed an issue in which changing delivery interval triggered a validation error
- Fixed issues that prevented installation when entity-level activity log was enabled
- Fixed an issue that occurred when a migrated subscription was coming with an origin order id set
- Fixed the params format in the Subscription Renewed event
- Fixed date formatting issue in the renewal email affecting renewals scheduled for the next day
- Fixed an error that occurred when editing a subscription due to incorrect rounding of a discount amount
- Fixed an issue in which available products endpoint was showing products that had no available variants
- Fixed an issue in which spacebar didn’t work in the product search in the Merchant Portal
- Fixed an issue in which “0 more” was shown for subscriptions with just one item in the Merchant Portal
- Fixed an issue in which fake data was displayed instead of the skeleton loading in the Merchant Portal
- Fixed an issue in which fake data flashed on screen before the skeleton loader kicked in
March 17, 2023
Improvements and fixes
- Added user activity tracking log
- Added subscription purchase and renew events to the activity log
- Added variant names to the product list on the Subscriptions page in the Customer Portal
- Added tooltip and savings editing for cart subscriptions in the Shopify theme editor
- Removed the recent activity placeholder from the Merchant Portal
- Fixed an error with loading the subscriptions list
- Fixed an issue in which the product image got squeezed up when the product name was too long
- Fixed savings calculation for cart subscriptions
- Fixed an issue in which the purchase event failed to record due to an incorrect context state
March 10, 2023
To make the subscription experience seamlessly integrate with the merchants’ storefront, we’re adding more customization options to the subscriptions widget. Some examples: background and text color, font weights, purchase option labels, and even the USP messaging. In order to start customizing, simply go to the Shopify theme editor and add the new widget to the product page.
On top of that, the widget now loads up and operates much quicker, so it’s always there when the subscribers need it!
Improvements and fixes
- Added an option to change products in subscription in the Merchant Portal
- Added visual feedback to buttons performing a long running action
- Added close buttons to modals
- Added an event to track a successful subscription renewal
- Added user information to the Sentry error tracking in the Customer Portal
- Added client-side error validation to the selling plan creation flow
- Added async context store for all internal backend components
- Fixed the search functionality for product swaps (case insensitive)
- Fixed an issue in which modals haven’t been visible on some mobile devices in Customer Portal
- Fixed an issue in which subscription product quantity update was blocked when the quantity was higher than 1
- Fixed an issue in which the price formatting threw an error on load
- Fixed the links to admin resources that were not working correctly
- Fixed an issue in which an incorrect error message was displayed when billing and delivery frequencies were mismatched
March 3, 2023
New: Cart subscriptions
We’ve got something cool for merchants looking to boost LTV this week. Cart subscriptions make it super simple for customers to buy all their cart items at the same time in subscription.
To activate this feature, simply add the Subscribe Cart widget next to, under, or above the Checkout button to the Cart page template. Once active, customers will see a “Turn into subscription” checkbox and will be able to turn their cart content into a recurring order. And now they’re no longer customers, they’re subscribers.
Improvements and fixes
- Added information about applied discounts to the Subscriptions view
- Fixed an issue in which shipping calculations for subscriptions were using regular prices instead of discounted ones
- Improved the look and feel of the subscriptions list in the Customer Portal
- Added information about applied discounts to the Subscriptions view
- Added a generic error message toast following failed API requests in the Customer Portal
- Fixed an issue in which Subscription UI extension form stopped working at all
February 24, 2023
Local delivery and pickup for subscriptions
Flexible shipping options can make or break a subscription, so we’re tackling some of the delivery challenges this week, by making local pickup and local delivery functions available for subscriptions.
Thanks to local pickup, merchants can define additional, local pickup points, where subscribers can pick up their subscription orders quicker and more conveniently. With local delivery, merchants can also specify the entire areas to which they deliver, based on a distance from their location or on area codes. Both can be set up in Shopify settings and will now also work for subscriptions.
Subscribers can edit shipping methods
In the spirit of making Subscribers’ lives easier, we’re now giving them the possibility to modify their current subscription delivery method. If your Subscriber wants to change their pickup point or go from, say, InPost to DHL, they can easily do so via the Customer portal (provided that both options are available, of course). That’s more freedom for them, less hassle for you.
Improvements and fixes
- New discount type: Free product (Shopify Plus only)
- Added subscription contract update to include automatic discounts
- Added support for Free product discounts to Tiered discounts
- Added support for dedicated Shopify Function IDs map per custom app
- Fixed minimum billing cycles count confirmation modal
- Fixed an issue with products not being properly added to a box
- Disabled the possibility to edit subscription items in a box
- Added endpoint with available shipping methods to subscription contracts
- Added endpoint that updates subscription shipping method
- Added subscription line grouping by parent products
- Updated product and discount metafields to match new Tiered discounts and Free product automatic discounts
- Added additional metafield values for Build-a-box discounts
- Added
parentProductId
field to subscription line
- Added
/products/by-ids
customer endpoint that retrieves products by ids
- Stopped retaining completed indexing job runs
February 17, 2023
Post-cancellation flow
We’ve been working on the post-cancellation email flow this past week, improving the subscribers’ experience and putting the merchants more in control. Now, when a subscriber chooses to cancel their subscription, they will automatically receive a confirmation email. When it’s the merchant who cancels, they can choose to either send the confirmation email to the subscriber, or not. The update is available for all merchants automatically, but you can adjust the email behavior in Settings.
Improvements and fixes
- Customer Portal loads faster thanks to pre-loaded iframe components
- Fixed an issue with subscriptions renewing despite containing discontinued products
- New logo featured in the Merchant Portal
- Added error handlers to
IORedis
and Queue
- Added
Product
upsert for OneToMany
/ OneToOne
relations
- Updated
ioredis
to 5.3.1
in an attempt to fix the stalled worker issues
- Fixed an issue in which new line characters didn’t render properly in email settings
- Fixed an issue in which a selling plan failed to create when billing options were not additionally specified
- Fixed an issue in with the login form on some browsers due to missing
crypto.randomUUID()
implementation
- Fixed an issue in which the Customer Portal frame wasn’t resizing properly in browsers that don’t implement
ResizeObserver.contentBoxSize
- Fixed an issue in which the churn stat was showing NaN% when there were no subscriptions
February 10, 2023
New subscriber login view
The Customer Portal login screen got a slight design revamp. Thanks to the latest adjustments, it looks more subtle and is more compliant with the store branding, even without any additional customizations.
More detailed membership listing
For merchants who like a quick overview of how their subscriptions perform, the listing view for Memberships now features a few extra deets to help them stay on top of everything:
- Membership: Shows membership status (Active, Inactive, Expired)
- Subscription (Former Status): Shows subscription status
- Expires on: Shows membership expiration (end) date
Improvements and fixes
- Fixed Memberships not appearing on orders list due to the Shopify query error
- Minor UI improvements to Tiered discounts in the app
- Improved the stability of the product picker for various edge-cases, now it works correctly in all corner-cases
February 3, 2023
Improvements and fixes
- Subscribers can check shipping costs in the Customer Portal
- Next payment date is no longer shown for inactive subscriptions
- Increased latency period on “Renew now” button to prevent accidental renewals
- Fixed the browser’s back / forward buttons behaviour in the Merchant Portal
January 27, 2023
Minimum required renewals
To prevent subscribers from cancelling their subscriptions too quickly, merchants can set up a minimum number of renewals to take place before a subscription can be modified. So, subscribers and merchants will only be able to cancel, pause, or skip a subscription after it has been renewed at least so many times.
Improvements and fixes
- Added charge retry date to the Customer and Merchant Portals
- Added remove Tiered discounts functionality
- Improved the UI for Tiered discounts
January 20, 2023
New logo is here!
Over the past weeks our design team has been working on the new brand and… Many brainstorms, discussions, and design reviews later, we finally have a logo that captures the feeling and essence of Juo. To the Moon!
Improvements and fixes
- Memberships can now be cancelled and refunded
- New details available in the Merchant Portal: membership status and expiration date
- Fixed widget selector issue when dropdown was activated
January 13, 2023
Better subscription management for merchants
Merchant Portal got a massive update to help merchants search and navigate their subscriptions with ease. Subscription list view now shows more deets and customer info is available right from the Merchant Portal.
Improvements and fixes
- Added a link to customer details page in Merchant Portal
- Added possibility to retry charge attempt to Customer and Merchant Portal
- Fixed an issue with adding and editing products in Tiered discounts
- Fixed an issue with next billing attempt date not updating after a failed attempt
- It’s now possible to add multiple Tiered discounts with the same name
January 6, 2023
New in: Tiered discounts
With Tiered discounts, merchants can offer discounts based on the number of products currently in cart. The more products the customers buy, the bigger discount they will receive.
Improvements and fixes
- Merchants can’t accidentally select different frequencies for shipping and billing within one subscription
- Fixed delivery frequency format
December 30, 2022
Customizable email notifications
To make subscriber communication on-brand, merchants can edit the content and visuals in email notifications. Merchants can choose between Polish and English language versions and adjust either of them to their needs.
Depending on their subscription flow, merchants can also turn on or off individual notifications for subscriptions, renewals, cancellations, and payments.
Improvements and fixes
- Subscriptions will not renew when some products are currently not in stock
- Accurate page titles will be displayed to customers in the Customer Portal
- Building foundations for our new Build-a-box feature
December 23, 2022
Premium memberships (a.k.a. Clubs)
With Memberships, merchants can build their own premium clubs (similar to Amazon Prime or Allegro Smart) with free deliveries or discounts as the main incentives. Except for custom implementations, we’re pretty sure you won’t find this feature anywhere else!
Improvements and fixes
- Fixed empty shipping line check for value
- Default interval for selling plans changed from from 1 week to 1 month
December 16, 2022
More freedom to edit subscriptions
Except for adding and removing products from subscriptions, merchants can also swap products within a subscription (one condition: both the old and the new product have to be in the same selling plan).
Subscribers can change, remove, or add products to their subscription entirely on their own in the Customer Portal.
Automatic tagging for subscription orders
All subscription orders will now automatically receive a subscription_*
tag to help merchants search, filter, and analyze how their subscriptions perform. Tags can also be used to create targeted, subscriber-only marketing campaigns.
subscription_start
for initial order
subscription_order_NUMBER
for all orders
subscription_CONTRACT_ID
for all orders
Improvements and fixes
- Added links to individual orders in the subscription activity timeline
- Added “Show all orders” link to see all orders from a given subscriber
December 9, 2022
Subscriber-scheduled renewals
Rather than skipping a replenishment, subscribers can now just pick a different date for their next subscription renewal. Convenient! They can also change the delivery frequency, choosing one of the alternative frequencies available for their subscription.
Improvements and fixes
- Improved Customer Portal layout spacing on mobile
- Improved popup positioning for better user experience in the Customer Portal
- Fixed an error where merchants could only add 10 products to a selling plan
December 2, 2022
Flexible login options for subscribers
Subscribers have more flexibility logging into their customer accounts. They can choose between a code sent to their email, social sign-in with Google, or Facebook. If subscribers are logged in to their customer account already, they can just go directly to their subscription settings from there — no additional login is required.
Full Polish language support
For Polish-speaking merchants and subscribers out there, Polish is now fully supported on the storefront and in email notifications. The language used is based on the language settings in Shopify.
Improvements and fixes
- When subscription fails to renew, both subscribers and merchants receive an email notification