mobile
v23.4.0 (2026-10-24)
- New — Blocks can warm the checkout session ahead of time with a cart/preload action, so checkout opens sooner when a shopper taps through.
- New — The Android launch screen background colour can now be set from your theme instead of always being white. (Android only)
- New — Fullscreen web screens opened from a block can opt into safe-area padding, keeping content clear of the status bar, camera cutout and system navigation bar.
- New — Loyalty rewards where the shopper chooses how many points to spend are now supported for Yotpo and Rivo, including the amount picker and sending the chosen amount on redemption.
- New — Rivo shoppers can now add their birthday from Ways to Earn.
- New — Klaviyo email and SMS tracking links can open directly in the app, once your Klaviyo tracking domains are configured and a new build is shipped.
- New — Loop Subscriptions is now supported; shoppers open their subscription in Loop's hosted portal, already signed in.
- New — Cordial contacts now carry the shopper's market country, so you can target by country in Cordial.
- New — Bloomreach Discovery can receive product views, category views, add-to-cart and purchase events from the app when the integration is enabled, tied to the same visitor as in-app search.
- New — Athos Commerce can receive product views, add-to-cart and sign-in events from the app when the integration is enabled, tied to the same visitor as in-app search.
- New — Saving a product to a Tapcart wishlist now sends Klaviyo a Favorited Item event that includes the selected size and the list name.
- New — Cart actions, including add to cart and checkout, now work in layout previews so you can test those flows before publishing. Previews use the real cart, so a completed checkout creates a real order.
- Improved — On stores using Shopify New Customer Accounts, sign-in links from your storefront, Shop and magic-link emails now open the app's native sign-in, so the shopper ends up signed in to the app rather than only inside a web page.
- Improved — In apps running a tab-level layout experiment, the main page keeps its own layout, so it is prefetched and opens faster.
- Improved — Apps running layout experiments no longer treat every configuration refresh as a change, so screens stop re-initialising unnecessarily.
- Improved — Rivo loyalty: points history and claimed rewards show the newest entries and load full catalogs, the shopper's tier is reported correctly, and free-product rewards with several variants resolve their product.
- Improved — Smile loyalty: rewards show their images, Ways to Earn lists your earning rules, and points history uses the shopper-facing description.
- Improved — On Smile stores using Shopify New Customer Accounts, shoppers are looked up as soon as they sign in, and shoppers without a membership are enrolled in the background, so rewards and sign-up points appear without a long wait.
- Improved — App Studio screens are more resilient: they recover from a failed load or a renderer crash, refresh correctly after sign-out including on background tabs, and content is ready sooner on repeat visits.
- Improved — Failed toast and gallery actions report the underlying reason to the block that called them, under the correct action name.
- Improved — Data sent to App Studio screens is now confirmed by the page and repaired if an update is missed, so cart, customer and current-screen values stay in sync.
- Improved — LoyaltyLion rewards now reflect the shopper's market country, so rewards that are not offered in their market are no longer shown.
- Improved — Less background work during error reporting, so the app stays more responsive.
- Improved — Cart sync stops retrying items the store cannot add, so launches make fewer failing requests.
- Improved — Layouts that have not changed are no longer re-downloaded at launch, so screens are ready sooner and use less data.
- Fixed — Push notifications sent through Ometria now report delivery and opens reliably, and notifications sent by Tapcart keep their image when Ometria is also enabled.
- Fixed — Checkout completion is now recorded reliably while the checkout sheet is open, so the cart clears and the purchase is tracked as expected.
- Fixed — Shoppers who decline the location permission prompt are no longer asked again on every launch. The prompt now respects the re-opt-in interval, which defaults to 30 days.
- Fixed — Push registration now updates as soon as a shopper changes their notification permission, in the app or in system settings, instead of waiting for the next scheduled refresh.
- Fixed — MoEngage receives app install and update status again, so install and update campaigns fire as expected.
- Fixed — Push notifications whose links are shortened now report their campaign source to GA4 correctly, instead of attributing the session to a generic app source.
- Fixed — A shopper's default list in The Wishlist now shows your configured default name instead of an internal list key.
- Fixed — Push notifications received while the app is open no longer fail when a messaging provider is unavailable, and one provider's failure no longer affects the others.
- Fixed — Redeeming a loyalty reward without a reward selected now returns a clear error, and a failed subscription payment-update email reports a readable message instead of an empty one.
- Fixed — If one analytics integration fails on an event, the other integrations still receive it.
- Fixed — Unexpected values in links, tab titles, cart properties and cart attributes no longer break a screen or a cart update, and analytics leave out invalid prices and quantities instead of sending them.
- Fixed — The cart no longer attempts a buyer-identity update with an expired customer session at launch; it syncs once the session has refreshed.
- Fixed — Sign-in with Shopify New Customer Accounts no longer hangs when more than one screen in the app requires login.
- Fixed — Destination links with stray spaces around them now open instead of failing.
- Fixed — A refreshed Shopify sign-in is now handed to loyalty even while loyalty data is still loading, so loyalty requests keep working after a session refresh.
- Fixed — Multipass sign-in now fails with Shopify's reason when the token is rejected, instead of reporting success and signing the shopper out shortly afterwards.
- Fixed — If a configuration response cannot be read, the app restores the last working configuration instead of being left with none, so launches — including offline launches — keep working.
- Fixed — On Android, Attentive now receives the shopper identity at sign-in and links the device's push token to the contact. (Android only)
- Fixed — An Android error on some page loads that could stop page-title tracking and keyboard handling is fixed. (Android only)
- Fixed — On stores using Shopify New Customer Accounts, the order list now shows the shopper's most recent purchases, which matters when historical orders were imported into Shopify.
- Fixed — Screens opened from links and push notifications now always open with their intended configuration.
- Fixed — Cart edits no longer show an error after Shopify rate-limits the store, and repeated identical cart-attribute updates are skipped.
- Fixed — A wishlist that fails to reload keeps the last loaded list, so saved items no longer disappear or change order.
- Fixed — Subscription screens retry once when the subscription provider rate-limits a request, instead of showing a failed state.
Updated 11 days ago
Did this page help you?
