Miva Merchant 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.
26R1.1 is minor release including the following feature highlights
MivaPay now supports Google Pay and Apple Pay, giving merchants faster, more convenient checkout options for shoppers. These wallet payment methods allow customers to quickly complete purchases using stored payment and shipping details.
These features can be enabled through MivaPay without replacing your existing credit card processor, allowing you to continue using your current gateway while adding modern wallet options to your checkout.
Want to learn more? See the MivaPay documentation.
Merchants can now control whether individual products appear in storefront search results using a new “Exclude from Search Results” setting at the product level.
This feature is useful for products that should remain active in the catalog but not be discoverable through search, such as discontinued items with SEO value, custom one-off products, or internal-use products.
When enabled, the product will be excluded from both standard and AI-powered search results, while remaining accessible via direct links, collections, or other merchandising tools.
The setting is available on the Add/Edit Product screen and can also be managed through imports, APIs, and product feeds.
Want to learn more? See the Creating a New Product.
Miva now integrates with UPS InsureShield, allowing merchants to offer shipping insurance during checkout. Customers can add optional protection against lost, damaged, or stolen packages.
Want to learn more? See the UPS InsureShield documentation.
For more information, links to feature documentation, and a full list of bug fixes in this release, visit: https://docs.miva.com/miva-26-01-01-feature-list
| Bug ID | Component | Description |
| MM-16844 | AI Subsystem | Vexture Settings Redesign |
| MM-17045 | AI Subsystem | An inactive AI search index can be set as the default merchandising index |
| MM-17190 | AI Subsystem | Vexture pgvector connection error causes duplicate "Status" text to be output |
| MM-17496 | AI Subsystem | Generative AI Redesign |
| MM-17498 | AI Subsystem | PostgreSQL vector database connection failure has the wrong verbiage |
| MM-16772 | Administrative Interface | MMInput should use the popover api to display invalid message |
| MM-16773 | Administrative Interface | MMMenuButton should use the popover api to display invalid message |
| MM-16774 | Administrative Interface | MMTextArea should use the popover api to display invalid message |
| MM-16929 | Administrative Interface | Exclude From Search Results: Core |
| MM-17060 | Administrative Interface | Category Transactions |
| MM-17061 | Administrative Interface | Category Transactions in JSON_Category_Insert |
| MM-17062 | Administrative Interface | Category Transactions in JSON_Category_Update |
| MM-17081 | Administrative Interface | History drop-down draws duplicate entries after closing the History Manager |
| MM-17331 | Administrative Interface | MMTabDialog: Add support for "steps" |
| MM-17357 | Administrative Interface | mouseClickType( e ) uses the wrong comparison value for middle click when using event.button |
| MM-17362 | Administrative Interface | Rapidly clicking "New Order" from Order Processing can create multiple orders before the overlay is displayed |
| MM-17402 | Administrative Interface | MMTabDialog does not properly disable list interactions when list tab is not visible |
| MM-17455 | Administrative Interface | dispatchNewEvent is using deprecated initMouseEvent |
| MM-17456 | Administrative Interface | MMScreen's ReloadTop should pass MMScreen_Intercept |
| MM-17517 | Administrative Interface | Store Settings, multiple number fields cause a fatal error when left blank on update |
| MM-17524 | Administrative Interface | Page Builder / Theme Editor: Mouse events within the preview should bubble to the parent document |
| MM-17532 | Administrative Interface | MMSelectCustomElement does not correctly set or get the Menu, Error, and Button class names |
| MM-17533 | Administrative Interface | MMTabDialog should support auto-height in step mode |
| MM-17538 | Administrative Interface | Branch Copy Dialog should use MMTabDialog in step mode |
| MM-17539 | Administrative Interface | Changeset Merge Dialog should use MMTabDialog in step mode |
| MM-17573 | Administrative Interface | Fix long store name overflow and layout issues in left navigation |
| MM-17576 | Administrative Interface | ActionDialog: SetMessage does not declare "element" |
| MM-17577 | Administrative Interface | ActionDialog: onESC / onEnter functions trigger JavaScript error |
| MM-17588 | Administrative Interface | Create New Branch option in Branch menu can get lost at the bottom when many branches exist |
| MM-17602 | Administrative Interface | Allow MMTextEditor's Rich Text Mode on templates |
| MM-17615 | Administrative Interface | Manual input form fields should disable font ligatures |
| MM-17630 | Administrative Interface | AI Insights advisory notice |
| MM-17631 | Administrative Interface | AI Insights suggestions are not aligned correctly in fullscreen mode |
| MM-17681 | Administrative Interface | Safari scrolling issue in Miva 26 |
| MM-17688 | Administrative Interface | MMScreen: Displayed scrollbar positions not updated after clicking on the scrollbar track |
| MM-16961 | Collections | Exclude From Search Results: Collections |
| MM-16960 | Copy Product | Exclude From Search Results: Copy Product |
| MM-17242 | Core JSON | JSON Image Add Functions Should Allow base64 Encoded Images |
| MM-17330 | Core JSON | Runtime category / product list API function caching does not take into account the HTTP host |
| MM-17332 | Core JSON | JSON Runtime API function caching does not honor store-level cookie Cache Settings |
| MM-17245 | Customers | Shop as Customer should fall back to customer ship name when bill name is absent |
| MM-16930 | Database Layer | Exclude From Search Results: Search |
| MM-16969 | Database Layer | Exclude From Search Results: Variant Generation |
| MM-17578 | Feature Engagement Logging | Update fel-dynamic signature verification to multiple versions of Miva Merchant |
| MM-17582 | MMList | Optional price custom fields have a value of "null" when drawing their input fields within MMList |
| MM-17710 | MMList | DrawMMListCheckbox_Edit will initialize to checked state when the value of "checked" is blank |
| MM-17082 | Module: avatax | AvaTax incorrectly warns about changes being lost when editing settings on the Edit Product screen |
| MM-17063 | Module: categoryimport | Category Transactions in Category Import |
| MM-17569 | Module: cmp-cssui-mivapay | MivaPay should remove request form after submit |
| MM-17295 | Module: cmp-cssui-searchfield | CSSUI Search Field should not force "Category_Code" in product links |
| MM-17296 | Module: cmp-mv-attributemachine | AttributeMachine.js should support multiple swatch-select attributes on a product |
| MM-17202 | Module: epmivapay | Embedded Path MivaPay: Google Pay Support |
| MM-17225 | Module: epmivapay | Embedded Path MivaPay: Apple Pay Support |
| MM-17520 | Module: epmivapay | MivaPay should fallback to using the shipping address when no billing address is provided during Venmo transactions |
| MM-17561 | Module: epmivapay | MivaPay settings may display incorrect values after onboarding refresh |
| MM-16966 | Module: multidomain | Exclude From Search Results: Multi-Domain |
| MM-17367 | Module: mvcanadapost | Canada Post should check for shipping country and zip before making a rate request |
| MM-17038 | Module: mvuspsrest | Migration dialog incorrectly handles response errors |
| MM-17519 | Module: paypalcp | PayPal Complete Payments should fallback to using the shipping address when no billing address is provided during Venmo transactions |
| MM-16931 | Module: prodexp | Exclude From Search Results: Export Products to Flat File |
| MM-16973 | Module: productcharges | Exclude From Search Results: Product Charges and Fees |
| MM-17315 | Module: productcharges | Product Charges and Fees Assign Products dialog should be resizeable |
| MM-16970 | Module: productdata | Exclude From Search Results: Product Data Fields and Feeds |
| MM-16932 | Module: productimport | Exclude From Search Results: Product Import |
| MM-17029 | Module: quote | Manage Quotes fails to call TaxModule_ProcessOrder when converting a quote to an order |
| MM-17548 | Module: quote | Module: quote - Update the Shadows templates to match the framework's current styles |
| MM-17652 | Module: quote | The Quote Information item can generate empty custom field array elements leading to invalid output |
| MM-17656 | Module: quote | The Quote Information item does not include the quote terms |
| MM-16972 | Module: stdschtasks | Exclude From Search Results: Standard Scheduled Tasks |
| MM-17083 | Module: taxcloud | TaxCloud incorrectly warns about changes being lost when editing settings on the Store Details screen |
| MM-17084 | Module: taxjar | TaxJar incorrectly warns about changes being lost when editing settings on the Store Details screen |
| MM-16964 | Module: templatefeed | Exclude From Search Results: Template Based Feed |
| MM-17366 | Module: tforcefreight | TForce Freight should check for shipping state and zip before making a rate request |
| MM-17668 | Module: upsinsureshield | UPS InsureShield uses Sandbox endpoints / credentials for all calls |
| MM-17380 | Module: upsrest | UPS Rest should check for total weight, ship country, and conditionally ship zip before making a rate request |
| MM-17593 | Module: upsrest | UPS Shipping: Landing page container has the wrong styling |
| MM-16967 | Module: variantimport | Exclude From Search Results: Variant Import |
| MM-17509 | Page Builder | Converting a flex property from Legacy to Theme mode should apply defaults |
| MM-17030 | Provisioning | Scheduled Tasks should not permit Every X values less than 1 |
| MM-17046 | Reporting Subsystem | Report provisioning doesn't have a default value for date_group |
| MM-17391 | Search | Runtime Search Log: Cookie Handling and Incremental Search |
| MM-17510 | Search | Blended relational search: Sort by Relevance does not function properly for custom fields |
| MM-16959 | Subscriptions | Exclude From Search Results: Subscriptions |
| MM-17521 | Template Subsystem | Branch Create dialog should be using Miva 26 styling |
| MM-16963 | Wish Lists | Exclude From Search Results: Wish Lists |
| Bug ID | Description |
| SHDWS-1081 | Fix the "Helpful Info" Padding on Account Pages |
| SHDWS-1042 | USPS Address Modal Grammar Issue with Invalid Shipping and Billing Inputs |
| SHDWS-1050 | Unable to close gift-certificate dialog after closing its forgot-password dialog |
| SHDWS-1076 | MivaPay should remove request form after submit |
| SHDWS-1029 | Optimized MMX_Element Event Listening |
| SHDWS-1031 | Add optional caching capabilities to Runtime_JSON_API_Call and MMX_FetchQueue |
| SHDWS-1030 | Product List: Allow swatches to change on hover or click |
| SHDWS-1066 | Fix product card flag stacking context causing wishlist icon to overlap search modal |
| SHDWS-1023 | Product Details & Featured Product: should render products with multiple swatch-select attributes |
| SHDWS-1025 | Text Banner background should be above the main site's background |
| SHDWS-1090 | Product Carousel: Changing the "Button Theme" option should apply |
| SHDWS-1077 | Product List: Fix Attribute Swatch + Hover Image Console Error |
| SHDWS-1067 | Deactivate Extra Preconnect CSS Resources |
| SHDWS-1071 | Add docker shadows-framework-dev npm scripts |
| SHDWS-1069 | Mobile: Search modal overlay remains after search input loses focus |