
Loads on Hyvä without touching the theme
Sales Agent for Hyvä
A chatbot for the storefront you made fast. The ZestIQ Sales Agent loads on Hyvä without jQuery, RequireJS or a theme change, answers from your Magento catalog, adds to cart and tracks orders, and keeps the page light.
See the Live DemoWeight is the point
2.5 s LCP threshold41 intents out of the box
A Hyvä storefront is a decision about weight. Luma shipped jQuery, RequireJS and Knockout and loaded whole bundles whether a page needed them or not; Hyvä replaces that stack with Tailwind CSS and Alpine.js, and a merchant pays for the rebuild to pass Core Web Vitals on a phone: a Largest Contentful Paint within 2.5 seconds, an Interaction to Next Paint of 200 milliseconds or less and a layout shift under 0.1.
Most chat widgets were written for the old stack. They assume jQuery, bring a bundle of their own and run on every page, so the first thing added to a finished Hyvä store is often the thing that gives the speed back.
The ZestIQ Sales Agent treats Hyvä as a first-class storefront. The widget does not depend on jQuery or RequireJS, loads without touching the theme, and speaks to Magento through the same OAuth connection as on Luma. It sells from your catalog, adds to cart and tracks orders, and it is grounded, so it cannot invent a product or a price.
Where widgets fail
Each one hands back something the Hyvä rebuild paid for. The Sales Agent was designed around them.

A generic widget ships its own framework, often jQuery, to a storefront that has just removed it. The theme is lean and the chat is not.

A third-party script that runs on every page costs Interaction to Next Paint on every page. The store that paid for green scores watches them turn amber.

Widgets that expect RequireJS and Knockout fail to load or fight the theme. The store that invested in speed gets a slow, broken chat.

A model answering from memory describes a product you do not sell and quotes a price you never set. On a store with customer-group pricing, that is a complaint and a refund.

A nightly export misses the price change, the stock-out and the new SKU. The customer is told a product is available because it was, yesterday.

Without a real Magento integration the chat can talk about products but cannot add one to the cart, check an order or see the account. A search box with manners.
In the conversation
Exact SKU first, then a prefix match, then semantic search across the attributes you choose. A shopper can type a code, describe what they need or name the occasion, and the agent shortlists from your live catalog and says why.
Two products set against each other on the attributes that differ, in plain language, without the shopper opening two tabs. The comparison comes from your product data, not from the model's memory.
The item goes in from the chat after the agent checks stock and options against Magento. The addition is attributed to the conversation, so you can see what the assistant sells.
Order status, carrier and tracking are shown only once the customer has verified the order is theirs, and never to anyone else.
Shipping, returns and warranty answers come from the policy pages you publish, indexed as knowledge, so the agent cannot invent a rule. Change the page and the answer changes.
When a question needs a person, the agent opens a ticket, a live chat or a callback and passes the order and the conversation so far, so your team does not start from the beginning.
Connect, tune, go live
The same connection the Sales Agent makes on any Magento 2 store, with the storefront step checked on staging before a customer sees it.
Accuracy and control
Days to live3 AI providers
The shopper sees a chat that behaves like the rest of a Hyvä store: it opens without a wait, answers in plain language and shows products from your catalog, for guests and logged-in customers, carried from page to page. Prices, stock, options and order status are read from Magento at the moment of the answer, so a price change or a sold-out size shows in the next reply.
Your team controls it from the admin panel without a developer: personas, boundaries and confidence thresholds per intent, product rules for what it may recommend, policy answers edited in place, every change a draft with a rollback. Anyone with the right role can step into a live conversation.
Emails, phone numbers, card numbers and identifiers are masked before storage, prompt-injection attempts are blocked before the model, and every security event is logged. The AI provider is your choice, OpenAI, Anthropic or self-hosted, set per workspace, which also settles where your data lives.
What it covers

Loads on Hyvä and Luma without touching the theme, in guest and logged-in modes, with the conversation kept across pages.

