Optional tier images now appear in the customer loyalty app, the storefront Loyalty Hub, and the customer account Loyalty Hub. Customers can also swipe through tier cards in the loyalty app, which opens on their current tier.
Merchants can now cancel an active subscription from the Subscription page. After confirmation, the recurring Shopify charge is cancelled and the program returns to the Free tier.
Shopify Flow now stops coupon assignments when the linked campaign has ended or been deleted, or when its coupon is no longer available. Removing a linked campaign also stops automatic code imports for its coupons.
Boost campaigns can now be limited to Online Store orders, all Shopify POS orders, or selected POS locations. Sales channel availability is separate from earning-flow multipliers, so merchants can run targeted POS or online promotions without changing how points are calculated.
VIP tiers can now include an image and localized tier names and descriptions. Merchants can review each program language in the tier editor and use auto-translate to draft localized tier content.
The Shopify Loyalty Hub storefront experience now has smoother reward and tier sections, clearer discount calls to action, and progressive earning-rule display for programs with many ways to earn.
Location device setup now separates beacon name, UUID, major, and minor fields, then validates the beacon identifier before saving. This makes Apple Wallet location-notification setup easier to review.
Fixed a rendering issue where some loyalty app segment labels and action buttons could appear with missing or invisible text after the latest Ionic update.
The Shopify Loyalty Hub is now the recommended default loyalty destination for new Shopify launches. Merchants can publish a storefront hub for guests and logged-in customers, then add a full loyalty hub inside Shopify New Customer Accounts.
The JeriCommerce admin now includes a dedicated Loyalty Hub customization flow with setup guidance for storefront and customer account surfaces, clearer previews, and brand customization options.
Transaction-based billing now follows the subscription terms for each program, including the subscription creation date, the updated free transaction threshold, and the correct Shopify approval terms.
The admin now warns merchants when their monthly Shopify capped amount is close to being reached, with a shortcut to increase the cap before usage is blocked.
Custom earning flows that show a customer button now require the button text and URL before saving. The admin shows clearer errors and focuses the first field that needs attention.
Shopify customer profiles can now show JeriCommerce loyalty information, VIP tier progress, and recent loyalty events directly in Shopify admin.
Shopify order pages can now show the points earned by the order, any boost that applied, returned points from refunds, and the final net point total.
Push notifications now show clearer scheduling guidance and save errors. Shopify and Klaviyo segments automatically account for audience sync time when scheduling.
Large campaign sends now reduce database load between batches, helping the admin and customer experience stay responsive while high-volume sends are running.
Reward text in the Shopify customer account rewards block now handles Bulgarian translations and encoded spacing correctly, so long reward names and descriptions stay readable on mobile.
When a Shopify order is refunded in several steps, the final refund now removes the remaining loyalty points that need to be reversed instead of leaving residual earned points.
A new rewards block on the Shopify customer account page lets customers browse and redeem loyalty rewards, then apply the discount to their cart in one tap. Every redeemed reward stays saved under See my discounts, so customers can find and apply it again later.
A new tier status block shows customers their VIP tier, points, and progress toward the next level right on the Shopify customer account page.
A new block shows customers the loyalty points they will earn from their order on the checkout summary and the thank you page, including the boosted amount when a points boost campaign is active.
Reloading the JeriCommerce admin inside Shopify no longer sends you back to the default page. You now stay on whatever page you were viewing.
Create limited-time campaigns that multiply regular points, tier progress, or both. Boosts can apply to all earning flows or selected earning flows, and active boosts can surface in the loyalty app and Shopify storefront points blocks.
When adding an NFC reader whose serial already exists in the program, JeriCommerce now shows a confirmation dialog to move it to the new location instead of returning an error. No need to delete and re-add the device.
JeriCommerce now supports Bulgarian as a customer language. Merchants with Bulgarian customers can add Bulgarian to their program's enabled languages and send wallet passes, in-app content, and loyalty communications in Bulgarian.
Fixed an issue where the sign-up and profile buttons on the JeriCommerce loyalty page could redirect customers to a Shopify error page when using New Customer Accounts. Login links now always point to a working URL.
Store admins can now manually decrease a customer's point balance even when that customer has points in a holding period. The holding period restriction still applies when customers claim rewards.
The Get Customer Shopify Flow action was not passing customer loyalty, tier, and profile data to later steps, causing flows to fail with a missing return value error. Flows that look up a customer and then use their loyalty data or tier in a later step will now work as expected.
Location-based campaigns can now target Google Wallet alongside Apple Wallet for GPS-based store locations. Android uses Google Wallet's default Nearby message and does not support iBeacon devices or custom on-screen campaign text.
New Shopify installs now mirror supported published store languages and save the store currency even when Shopify does not share an email.
NFC reader tap failures now return clearer reader-friendly errors for cases like an unauthorized reader or missing program, making in-store troubleshooting easier.
WhatsApp is now available alongside Facebook, Instagram, TikTok, X, YouTube, and Spotify in the Follow Us earning flow. Add the WhatsApp channel ID, set the points, and customers can earn from that channel in the loyalty app.
Automatic loyalty emails now use localized copy across the supported languages and can show the customer's points, level, and tier points in the footer when that data is available.
API endpoints that return coupons, customer coupon codes, transactions, and customer events now correctly use their default page and limit when those query parameters are omitted.
Coupons now require an associated discount, and you can create the Shopify discount or upload CSV codes while creating the coupon. Unique-code batches can now start from 1 code.
You can now set a per-customer limit on a coupon, so the same customer cannot be assigned that coupon more times than you allow.
Fixed an issue where a pass tied to a revoked or migrated Apple certificate stayed stuck on the broken certificate and could not update. Passes now pick up the correct certificate the next time the customer reinstalls or downloads them.
Fixed two crashes: one when exchange rates were briefly unavailable during currency conversion, and one when a Shopify customer update arrived for a customer that had been deleted in Shopify.
Fixed the Reward available notification and email so the points holding period only delays them when the customer is still waiting on purchase points. Customers who became eligible through manual or other non-purchase points are now notified right away.
The Verify account earning flow has a clearer name: Welcome customer. It works exactly the same way, crediting points when a customer confirms their account, so any flow you already set up keeps running. Only the name in the Earning Flows list has changed.
JeriCommerce can now send three more automatic emails to your customers: Coupon assigned, Reward available, and Reward redeemed. Turn each one on or off from Settings > Customer Flows > Emails, next to the existing Confirm email and Download loyalty card emails. If you turn one off, you can handle that message yourself through our events.
In the Campaigns section, the page that was called Scheduled campaigns is now named Push notifications. Nothing about how it works has changed. You still pick an audience, set a date and time, and write the message that lands on your customers' loyalty cards.
When a customer redeems a reward, the discount code now appears under the reward in their event history in the Customers section. You can copy it straight from there, with no extra steps.
The wallet app opens tier details on a dedicated page at /loyalty/tiers (with desktop navigation and deep links) instead of the old popup. The new path is also selectable in the admin's customer-app link picker when tiers are active.
The floating widget no longer reloads the customer app each time the bubble is opened. The page the customer was on, the scroll position, and the login session are preserved between opens.
The widget's sign-in link now uses the store's Liquid login route, so it stops 404-ing on Shopify stores that use New Customer Accounts. The Path after login setting also rejects unsafe values, and its description matches the real behavior.
When you create a Shopify discount from a coupon or reward, a new Combine with other discounts toggle lets that batch stack with product and shipping promos in Shopify. The toggle is off by default. For the codes to actually combine, the counterpart promo in Shopify must also be marked combinable with order discounts.
Spotify is now available alongside Facebook, Instagram, TikTok, X and YouTube in the social-follow earning flow. The form is now a dynamic list with an Add network menu, and you can pick up to 4 networks at a time.
You now have 5 custom earning-flow slots (CUSTOM_1 to CUSTOM_5) for anything the standard flows do not cover. Pick one of three trigger modes (tap to earn, tap plus external trigger, external trigger only), set points and recurrence, and fire the flow from the wallet, a Shopify Flow workflow, or your own backend through the API.
A new Execute earning flow action lets any Shopify Flow workflow award points for a custom flow. Pass the flow identifier (e.g. CUSTOM_1) and the customer email, and JeriCommerce credits the points and respects the flow's recurrence cap.
Two new actions live inside the Shopify customer profile: Adjust Loyalty Balance (credit or debit points with a reason) and Send Loyalty Card (email the wallet pass to the customer). No need to jump to JeriCommerce for one-off support cases.
The how-to-distribute entry point is now a contextual card embedded directly on the loyalty card, coupon and reward pages, with a primary action tailored to each (QR plus URL for the wallet, email send plus copyable slug for coupons, an explainer for rewards). The old chip in the page header is gone.
A new Complete User Profile earning flow awards points the first time a customer fills in the fields you choose (first name, last name, phone, birthdate). The flow shows as a card in the wallet web app and opens an editable profile page when tapped. Points are awarded once per customer.
Rewards, Coupon Campaigns, Scheduled Campaigns and Location-Based Campaigns now show an illustration and a primary CTA when the list is empty, so first-time setup is clearer at a glance.
The translation system now covers scheduled, location-based and coupon-campaign push notification header, body and link, on top of rewards, earning flows and wallet sections. Customer pass push messages pick the right locale automatically.
The customer detail page now shows language, birthday, tier balance with singular and plural forms, the next-cycle date when tiers are on, and a Created chip identifying where the customer came from (Shopify, JeriCommerce, API or sync). A new View on Shopify action opens the customer in Shopify admin in one click.
All wallet-facing copy across English, Spanish, French, Italian and German now uses Discounts instead of Coupons, matching Shopify's terminology. Translation keys and routes are unchanged.
You can now create fixed coupons like $12.50 or €9.99, and fractional percentages like 12.5%. Previously the value field rejected anything but whole numbers.
The POS Rewards tile now has Rewards and Coupons tabs. Staff can apply any coupon assigned to the customer (manually or by campaign) directly to the cart, alongside point-redeemable rewards. The tile badge shows the combined count of available discounts.
Fixed a bug where the POS Loyalty and Rewards tiles could remain disabled after scanning a customer, even when the scan succeeded. Tiles now reliably activate and refresh as the cart changes.
The Balance Changed trigger now exposes pointsToNextReward and nextRewardName, and the Reward Redeemable trigger now exposes rewardValue, rewardCost, and customerRemainingBalance. Use them in Shopify Flow to build smarter automations (for example, nudge customers when they are close to the next reward).
Two new custom fields — next tier name and points to next tier — can now sync to Shopify metafields and Klaviyo profiles, so you can show customers how close they are to leveling up.
Balance change events now include more context about coupon and reward transactions, giving you better data in Shopify Flow and Klaviyo automations.
The balance changed and reward redeemable Shopify Flow triggers now include next reward details, so you can notify customers when they're close to unlocking a reward.
Each earning flow now has a Display settings section where you can edit the title, short description, long description, and upload a custom 1:1 icon. Customers see your wording and image instead of the default text and illustration in the wallet.
Rewards now appear in each customer's language in the wallet, and Apple and Google Pass notifications (balance changes, tier updates, new reward available) are sent in their language too. Set up translations from Settings > Translations.
The Shopify storefront widget now passes the active store locale into JeriCommerce, so the loyalty page and widget content open in the language the shopper is browsing in.
Fixed two bugs that caused customers to end up with wrong or negative points after a tier recalculation: one where only the last transaction's points were saved instead of the full history, and another where refunds on orders predating the program or cancelled orders were deducted twice.
The Shopify POS loyalty tile and modals now show the customer's VIP tier next to their point balance, so staff can see tier status at a glance without leaving the checkout.
Fixed a crash where a guest-checkout order with no linked customer would halt the entire transaction sync job, preventing the rest of that batch from being imported.
Fixed an issue where section labels or descriptions containing quote characters or line breaks caused Apple Wallet to show raw placeholder text instead of the actual content.
On mobile devices, the loyalty widget now opens as a full-width panel that slides up from the bottom of the screen, making it easier to read and interact with on small screens.
Fixed a navigation issue where completing an earning flow action (such as installing the loyalty card or verifying your account) left the popup open on top of the next screen. Added a back button to the wallet-card confirmation page so customers can easily return.
Fixed a layout overflow where long words in Cyrillic and other non-Latin scripts extended past the edge of the reward detail panel in the storefront widget.
Improved the contrast of the back button in the storefront widget so it stays clearly visible when the page backdrop is light or white.
Fixed a bug where customers added via the admin, synced through the API, or imported from Smile.io were left without a VIP tier. All new customers now have their tier assigned right away.
Fixed a bug where campaigns targeting customer segments would repeatedly send to the same small group while skipping most of the audience. Campaigns now correctly work through all matching customers.
The Customers API now supports cursor-based pagination, making it faster and more reliable to page through large customer lists without missing or duplicating entries.
Fixed an issue where logos and icons on Apple Wallet passes were being cropped when the source image didn't match the slot's aspect ratio. Images now scale proportionally so your full design shows.
The admin now shows a live online or offline indicator next to each NFC reader and POS device, so you can tell at a glance which devices are connected without leaving the settings page.
Fixed an issue where the Shopify POS wallet scanner would silently lose its connection after a network interruption and stop working. The scanner now detects the drop and reconnects on its own.
Images on wallet passes (Apple Wallet and Google Wallet) and the wallet download page now serve at the right resolution for each device and are automatically optimized, so your customers see faster-loading, sharper images — especially on slow connections.
Fixed a validation error that blocked Shopify MultiPass URLs containing query parameters (e.g. ?discount=VIP) or anchor fragments. These URLs are now accepted and work correctly.
Fixed an issue where images uploaded in the admin — for rewards, emails, and wallet settings — were stored with the wrong file extension. Images are now saved with the correct format, preventing potential display issues.
Fixed an issue where the image shown when customers share their loyalty link on WhatsApp, Instagram, or social media was blank. Previews now display your program's logo and banner as expected.
The VTAP NFC reader integration now supports two hardware modes: output mode for wine dispensers and relay mode for lockers, with a configurable relay duration for locker timing.
Fixed an error on the loyalty check page that could appear when the balance preview tried to load before the program was fully ready.
Fixed two crashes in the customer-facing loyalty app: one that affected customers during app load, and one that occurred when resuming the wallet pass download page on mobile.
Fixed a race condition that caused the admin dashboard to briefly show a page not found screen on every login or page refresh.
When customers share their loyalty app link on WhatsApp, social media, or messaging apps, it now shows a rich preview with your program's logo, banner, and a localized description.
A new Changelog link in the admin side menu lets you stay up to date with the latest features. A badge appears when new features have been added recently.
The reward redeemed Shopify Flow trigger now includes the reward code, making it easier to build automations that reference specific rewards.
Wallet pass sections with no label or content are now automatically hidden, keeping your customers' passes clean.
Fixed an issue where wallet pass download links could break when a customer switched from iOS to Android or vice versa.
Wallet pass sections now support translations, so your loyalty card content displays in your customers' language on both Apple and Google Wallet.
You can now customize the look and content of your Shopify POS tiles directly from the Customize section in the admin.
The Widget and Web App design settings are now combined into a single page for a simpler setup experience.
A redesigned home page guides you through setting up your loyalty program step by step with a progress tracker.
You can now preview customer app changes in real time from the admin, without needing to switch to a separate preview link.
Fixed an issue where minimum purchase requirements were not correctly validated for percentage-based discounts.
The customers list now loads faster and includes better search and filtering options.
The Loyalty Page storefront extension now supports Italian, French, and German in addition to English and Spanish.
The Loyalty Page now shows your store's actual currency symbol instead of a hardcoded dollar sign.
A new Loyalty Page card in the On-site customization section lets you manage your loyalty page design directly.
When a customer sends a wallet pass, the app now auto-detects if their email is already registered and skips the signup step.
The customer-facing app now refers to 'Loyalty Card' as 'Member Card' for a more welcoming experience.
The marketing opt-in checkbox is now unchecked by default during customer registration, keeping you compliant with best practices.
A new Shopify theme extension lets you embed a fully customizable loyalty page directly in your storefront with automatic data binding.
Improved error handling and connection stability for the POS barcode/QR scanner, reducing 'App failed to load' errors.
You can now collect customer birthdates during registration and use them in earning flows and segments.
Fixed issues where POS scanner tiles could show stale data or leak sessions when switching between customers.
Fixed a bug where campaigns sent to more than 100 customers would only reach the first batch.
A new Shopify Flow trigger fires on customer birthdays, so you can automate birthday rewards and messages.
Fixed several edge cases where coupon redemptions could fail if customer loyalty data had not fully loaded yet.
Custom field synchronization now handles new customers without existing loyalty data gracefully.
New customers are now automatically assigned to the correct VIP tier when they register, instead of waiting for the next recalculation.
Customer metafields in Shopify now update immediately after loyalty balance or tier changes.
Apple Wallet passes now include high-resolution @2x and @3x images for crisp display on all devices.
A new Receipt QR Code extension lets customers scan a QR code on their receipt to download their wallet pass.
Fixed an issue where points earned from purchases were not correctly converted from cents to the base currency.
When a new customer registers, their existing Shopify orders can now automatically earn loyalty points.
The built-in welcome email has been removed. Use Klaviyo or Shopify Flow to send custom welcome messages instead.
The order confirmation page now shows a cleaner layout with better information about earned points and rewards.
You can now give your API keys a custom name before generating them, making it easier to manage multiple integrations.
Push notifications can now include clickable links, letting you direct customers to specific pages or offers.
When scheduling a campaign to a Klaviyo segment, the system now validates the schedule date to prevent sending errors.
Fixed multiple issues that prevented push notifications from being delivered to Apple Wallet passes on iOS devices.
Fixed a bug that could cause an error when creating new VIP tiers.
Coupon redemptions are now linked to their transaction records, giving you better tracking in customer profiles.
Fixed an issue where customers who recently interacted with their wallet pass could be skipped during campaign delivery.
You can now set a holding period for earned points, protecting your program from return fraud by delaying when points become available.
Customers now see a clear message when they cannot claim a reward because their points are still on hold.
The Account Loyalty Block Shopify extension has improved settings with clearer grouping for visibility, style, and label options.
Customer balance events now show linked transaction details, giving you a complete view of how points were earned or spent.
The tier balance label no longer appears in settings when VIP tiers are not active.
Fixed an issue where the same Shopify order could create duplicate point transactions.
Fixed an error that could appear on the locations management page when the Google Maps API was unavailable.
New API endpoints let you adjust balances, assign coupons, and redeem rewards programmatically from Klaviyo flows or custom integrations.
The API documentation now shows API key authentication requirements for all endpoints.
The Customize section has been refreshed with new icons and a cleaner layout for managing your loyalty card and storefront designs.
The Klaviyo and Shopify integration settings now show updated wallet pass download link options.
A new Shopify theme extension displays customer loyalty info (points, tier, rewards) directly on the account page with full localization support.
A new Shopify checkout extension lets customers redeem their loyalty rewards at checkout, with automatic preselection of the most valuable available reward.
The storefront widget now redirects returning customers to the correct page after logging in.
You can now sync custom customer properties between JeriCommerce and Klaviyo profiles automatically.
A new Shopify Flow trigger fires whenever a customer's points balance changes, letting you automate workflows around balance milestones.
Klaviyo and Shopify API calls now retry automatically with exponential backoff when rate limits are hit, reducing sync failures.
The Klaviyo integration now requests the 'lists:write' scope for improved list and segment management.
Custom fields can now be synced to Shopify customer metafields in bulk, dramatically speeding up large data syncs.
You can now sync custom loyalty data (balance, tier, dates) as metafields on Shopify customer profiles.
New loyalty programs no longer turn on all features by default, giving you a cleaner starting setup.
Customers can now see their earning factor (e.g. '2x points') in the loyalty app, so VIP tier benefits are more visible.
You can now set a points multiplier factor for each VIP tier, letting higher tiers earn points faster.
Added support for Shopify bulk operation webhooks, enabling faster syncing of large customer lists.
New events fire when a customer moves up or down a VIP tier, enabling tier-based automations in Shopify Flow and Klaviyo.
A new subscription modal in the admin lets you view your plan details, usage, and pricing breakdown without leaving the app.
Fixed an issue where some scheduled campaigns were not being delivered to all targeted customers.
The earning flows settings page has been redesigned with a cleaner layout and better notification controls.
Push notifications can now use AI to consolidate multiple updates into a single, clear message for your customers.
Fixed an issue where updating store locations could fail under certain conditions.
The coupon management page in the customer app now has a refreshed design with better usability.
The analytics dashboards have been redesigned with clearer charts and better layout for small screens.
A new embeddable storefront widget lets customers view their loyalty balance, rewards, and wallet pass download directly on your store.
Loyalty data like points balance, tier name, and tier dates can now sync automatically to Shopify customer metafields.