Highlights
B2C & B2B Commerce
Seamless integrations
Faster time-to-market
Analytics
Please note there are breaking changes in this release.
|
Please remember to perform a hard refresh in your browser after upgrading your environment.
New Features
Use Apple Pay express checkout for passwordless checkout
Our Apple Pay SDK can now be used for customers who are anonymously authenticated. This means that if a customer is not logged in and clicks the Apple Pay button on an offers page, they can complete their purchase without logging in and without going through a standalone checkout screen.
If the customer has an authentication token when the Apple Pay button is clicked, then that means the customer is fully logged in and that those details will be used in the Apple Pay express checkout purchase. If the customer does not have an active authentication token when the Apple Pay button is clicked, then the customer’s details will be fetched from the Apple Pay account instead.
Read more about our Apple Pay SDK here: Express Checkout
There were a variety of order processing enhancements also made to support this change.
New order processing logic
It is now possible to define specific order orchestration for express checkout orders. A default order orchestration can be defined initially, and overrides can be used to define different orchestration based on order type or whether express checkout was used. If express checkout is used, there will now be a processingType attribute on the event.
Read more about Limio order orchestration here: How Limio’s Order Orchestration Framework works
New Salesforce v3 plugin setting for linking anonymous identities to existing accounts
To ensure that anonymously purchased subscriptions are linked to the correct customer account for customers who already have an existing account, there is a new flag on the Salesforce v3 plugin to control whether the objects associated with the anonymous identity should be transferred to the known identity.
Read more about the Salesforce v3 plugin here: How can Limio Commerce update my Salesforce data
New webhook plugin
The Webhook Plugin allows real-time communication with external systems during order processing. It sends a JSON payload to a specified endpoint and processes the response before proceeding to the next plugin. If set to critical, it is synchronous, meaning customers will not be able to process an order until all critical steps have processed.
Read more about the webhook plugin here: Webhook Plugin
New duplicate subscription plugin
The Duplicate Subscription Check plugin helps prevent users from purchasing a subscription if they already have an active subscription for the same product. This ensures that customers do not accidentally purchase duplicate subscriptions. This plugin is especially useful in order processing configurations where anonymous checkout is used and the customer’s identity may not be known until order processing starts.
Read more about the duplicate subscription plugin here: Duplicate Subscription Check Plugin
If you’d like to enable any of these order orchestration features, please contact Limio support at support@limio.com.
Support for Zuora order line items during Limio Acquisition experiences
Zuora has a concept of Order Line Items, which are non-subscription-based items created by an order, representing transactional charges such as one-time fees, physical goods, or professional service charges that are not sold as subscription services.
You can now configure and process Order Line Items through Limio! This means you can now append any additional one-off charge to a subscription, all through the Limio interface and without any code.
For more information on Order Line Items, read our guide here: How to configure and implement Order Line Items
Get all offers in the Limio Catalog (including unpublished offers) via API
The Get Offers v2 API can now be used to query either published offers or published and unpublished offers. This is useful if you want to see all of the offers you have in your catalog, regardless of whether they are currently published.
Read more about our Get Offers v2 API here: Get Offers v2
Query add-ons via new API
Some of the newer Limio functionality, such as Promo Codes and Cross Selling, leverage Limio Add-Ons.
Specifically:
- You can apply a promo code to a specific add-on or group of add-ons
- You can configure add-ons to be cross sell options for offers
Up until now, add-ons have not been abled to be retrieved via API. We now have a new API Endpoint called “Get Add Ons”.
Refer to this documentation for more information on this new endpoint and how it can be queried to help you get the most out of Limio Add-Ons: Get Add-ons
New Button component
We have introduced a standard Button component to provide Limio Commerce users with greater flexibility in designing their user journeys. This component is straightforward to configure, the only 2 props being the Button label and the Redirect URL.
This allows for easy customisation of call-to-action buttons without requiring additional coding.
📷 Screenshot: See the new Button component in the Page Builder.
Read more about this new component here: Component: Button
Improvements
Improved Journey stability
We have improved our implementation of Journeys so that they are now more robust and can support concurrent working. Customers can update the same Journey at the same time without the risk of losing any work.
Additionally, the starting point can now be removed from Journeys, which essentially makes them inactive. This is helpful if you have a promotional or default Journey that you want to turn off and on quickly.
For any customers not currently using Journeys, this improved functionality will be available immediately when new Journeys are created. For customers that have existing Journeys, a Limio developer will need to add configuration to your environment in order for you to get the full benefit of the improvements. Your Limio Customer Success Manager will be in touch to arrange the best time to perform this configuration.
Read more about Journeys here: What are Limio Journeys?
Improvements to Promo Codes v2
Following the introduction of Promo Codes in Release 106, we have made several improvements to enhance usability and flexibility.
-
Case insensitivity: Promo Codes must contain only capital letters and numbers in order to be successfully redeemed. Previously we allowed Promo Codes to be saved with lower case letters, which lead to errors when attempting to redeem these codes. Now, if a Promo Code is configured containing lower case letters, these letters are automatically capitalised when the Promo Code is saved.
- E.g. if “PromoCode123” gets entered in the Promo Code modal, the actual code will be “PROMOCODE123” when the code gets saved.
- Validation: The Promo Code modal no longer closes automatically after an unsuccessful save (e.g., when required fields are missing or incorrectly entered).
- Field clearing: Currency and Duration Type can now be cleared during promo code creation or editing.
- Validity dates: Users can now set an Expiry Date without requiring a Start Date.
- Required fields: The Applies To and Attached Offers Label fields are now correctly marked as required.
- Improved Overview Page: The Promo Codes overview page has been streamlined with a cleaner interface and fewer columns for better readability and navigation.
📷 Screenshot: The Promo Codes overview page now has fewer columns to make it easier to find the promo code you're looking for.
For more details on configuring and using Promo Codes, refer to our guide: How to configure and implement Promo Codes V2.
More granular user permissions in Limio Commerce
We have introduced dedicated permissions control for Promo Codes and the Zuora Product Catalog. Previously, these permissions were set in Customer, Subscription, Basket, Events & Order Data. These permissions will no longer cover Promo Codes and the Zuora Product Catalog.
📷 Screenshot: There are 2 new permissions in Users > Permissions: Promo Codes and Product Catalog.
Promo Codes
Limio Commerce Admins can now define which users have view, edit, create, and delete access to Promo Codes, providing more granular control over user roles. Previously, these permissions were managed from the Customer, Subscription, Basket, Events & Order Data section.
Zuora Product Catalog
Limio Commerce Admins can also define which users have view and edit access to Zuora Product Catalog actions from Limio. The Zuora Product Catalog can be found in Operations > Zuora Product Catalog. Roles which have the ‘Can View’ permission will only be able to see the Zuora Product Catalogue screen in Limio, while roles which have the ‘Can Edit’ permission will be able to trigger the Zuora Product Catalog sync.
⚠️ Note: This enhancement has a breaking change for all customers who need to use Promo Codes or the Zuora Product Catalog.
In order to avoid access issues with your Limio Commerce users, please ensure that relevant roles have the Promo Code and Product Catalog permissions set correctly.
See Promo Code v2 information in LFS Timeline
We now include Promo Code v2 information in the LFS Timeline. If a Promo Code v2 was used to purchase a subscription, then there will be a new “Promo code” attribute that displays the promo code name. There is also a new “Price paid” attribute. The “Price paid” attribute displays the price the customer paid for the subscription after the promo code was applied. The “Price” attribute will show the cost of the subscription with no promo code applied.
📷 Screenshot: The LFS Timeline now shows information about Promo Codes used.
Read more about the LFS Timeline here: View a Subscriber Timeline
Trigger begin_checkout event from direct purchase links in Limio
Direct purchase links provide marketers with a seamless way to direct customers straight to a checkout, bypassing the need for a landing page. To improve scalability and ensure compatibility with the Limio data layer, we have made a change to trigger the begin_checkout event in the Limio data layer when a purchase link is used to direct the customer to a checkout.
If you would like to learn more about purchase links and how to configure them, please check here: How to configure Purchase Links.
Read more about the Limio data layer and the begin_checkout event here: How to Configure the Limio Data Layer to Collect User Events for Analytics
Configure Zuora credentials in Integration settings
To enhance security and manageability, we are updating how Zuora integration credentials are stored in Limio. Currently, all Zuora credentials are stored in General Settings > Zuora. Moving forward, these credentials should be stored in the Integration Settings tab instead.
📷 Screenshot: The Integrations tab should be used to manage Zuora credentials.
From Release 107, both General Settings and Integration Settings can be used to configure Zuora integration, and Integration Settings will take precedence over General Settings.
In an upcoming release, General Settings will no longer support Zuora integration configuration. When this change happens, no action will be required from any customers, as part of this transition will include automatically migrating all existing credentials to Integration Settings.
Moving forward, please use Integration Settings to manage Zuora credentials.
New prop in Initiate Checkout Button component
Users are now able to define the checkout routing from the Initiate Checkout Button component itself through a new Checkout URL prop. This is useful if you have multiple offers in your basket or you want to overwrite the checkout redirect that has been configured on the offer. This enhancement provides greater control over the checkout flow, allowing for custom redirections where needed.
For more information on this component refer to our guide here: Component: Initiate Checkout Button
Tooltip on Country field in Address Fields subcomponent
We’ve made a small but useful improvement to the Modular Checkout in Limio. Previously, tooltips were available for all address fields except Country. Now, you can add a tooltip message for the Country field, just like the other address fields.
📷 Screenshot: There is a new tooltip message property on the Address Fields subcomponent.
Read more about the Address Fields subcomponent here: Form Subcomponent: Address Fields
Increased security measures for logging in to Limio Commerce
We now pass the IP address to our identity solution when users log into Limio Commerce, to adhere with security best practices that prevent malicious activity.
Additional US date format (eg MM/DD/YYYY) now supported in Localisation settings
We have added a new short-form US date format into Limio. This is especially useful for any users with primarily US-based customers who wish to display shorter form dates.
To change your date, simply go to:
General Settings > Localisation > Default Date Format > Short Date (US)
📷 Screenshot: Set the default date format in the Limio Settings > Localisation tab.
Read more about configuring date formats here: How to configure the date format in Limio Components
Allow custom attributes to be updated in Zuora for more event types
Previously, users could add custom fields to be passed in the order payload from LFS into Zuora for new orders only. Now, we’ve extended this functionality for order.refund, order.change_payment, order.change_offer, and order.cancel_subscription.
Read more about this feature here: Flow customisation: How to add custom fields to the order payload
Subscription_id renamed to subscriptionId in order_complete_view data layer event
In order to align our data layer event attributes, we have renamed the “subscription_id” attribute in the order_complete_view event to “subscriptionId” to be aligned with the order event.
Read more about our data layer events here: How to Configure the Limio Data Layer to Collect User Events for Analytics
⚠️ Note: This enhancement has a breaking change for anyone using the order_complete_view data layer event.
In order to avoid issues with your data layer, please check your data layer mapping to make sure that subscriptionId is collected instead of subscription_id.
Streamlined Limio Subscriptions tab views
We have removed legacy buttons from the Subscriptions tab views that don’t support real features, such as cancelling a subscription, adding a new address, or adding a new schedule. We have also removed the Details button since details can be accessed by clicking the blue text in the first column instead.
Stability and quality improvements
- The product rate plan selectors have been refactored.
- Replace node-fetch with fetch to reduce our edge-router bundle size.
- Our attribute definitions and attribute defaults have been refactored.
- Improve country tracking in the backend by introducing orderCountry, viewerCountry, and requestedCountry.
- API Gateway now uses "regional" setting to improve latency and allow the passing of headers more easily.
- Ensure components correctly use Tailwind tokens.
- PropTypes are no longer supported in custom components.
⚠️ Note: This is a breaking change for anyone using "PropTypes" in custom components.
Custom components using "PropTypes" will not appear correctly in the Page Builder, though they will still load correctly live in the Limio shop. Customers using "PropTypes" in custom components should either remove those references, or will need to add PropTypes as a dependency.
Add an external identity to a Zuora-synced subscription in Limio via API
Limio now supports the ability to easily integrate non-Limio-generated subscriptions into Limio, enabling a consistent subscription management experience in Limio regardless of where the subscription was generated.
We have introduced a change that allows you to add an external identity to a Zuora-synced subscription in Limio. This means the customer can perform all self-service activities for that subscription that they could perform for Limio-initiated subscriptions.
Please refer to our API documentation for more information on this API.
Selectable date range in Limio Analytics
You can now select a date range when exporting your Limio Analytics report.
Bug Fixes
Removed incorrect error message when a password is successfully changed
Limio Commerce users resetting their password saw an incorrect "An application error occurred" message, even though the reset was successful. This issue has been fixed, and users now receive the correct confirmation message when their password is changed.
Fixed incorrect totals and schedule display in cart with multiple offers
When multiple offers were added to the cart, the Cart Summary and Billing Schedule components only calculated the price based on the first offer’s schedule, leading to incorrect totals. Additionally, if the subscriptions had different term end dates, the order preview could fail. This issue has been resolved by correctly combining all invoice items and handling renewal dates, so totals now reflect all offers in the order.
Prevented null CompanyName from being sent to Zuora on switch orders (110486)
Previously, when processing new or switch orders, the CompanyName field was sent to Zuora as null if it wasn’t defined. This caused the Company Name to be overwritten during Switch orders because Company Name is not re-collected, which then required manual data correction. This has been updated to only send the field when it has a value, preventing accidental deletion of data.
Stopped unnecessary Nexi POST requests to prevent 403 errors (110656)
The Limio/Nexi integration was incorrectly making a POST request to the /api/plugins/nexi/respond endpoint, resulting in errors due to expecting GET requests. This issue, which did not impact order processing but generated unnecessary errors in logs, has been resolved by removing the urlpost parameter. The GET request remains intact for order submission and redirection.
Standardised country code casing to prevent issues in Limio for Salesforce (LFS) (109986)
Inconsistent casing of country codes caused unpredictable behaviour in Limio for Salesforce (LFS), particularly when data was sourced from platforms like Apple Pay or PayPal. All country codes are now automatically converted to uppercase before creating the order object, ensuring consistent order processing and data handling.
Fixed error message display in Customers Table component
The Customers Table component previously rendered rich text error messages as plain strings, displaying HTML tags instead of formatting them. Rich text is now correctly parsed before rendering, ensuring error messages display as intended.
Fixed tooltip link editor overlapping in Page Builder (110513)
In the Page Builder, the tooltip link editor was overlapping other text within the properties editor, affecting usability. The CSS has been updated to ensure the editor remains contained within the component editor.
Removed custom plugin functionality from out-of-the-box Limio order plugin (110485)
Some custom logic for specific customers was moved out of the out-of-the-box Limio order plugin into a dedicated custom order plugin instead. This was to help keep custom customer requirements separate from our core code base and more easily maintainable.
Fixed Offers page crashes caused by unavailable search functionality
Some users reported the Offers page crashing intermittently. The root cause of this was identified and the issue has been fixed.
Fixed missing original offer information in Cancels & Saves report
Limio Analytics was not consistently capturing original offer details for cancellation events, leading to incomplete data in the Cancels & Saves report. All cancellation events are now accurately tracked and included in reports.
Prevented tag creation on already published pages (110539)
Previously, users could create new tags on published pages, but these tags could not be removed or unpublished, requiring manual data fixes. The system now prevents tag creation on published pages, displaying an error if a page is already published.
Fixed issue preventing text deletion in Journeys search field
Limio Commerce users were previously unable to delete manually entered text in the search field when adding conditions in Journeys. Selected dropdown options could be removed, but free text remained stuck. This issue has been resolved, and users can now delete any entered text as expected.
Fix prop labels on Billing Schedule component
Updated prop labels in the Billing Schedule component to improve clarity and consistency with other components.
Fixed blank Total field for free offers in Limio Analytics (110498)
Previously, when an offer was free, the "Total" field in the New Orders reports in Limio Analytics was left blank instead of displaying 0 or 0.00. Free offers now correctly show a total value for consistency across all reports.
Restored full data export for Limio Analytics reports (110470)
Previously, Limio Analytics report exports were limited to only the data visible on the current page, which was not useful for customers needing full datasets. The export functionality now includes all data across all pages when downloading reports.
Prevented selection of non-allowed countries in Single Page Checkout component (110727)
Users were able to enter restricted countries in the Single Page Checkout component due to issues with Loqate autofill and country selection handling. This issue has now been resolved.
Simplified Salesforce OAuth configuration for tenants
Previously, each tenant had to be manually configured to connect with Salesforce, which became unsustainable as the number of tenants grew. The process has been simplified to speed up setup and remove configuration limits.
Fixed missing user object when generating bearer tokens via OAuth API (110819)
Previously, API calls made using a generated bearer token failed because the user object was missing, preventing actions like publishing pages via API. Service user tokens now return an ID, allowing API requests to authenticate and function correctly.
Improved email branding for verification and welcome emails
We’ve fixed an issue where the Limio logo was not displaying in verification and new user emails in Limio Commerce, ensuring it now appears correctly. The unnecessary address footer has been removed from welcome and password reset emails too.
Increased data accuracy in Checkout Conversion Rate report
There were a few data quality improvements made to the Checkout Conversion Rate report in Limio Analytics:
- Exclude preview links from the report: Previously, the Checkout Conversion report included checkout preview links, which are only used by Limio Commerce users during testing. The report now filters these entries out, and only includes live checkout pages configured in Limio Commerce.
- Duplicated checkout entries: There was an issue with the checkout page occasionally being registered twice in the report, once with and once without the prefixing “/” (e.g. “checkout” and “/checkout”). This problem has been resolved and all checkouts will now only appear once.
- Report is consistently being informed by the correct event: The Checkout Conversion Rate Report now gets consistently informed by the checkoutReached event. Previously we were using the checkoutSessionInitialised event, which did not accurately reflect conversion rates for certain scenarios, such as redeeming gift codes and using externally configured checkout urls.
Adding or removing an Allowed Host is now immediate
Previously, adding or removing a host or allowed ancestor through Settings > Allowed Hosts would only appear in the UI if a hard refresh was made. This has been improved so that any changes can now be seen immediately without the need to perform a hard refresh.
Comments
0 comments
Please sign in to leave a comment.