Exact SKU, then SKU prefix, then semantic search over the attributes you choose, so the cheap, certain steps run first.

Read from Magento at the moment of the answer, including customer-group prices and store views.

Validated add to cart from the chat, and order status for the verified owner only.

Prices, stock and policies only from your data, personal data masked before storage, prompt injection blocked before the model.

Carts and orders traced to the conversation, the intents customers bring, and AI spend by provider and model.
Trusted by 100+ companies
Keep reading



FAQ
Tell us about your store and we will come back with straight answers.
Book a DemoYes. The widget ships for Hyvä as well as Luma, it does not depend on jQuery or RequireJS, and it loads on a Hyvä theme without touching it. The connection to Magento is the same OAuth handshake on both frontends, so the storefront you run does not change how the agent reads your catalog, adds to cart or tracks orders.
Any script has a cost, which is why most widgets written for Luma are the wrong fit for Hyvä: they bring jQuery and a bundle of their own. The Sales Agent's widget was built without that stack. On staging we measure the page before and after it is placed, against Google's thresholds of 2.5 seconds for Largest Contentful Paint, 200 milliseconds for Interaction to Next Paint and 0.1 for layout shift, so you see the cost in numbers before a customer does.
No. Those are the libraries Luma shipped and Hyvä removed, and a widget that expects them either fails to load on Hyvä or fights the theme. The Sales Agent's widget runs without them, which is what lets it go onto a Hyvä storefront without a theme change.
The agent sells on the storefront pages: it finds products, compares them, checks stock and adds to cart through Magento, then sends the shopper to your checkout, whichever one you run. Magento's default checkout, Hyvä Checkout, which is a separate paid product, and a custom checkout all sit behind the same Magento cart the agent fills.
A Content Security Policy decides which scripts a page may run, so a widget has to be placed under it rather than around it. Tell us at the demo what your store's policy is. The widget goes onto a staging copy under that policy first, and anything the policy needs is agreed there, before go-live.
Luma, yes, out of the box, with the same widget. PWA Studio and custom headless storefronts connect through the same Magento integration, with the widget placed in the frontend application, which we scope at the demo.
Your own data. Prices, stock, orders and policies are read from Magento and from your published pages at the moment of the answer, never generated from the model's memory. When the data is silent, the agent says so and offers a person. It recognises 41 customer intents out of the box, each tuned to how your customers ask.
Only for the verified owner. Order status, carrier and tracking number are shown after the customer verifies the order is theirs, and never to anyone else. Your staff see conversations in the admin panel according to their role.
Days. The OAuth connection takes minutes, the catalog sync runs on its own with progress you can watch, and the widget goes onto the Hyvä storefront on staging once the intents are tuned to your store. The staging step is also where the page is measured before and after.
No. The agent connects to Magento, not to the theme, and the widget ships for both frontends, so a store that moves from Luma to Hyvä keeps the agent, its tuned intents and its history. Our Hyvä theme development page covers the move itself.
Per store, agreed after a demo on your own catalog, based on the catalog size, the storefronts and the conversation volume you expect. There is no price list on this site; the demo is where the conversation about price starts.
Your choice of OpenAI, Anthropic or a self-hosted model, switchable per workspace without a redeployment, which also settles where the data lives. Customer emails, phone numbers, card numbers and identifiers are masked before anything is stored, and prompt-injection attempts are blocked before they reach the model.
Yes. Personas, boundaries and confidence thresholds are set per intent in the admin panel, product rules decide what it may recommend, policy answers are edited in place, and every change is drafted before it goes live, with a rollback. Anyone with the right role can step into a live conversation and reply as a person.
Since 10 November 2025 the Hyvä Theme has been free and open source under the OSL 3.0 and AFL 3.0 licences, available on GitHub and through free licence keys. Hyvä Checkout and the commercial add-ons remain paid products. The Sales Agent does not depend on which of those you run.
Let’s build something great together!
Book a demo. We connect the agent to a staging copy of your catalog, place the widget on your Hyvä storefront and show it answering your customers' real questions, with the page weight measured.