Released November 10, 2026
Miva updates include code and database changes that can take a short time to process. While we thoroughly test all updates to ensure they will not affect up-time it is still a good precaution to run updates outside of peak hours.
Miva 26R3 Release Notes#
26R3 is major release including the following feature highlights
PageBuilder Image Optimization#
PageBuilder now automatically converts images to an optimized web format and dynamically creates resized versions for supported Flex Components as needed. This significantly reduces unnecessary image loading and automatically improves page load performance.
Configurable Formats for Resized Images#
Preferred Format for Resized Images gives merchants more control over the format used for generated resized images. Instead of resized copies using the same format as the original, merchants can choose from JPEG, GIF, PNG, WebP, or AVIF. Formats such as WebP and AVIF improve Lighthouse scores and help reduce image file sizes while maintaining image quality.
Want to learn more? See Domain Details
Streamlined Checkout with Fastlane by PayPal#
MivaPay now supports Fastlane by PayPal to give guest shoppers a faster checkout experience. Fastlane delivers a consistent checkout experience across thousands of web stores.
Want to learn more? See Fastlane by PayPal
Google Analytics Reporting Integration#
Connect your Google Analytics account with Miva to pull Google Analytics reports into the Miva dashboard and automate enhanced performance tracking in Vexture Merchandising.
Enhanced tracking links shopper activity to Merchandising Showcases, search terms, and categories, giving merchants a clearer view of how shoppers engage with search and merchandising experiences.
Want to learn more? See Google Analytics Reporting
reCAPTCHA v3#
reCAPTCHA v3 is now built directly into Miva Merchant and can protect more storefront interactions, including customer login and other supported actions beyond traditional form submissions.
Want to learn more? See reCAPTCHA v3
Product Reviews#
Product Reviews allow merchants to collect and display customer reviews, send automated review requests, and moderate submissions.
Existing Product Reviews workflows, settings, templates, database structure, and scheduled tasks remain the same. However, Reviews now integrate seamlessly with PageBuilder and can be protected by reCAPTCHA v3.
Want to learn more? See Product Reviews
Waitlists#
Shoppers can join a waitlist for unavailable products or variants and receive an email when inventory is restored. Existing setups continue to work.
Waitlists are now built directly into Miva Merchant and fully integrated with PageBuilder, making it easier to add back-in-stock signup options to product pages without a separate module or manual template changes.
Want to learn more? See Waitlist
PageBuilder Product Badges & Flags#
Product flags are coming to PageBuilder. Merchants can use them to call out new arrivals, sales, stock status, or other product details.
Flags are styled with the new Badge styles in Theme Editor, so they match the rest of the storefront.
Want to learn more? See Theme Editor
Configurable Swatch Styling#
Configurable Swatch & Attribute Styling gives merchants more control over how product choices appear on the storefront. Previously, swatch styling was applied globally within the component, so product options shared the same styling.
Attributes like Color and Size can be styled individually using different display styles, including standard controls, buttons, or image-based swatches. Merchants can also adjust swatch image size, corner radius, border thickness, and border color to create a presentation that better fits each product option.
Want to learn more? See Product Details Flex Component
Multi-Domain Improvements#
The Shop as Customer feature now better supports stores with multiple domains by recognizing and maintaining the correct storefront when working with shoppers and baskets on secondary domains.
Merchants can now preview and switch branches directly on secondary domains.
Want to learn more? See Setting up Miva Multi-Domain
UPS InsureShield Merchant Self-Coverage#
New self-coverage options make it easier to protect orders when shoppers decline insurance. Merchants can now cover eligible orders based on conditions such as order value, shipping method, or product collection.
Want to learn more? See InsureShield
Data Management CSV Compatibility Improvements#
CSV imports and exports work more reliably with Excel and other spreadsheet applications, helping preserve special characters when files are exported, edited, and imported back into Miva.
Upgrade Experience Improvements#
In addition to an updated Upgrade dialog, merchants can now configure stores to automatically enter Maintenance Mode during upgrades.
Admin Experience Improvements#
Price Group and Box Packing configuration screens have been updated to use Miva’s newer Admin interface, providing a more consistent experience when configuring discounts and packaging rules.
Miva Merchant Features/Improvements/Bugs#
| Bug ID | Component | Description |
|---|---|---|
| MM-17579 | Administrative Interface | Collection Assignment Confirmation Dialog does not trigger onCancel when clicking the dialog “X” button |
| MM-17645 | Administrative Interface | Upgrade: UI Redesign |
| MM-17739 | Administrative Interface | Breadcrumb trail on several screens display the incorrect path |
| MM-17920 | Administrative Interface | Internal component dependences can fail to be output separately from other external dependencies |
| MM-17937 | Administrative Interface | MMProgressBarCustomElement: Standardize Attributes |
| MM-17963 | Administrative Interface | Module Field UI: State and Country Properties should be case insensitive |
| MM-17986 | Administrative Interface | New Module Field UI Properties for Price Groups |
| MM-18003 | Administrative Interface | Module Field UI: Property Text should support decimal padding for numeric types |
| MM-18045 | Administrative Interface | Module Field UI: Allow default settings to populate hidden fields |
| MM-18053 | Administrative Interface | MMScreen: Multi-Domain Menu Integration |
| MM-18065 | Administrative Interface | Upgrade API Maintenance Mode: UI Changes |
| MM-18081 | Administrative Interface | Module Field UI: Property “loadedcolumnlist” should support core JSON functions |
| MM-18120 | Administrative Interface | Page Builder: Property Image should support “Theme Breakpoints” |
| MM-18146 | Administrative Interface | Generated “Preview URL” for branches should be context-aware |
| MM-18147 | Administrative Interface | “Primary” flag on branches should be context-aware |
| MM-18151 | Administrative Interface | Branch Menu should display globe icon in “Primary” label when a URL Context is active |
| MM-18160 | Administrative Interface | Edit Product Image Dialog: UI Redesign |
| MM-18161 | Administrative Interface | Product List Image Preview |
| MM-18167 | Administrative Interface | Order Processing: Add ability to search for orders containing at least one item with specified status |
| MM-18172 | Administrative Interface | Shop As Customer: Multi-Domain Awareness UI |
| MM-18174 | Administrative Interface | Images: Alt Text Support |
| MM-18247 | Administrative Interface | Module Field UI: Merchandising Showcase Lookup Property |
| MM-18248 | Administrative Interface | Module Field UI: Page Lookup Property |
| MM-18263 | Administrative Interface | Add Visibility Conditions Support for Module Field UI Property Column List and Property Loaded Column List |
| MM-18318 | Administrative Interface | Module Field UI: Column List and Loaded Column List Refactor for Visibility Conditions |
| MM-18321 | Administrative Interface | Module Field UI: Date Time Property |
| MM-18417 | Administrative Interface | Page Builder: Add “Advisory Message” property |
| MM-17580 | Collections | Collection Assignment Confirmation Dialog should implement Miva 26 styling |
| MM-17755 | Collections | Element_Collection_Dashboard_JavaScript is placed into wrong combined file |
| MM-18014 | Collections | Collection Delete Confirmation Dialog should implement Miva 26 styling |
| MM-18229 | Collections | Collection Dashboard: Subsequent filter groups do not receive the correctly displayed grouping when the first join is set to “Or” |
| MM-17339 | Core JSON | Product Image Mutation Fragment |
| MM-17371 | Core JSON | Runtime JSON API: Preload Attributes |
| MM-18049 | Core JSON | Add UTF-8 BOM Support: JSON_Import_Template_CSV |
| MM-18105 | Core JSON | JSON: Runtime Availability Group products not displayed when linked via Business Account |
| MM-18206 | Core JSON | On-Demand Image Resizing for Generated Images |
| MM-18221 | Core JSON | JSON_Image_Delete does not delete generated images from disk when “Image_Delete” is true |
| MM-18383 | Core JSON | CAPTCHA API for Runtime JSON Functions |
| MM-18409 | Core JSON | Boosting rules relevance sort does not work |
| MM-18041 | Customers | Shop As Customer: URL Context and Multi-Domain Data Awareness |
| MM-18461 | Database Abstraction Layer | Deferred generated image URL should include a cache busting T parameter |
| MM-17961 | Database Layer | Country loaders should load case insensitively |
| MM-18040 | Database Layer | Track URL Context/Multi-Domain at the Basket Level |
| MM-18207 | Database Layer | Configurable Preferred Format for Resized Images |
| MM-18234 | Database Layer | Configurable Image Settings for speed and quality |
| MM-18269 | Database Layer | not_basket Feature: Module_Notify_Basket_ShippingChanged |
| MM-17902 | Import/Export Modules | Add UTF-8 BOM Support: Core Changes |
| MM-17529 | Inventory Subsystem | Variant inventory levels are not consistently calculated when the master product does not track out and low stock levels |
| MM-18419 | JSON API | Additional API whitelists for use with JSON API |
| MM-18194 | Merchandising | Merchandising Boosting Rules: Empty Filter entry created when partial boost is specified |
| MM-18410 | Merchandising | Merchandising Configuration Dialog should send “Sort” in preview request |
| MM-17941 | MMList | Add UTF-8 BOM Support: MMList/MMBatchList Export |
| MM-18055 | MMList | MMListAction HybridDropdown doesn’t display properly if the action is set to primary or secondary |
| MM-17909 | Module: afilexprt | Add UTF-8 BOM Support: Affiliates Export |
| MM-18280 | Module: applepay | Apple Pay: Itemized INSURANCE Charges in Order Summary |
| MM-17350 | Module: cmp-mv-flex | Flex Libraries should support initialization template |
| MM-17351 | Module: cmp-mv-flex | Flex components should automatically initialize all dependency libraries and components |
| MM-17462 | Module: cmp-mv-flex | Page Builder: Badges |
| MM-18088 | Module: cmp-mv-flex | Flex Item provisioning should support overlaying a subset of settings on top of the defaults |
| MM-18104 | Module: cmp-mv-flex | Flex: Image Property srcset support |
| MM-18168 | Module: cmp-mv-flex | Flex Component properties should allow omitting output of hidden property settings in JSON |
| MM-18169 | Module: cmp-mv-flex | Flex Component properties should allow omitting output of theme customization property settings in JSON |
| MM-18193 | Module: cmp-mv-flex | Flex Item Provisioning should support upgrade template when the flex version is present in the provided settings |
| MM-18424 | Module: cmp-mv-flex | Flex Components should allow omitting hidden property settings and theme customization settings in JSON |
| MM-18425 | Module: cmp-mv-flex | ComponentModule_Initialize_JSON_Callback incorrectly outputs “textsettings” when there are no textsettings fields present |
| MM-18426 | Module: cmp-mv-flex | Flex Component: Replace all uses of JSON_Encode / JSON_Boolean with encodejavascriptstring / encodejavascriptboolean |
| MM-18427 | Module: cmp-mv-flex | Flex Component: ComponentModule_Initialize_JSON_Callback should output all boolean values with “int” |
| MM-18429 | Module: cmp-mv-flex | Flex Component: ComponentModule_Initialize_JSON_Callback should utilize “removewhitespace” |
| MM-18431 | Module: cmp-mv-flex | Flex Components: Add OutputMinimalJSON flag for components |
| MM-17461 | Module: cmp-mv-theme | Theme Editor: Badges |
| MM-17468 | Module: discount_addon | Add-on Product Discount: Add support for Module Field UI via “discount” API version 26.03 |
| MM-17469 | Module: discount_basket | Basket Discount: Add support for Module Field UI via “discount” API version 26.03 |
| MM-17475 | Module: discount_basket_product | Basket Discount (Specific Products): Add support for Module Field UI via “discount” API version 26.03 |
| MM-17472 | Module: discount_buyxgety | Buy X Get Y Discount: Add support for Module Field UI via “discount” API version 26.03 |
| MM-17474 | Module: discount_costmarkup | Markup from Cost Discount: Add support for Module Field UI via “discount” API version 26.03 |
| MM-17471 | Module: discount_product | Product Discount: Add support for Module Field UI via “discount” API version 26.03 |
| MM-17473 | Module: discount_saleprice | Specific Sale Price Discount: Add support for Module Field UI via “discount” API version 26.03 |
| MM-17476 | Module: discount_shipping_basket | Shipping Discount (Entire Order): Add support for Module Field UI via “discount” API version 26.03 |
| MM-17477 | Module: discount_shipping_product | Shipping Discount (Discounted Products Only): Add support for Module Field UI via “discount” API version 26.03 |
| MM-17470 | Module: discount_volume | Volume Pricing Discount: Add support for Module Field UI via “discount” API version 26.03 |
| MM-17923 | Module: endicialabels | Consolidate legacy StandardPost and ParcelSelect methods into single GroundAdvantage |
| MM-18123 | Module: endicialabels | Endicia Labels invalid combination COD with Insurance |
| MM-16522 | Module: epmivapay | MivaPay Fastlane |
| MM-18389 | Module: epmivapay | MivaPay Fastlane OCST content section shadows version |
| MM-18402 | Module: epmivapay | MivaPay Fastlane: Design QA Updates |
| MM-18448 | Module: epmivapay | MivaPay Fastlane: Render Fastlane Button in ComponentModule_Render_Start_Buttons |
| MM-18338 | Module: fedexrest | Reduce memory and CPU cost of shipping visibility package data |
| MM-17905 | Module: flatcat | Add UTF-8 BOM Support: Category Export |
| MM-17910 | Module: flatcus | Add UTF-8 BOM Support: Customer Export |
| MM-17912 | Module: flatord | Add UTF-8 BOM Support: Order Export |
| MM-18217 | Module: imagemanagement | Image Management: Use IMGS Privilege |
| MM-18037 | Module: multidomain | Additional URL Context Data |
| MM-18150 | Module: multidomain | Multi-Domain List “Selector” should automatically switch to the current context |
| MM-18010 | Module: packbyquantity | Pack by Quantity: Add support for Module Field UI via “boxpacking” API version 26.03 |
| MM-18011 | Module: packbyweight | Pack by Weight: Add support for Module Field UI via “boxpacking” API version 26.03 |
| MM-17904 | Module: prodexp | Add UTF-8 BOM Support: Product Export |
| MM-17526 | Module: productcharges | Product Charges: Collection Assign Dialog Improvements |
| MM-17488 | Module: productdata | Product Data Fields and Feeds: Add support for Module Field UI via “scheduledtask” API version 26.03 |
| MM-18357 | Module: recaptcha_v3 | Integrate reCAPTCHA v3 into Miva Merchant |
| MM-18387 | Module: recaptcha_v3 | reCAPTCHAv3 Support for JSON Function Protection |
| MM-17962 | Module: report_geosales | Geographic Sales Report: State / Country database comparisons should be case insensitive |
| MM-18231 | Module: report_google_analytics | Shopper Engagement Logging - Report Module - Google Cloud |
| MM-18244 | Module: report_google_analytics | Google Analytics Report: Base Properties |
| MM-18245 | Module: report_google_analytics | Google Analytics Report: Realtime Visitors |
| MM-18246 | Module: report_google_analytics | Google Analytics Report: Realtime Pages |
| MM-18249 | Module: report_google_analytics | Google Analytics Report: Vital Statistics |
| MM-18250 | Module: report_google_analytics | Google Analytics Report: Top Pages |
| MM-18251 | Module: report_google_analytics | Google Analytics Report: Page Performance |
| MM-18253 | Module: report_google_analytics | Google Analytics Report: Sales Funnel |
| MM-18254 | Module: report_google_analytics | Google Analytics Report: Merchandising Rank |
| MM-18256 | Module: report_google_analytics | Google Analytics Report: Merchandising Performance |
| MM-18257 | Module: report_google_analytics | Google Analytics Report: Merchandising Product Rank |
| MM-18407 | Module: report_google_analytics | Google Analytics Report - Dashboard display should show configuration required notification when not configured |
| MM-18439 | Module: report_google_analytics | Google Analytics Reporting - Property Lookup Dialog |
| MM-18452 | Module: report_google_analytics | Google Analytics Reporting - Dashboard Design Improvements |
| MM-18042 | Module: reviewbaskets | Review Baskets: “Shop as Customer” button has incorrect formatting |
| MM-17489 | Module: searchspringlive | Searchspring Live Indexing and Pricing: Add support for Module Field UI via “scheduledtask” API version 26.03 |
| MM-17913 | Module: shipexport | Add UTF-8 BOM Support: Shipment Information Export |
| MM-17490 | Module: stdschtasks | Standard Scheduled Tasks: Add support for Module Field UI via “scheduledtask” API version 26.03 |
| MM-17958 | Module: tforcefreight | TForce Freight should use the l.package:product_ids array instead of l.package:items when checking package options |
| MM-17446 | Module: tgreviews | Integrate Product Reviews module into Miva Merchant |
| MM-18322 | Module: tgreviews | Add Runtime_Load_Product_Reviews JSON endpoint |
| MM-18323 | Module: tgreviews | Expose Product Reviews form and list settings through ComponentModule_Initialize |
| MM-18351 | Module: tgreviews | Add Runtime_Product_Review_Insert JSON endpoint |
| MM-18363 | Module: tgreviews | Product Reviews: Add Hidden option to review field settings |
| MM-17445 | Module: TGWaitlist | Integrate Wait List module into Miva Merchant |
| MM-17632 | Module: TGWaitlist | Wait List ComponentModule_Initialize should indicate that the module is enabled |
| MM-18075 | Module: upsinsureshield | UPS InsureShield: Merchant Self-Coverage |
| MM-18255 | Module: upsinsureshield | UPS InsureShield: Merchant Self Coverage UI |
| MM-18278 | Module: upsinsureshield | UPS InsureShield: Alternative Checkout Support |
| MM-18293 | Module: upsinsureshield | UPS InsureShield should address numeric fields partially treated as alphanumeric |
| MM-17914 | Module: uriexport | Add UTF-8 BOM Support: URI Export |
| MM-17467 | Price Groups | Price Group Add / Edit Dialog: Add Module Field UI Support |
| MM-18046 | Reporting Subsystem | Add UTF-8 BOM Support: JSON Report CSV Export |
| MM-18350 | Reporting Subsystem | MMCanvasChart should support minute intervals |
| MM-17487 | Scheduled Tasks | Scheduled Task Add / Edit Dialog: Add Module Field UI Support |
| MM-18378 | Setup Script | Add ability for setup.xml to define a module’s priority |
| MM-18009 | Shipping/Packaging Rules | Box Add / Edit Dialog: Add Module Field UI Support |
| MM-17518 | Template Subsystem | Framework export should include Layout and Fragment page types for exported items |
| MM-18038 | Template Subsystem | Multi-Domain Aware CORS Headers for BranchList_Load_Runtime |
| MM-18178 | Template Subsystem | TemplateManager_Determine_Branch fails to update the store:framework variable |
| MM-18317 | Theme Editor | Intermittent Theme Editor item preview cutoffs |
| MM-17458 | Upgrade Subsystem | Upgrade API |
| MM-17928 | Upgrade Subsystem | Streaming Updates: Module Patch Support |
| MM-18052 | Upgrade Subsystem | Upgrade API Maintenance Mode |
| MM-18392 | Utility Library | Update Image_Size_CanBeDeferred to match new defaults |
Shadows Framework Features/Improvements/Bugs#
| Bug ID | Description |
|---|---|
| SHDWS-301 | Prevent multiple form submits from CPCE page |
| SHDWS-302 | Prevent multiple form submits from CPCA page |
| SHDWS-300 | Prevent multiple form submits from OPAY page |
| SHDWS-1074 | MivaPay Vault: Skeleton Loading Screens: OPAY, CPCE, & CPCA |
| SHDWS-1195 | MMX: Adopt &mvt:instance:json; and establish a secondary server-data payload pattern |
| SHDWS-1226 | MMX: Runtime_JSON_API_Call: Support Runtime JSON CAPTCHA |
| SHDWS-578 | Product List: Product Card: Flags |
| SHDWS-1024 | Product List: Attribute Swatches should account for inventory |
| SHDWS-1177 | mmx-category-carousel: Image property srcset usage |
| SHDWS-1207 | Normalize the responsive image sizes property into the styleguide.js |
| SHDWS-1233 | MMX: Expose content source (category / showcase / search term) for GA4 |
| SHDWS-1146 | Theme Editor: Badges Integrated into MMX Components |
| SHDWS-1151 | mmx-category-list: ItemList JSON+LD |
| SHDWS-1181 | mmx-category-list: JSON+LD Auto, Fragment, or None |
| SHDWS-1218 | Product List & Category List: Should render multiple fragments |
| SHDWS-1228 | MMX: Consolidate Structured Data fragments into a single template |
| SHDWS-1250 | MMX: Badge properties are missing preview_property_selector |
| SHDWS-1176 | mmx-combination-facet: Image property srcset usage |
| SHDWS-1175 | mmx-contact-form: Image property srcset usage |
| SHDWS-1192 | Form Input Range: min/max should auto-correct when min is greater than max |
| SHDWS-1193 | Form Input Range: handle when low input/slider goes above the high (and vice versa) |
| SHDWS-1170 | mmx-hero: Image property srcset usage |
| SHDWS-1171 | mmx-hero-slider: Image property srcset usage |
| SHDWS-1173 | mmx-image-across: Image property srcset usage |
| SHDWS-1172 | mmx-image-and-text: Image property srcset usage |
| SHDWS-1200 | MMX_ProductCarousel: #canLoadData() .length truthiness checks fail on numeric category/product codes |
| SHDWS-1232 | Product List and Product Carousel should display advisory messages for sort fields |
| SHDWS-1084 | Product Details: New “Wait List” Detail |
| SHDWS-1141 | Product Details: Add properties to control which inventory-messages display |
| SHDWS-1154 | Product Details: Configurable Attribute Swach Styling per Attribute Type & Code |
| SHDWS-1179 | mmx-product-details: JSON+LD Auto, Fragment, or None |
| SHDWS-1185 | mmx-product-details: Advanced Data Fragment (quanlimits) |
| SHDWS-1216 | mmx-product-details: Product Reviews: New Detail Types & Web Components |
| SHDWS-1236 | mmx-product-details: Move JSON omit settings to the component level |
| SHDWS-1150 | mmx-product-list: ItemList JSON+LD |
| SHDWS-1180 | mmx-product-list: JSON+LD Auto, Fragment, or None |
| SHDWS-1217 | mmx-product-list: Facet tg_rating display type |
| SHDWS-1174 | mmx-text-banner: Image property srcset usage |
| SHDWS-1070 | Add Loading Framework Extension |
| SHDWS-1237 | Update Shadows to Google Analytics 1.4.0 |
| SHDWS-1238 | Flex Items should use base=”default” |
| SHDWS-1240 | GTM container snippet should output after the data layer in head_tag |
| SHDWS-1212 | Mini-basket: Opening mini-basket right after adding to cart breaks toggle system |
| SHDWS-1144 | Theme Editor: Framework Establishes Default Theme Badges |