{"id":356481,"date":"2026-09-28T04:03:19","date_gmt":"2026-09-28T04:03:19","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/idea89-ai-shopping-assistant\/"},"modified":"2026-09-28T04:02:58","modified_gmt":"2026-09-28T04:02:58","slug":"idea89-ai-shopping-assistant","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/idea89-ai-shopping-assistant\/","author":23552181,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.2.3","stable_tag":"1.2.3","tested":"7.1.2","requires":"6.4","requires_php":"7.4","requires_plugins":null,"header_name":"IDEA89 AI Shopping Assistant","header_author":"4K Technologies Ltd","header_description":"AI shopping assistant for WooCommerce. Answers product and policy questions, recommends products from your catalogue, and adds them to the basket.","assets_banners_color":"c8c8c5","last_updated":"2026-09-28 04:02:58","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/github.com\/idea89hq\/wordpress-plugin","header_author_uri":"https:\/\/idea89.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":47,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.2.3":{"tag":"1.2.3","author":"idea89hq","date":"2026-09-28 04:02:58","revision":3716266}},"upgrade_notice":{"1.2.3":"<p>Security hardening only: the storefront globals are JSON-encoded and the in-chat checkout page is printed through WordPress&#039;s own functions. No settings or behaviour change.<\/p>","1.2.2":"<p>Security hardening: the widget loader is enqueued through WordPress and every value written into an inline script is hex-escaped. No settings or behaviour change.<\/p>","1.2.1":"<p>The Assistant name field now sets the name shoppers see, a new Checkout display setting is shared with your IDEA89 dashboard (default: Full window, unchanged), and the settings screen shows whether both halves of personalization are on. Nothing changes on upgrade unless you edit one of these.<\/p>","1.2.0":"<p>Adds the Assistant checkout mode setting (default: Express handoff), an Agentic Commerce product feed setting (default: off), and a pinned checkout bar above the message box (default: on, only when the basket has items). Only the bar changes on upgrade unless you switch the others on.<\/p>","1.1.1":"<p>Recognises a subfolder install as its own account and names the connected site when you test your key. No change if your shop is at the domain root.<\/p>","1.1.0":"<p>Adds order tracking, a store finder page and shopper personalization. All three are off until you switch them on, so nothing changes on upgrade.<\/p>","1.0.3":"<p>Translation loading fix. No changes to syncing or to the storefront widget.<\/p>","1.0.2":"<p>Corrects the plugin header links. No functional change.<\/p>","1.0.1":"<p>Admin housekeeping and clearer documentation. No changes to syncing or to the storefront widget.<\/p>","1.0.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3716264,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3716264,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3716264,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3716264,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.2.3"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3716264,"resolution":"1","location":"assets","locale":"","width":1280,"height":820},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3716264,"resolution":"2","location":"assets","locale":"","width":1280,"height":820},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3716264,"resolution":"3","location":"assets","locale":"","width":1280,"height":820}},"screenshots":{"1":"Chat widget on the storefront, answering a product question and offering to add it to the basket.","2":"IDEA89 admin settings: connection, appearance and content sync options.","3":"Content Sync screen showing auto-detected FAQ sources."}},"plugin_section":[],"plugin_tags":[2353,2364,2369,139790,286],"plugin_category":[45],"plugin_contributors":[283044],"plugin_business_model":[],"class_list":["post-356481","plugin","type-plugin","status-publish","hentry","plugin_tags-ai","plugin_tags-chatbot","plugin_tags-customer-support","plugin_tags-product-recommendations","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-idea89hq","plugin_committers-idea89hq"],"banners":{"banner":"https:\/\/ps.w.org\/idea89-ai-shopping-assistant\/assets\/banner-772x250.png?rev=3716264","banner_2x":"https:\/\/ps.w.org\/idea89-ai-shopping-assistant\/assets\/banner-1544x500.png?rev=3716264","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/idea89-ai-shopping-assistant\/assets\/icon-128x128.png?rev=3716264","icon_2x":"https:\/\/ps.w.org\/idea89-ai-shopping-assistant\/assets\/icon-256x256.png?rev=3716264","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/idea89-ai-shopping-assistant\/assets\/screenshot-1.png?rev=3716264","caption":"Chat widget on the storefront, answering a product question and offering to add it to the basket."},{"src":"https:\/\/ps.w.org\/idea89-ai-shopping-assistant\/assets\/screenshot-2.png?rev=3716264","caption":"IDEA89 admin settings: connection, appearance and content sync options."},{"src":"https:\/\/ps.w.org\/idea89-ai-shopping-assistant\/assets\/screenshot-3.png?rev=3716264","caption":"Content Sync screen showing auto-detected FAQ sources."}],"raw_content":"<!--section=description-->\n<p>IDEA89 adds a floating chat widget to your WooCommerce storefront. Shoppers ask it questions in plain language, \"what's waterproof under \u00a350?\", \"do you ship to Ireland?\", \"what's your return policy?\", and it answers from your actual catalogue and site content, then adds the right product straight to the basket when asked.<\/p>\n\n<p>The plugin's job is entirely on the WordPress side: it reads your store and keeps a copy of it in sync with the IDEA89 service, and it prints a small loader script that renders the chat widget on the storefront. All of the AI itself (understanding the question, searching your catalogue, generating the reply) runs on IDEA89's servers, not on your WordPress install. See <strong>External services<\/strong> below for exactly what that means for your data.<\/p>\n\n<h4>What it syncs<\/h4>\n\n<ul>\n<li><strong>Products<\/strong>: name, description, price, images, categories, attributes, variations, stock levels, and review excerpts<\/li>\n<li><strong>Categories<\/strong>: so the assistant understands how your catalogue is organised<\/li>\n<li><strong>Pages<\/strong>: About, shipping, returns, and other policy pages, so the assistant can answer from them<\/li>\n<li><strong>Coupons<\/strong>: active, unexpired discount codes, so the assistant can mention live promotions<\/li>\n<li><strong>Store details<\/strong>: store name, currency, and the context you provide in settings<\/li>\n<li><strong>FAQs<\/strong>: auto-detected from your content (see Limitations below), with a settings screen to review what was found<\/li>\n<li><strong>Posts and other public content types<\/strong>: blog posts and any custom post type you opt in, indexed and searched rather than dumped into every reply, so a large blog doesn't overwhelm the assistant<\/li>\n<\/ul>\n\n<h4>Order tracking (optional)<\/h4>\n\n<p>Switch this on and shoppers can ask about an order in the chat instead of emailing you. They see status, items, delivery method and a tracking link where one exists.<\/p>\n\n<p>Order details never reach IDEA89 or any AI provider. The chat panel asks your own site for them, from the shopper's browser, using the login they already have. Signed-in shoppers see their recent orders. Guests can look up a single order with its number and the email address used to place it, limited to four attempts an hour so the form cannot be used to probe for which orders exist. Tracking numbers are read from the official WooCommerce Shipment Tracking extension or AfterShip if you use either.<\/p>\n\n<h4>Store finder (optional)<\/h4>\n\n<p>Publishes a store finder page at a URL you choose, with a searchable map and your own header and footer around it. Headings, help text and the meta description are all editable, and each store is published as structured data so search engines can read its address and opening details. Your store list is managed in your IDEA89 dashboard. Availability depends on your plan.<\/p>\n\n<h4>Personalization (optional)<\/h4>\n\n<p>Lets the assistant recognise a returning customer so it can pick up where a conversation left off. Your site signs a short-lived token holding only a customer reference, a group reference and whether the shopper is signed in. No name, email address or order history is sent, the token expires after an hour, and it cannot be forged in the browser because the signing secret never leaves your server.<\/p>\n\n<p>Sync runs in the background via Action Scheduler (bundled with WooCommerce), triggered by product, stock, coupon and content saves, plus a daily full reconcile. Nothing runs until you enter an API key, and nothing blocks a page save waiting on a network call. Every sync is queued and processed asynchronously.<\/p>\n\n<h4>What it adds to the storefront<\/h4>\n\n<p>A single, asynchronously-loaded script tag that renders the chat widget. It does not touch your theme, does not add page weight to the initial render, and adds products to the WooCommerce cart through the standard Store API, the same cart your theme already shows.<\/p>\n\n<p>The chat panel carries a small \"idea89\" label in its footer, linking to idea89.com. This is part of the hosted assistant's own interface, the same way an embedded video player carries its provider's mark, and is rendered by the IDEA89 service, not injected into your theme or content. It appears only inside the chat panel, and only when a shopper opens it.<\/p>\n\n<h4>What it does not do<\/h4>\n\n<ul>\n<li>It does not store your product catalogue, page content, or chat transcripts anywhere in your WordPress database. That data lives on the IDEA89 service (see External services).<\/li>\n<li>It does not modify your theme, checkout flow, or existing cart behaviour.<\/li>\n<li>It does not require a WordPress.com account, and it does not phone home for anything beyond what is documented below.<\/li>\n<\/ul>\n\n<h3>External services<\/h3>\n\n<p>This plugin connects your store to the IDEA89 SaaS API at <strong>api.idea89.com<\/strong>, a third-party service operated by 4K Technologies Ltd, in order to power the chat assistant. This is a paid service; a plan and an API key from your <a href=\"https:\/\/app.idea89.com\">IDEA89 dashboard<\/a> are required for the plugin to do anything.<\/p>\n\n<p><strong>Nothing is transmitted until you enter an API key and save it in Settings.<\/strong> With no key configured, every sync is a no-op and the storefront widget does not load.<\/p>\n\n<p>Once a key is configured, the following data is sent to api.idea89.com:<\/p>\n\n<ul>\n<li><strong>Catalogue data<\/strong>: product names, descriptions, prices, images (URLs), categories, attributes, variations, stock levels, and review excerpts, sent when a product is saved, when stock changes, and on a daily reconcile.<\/li>\n<li><strong>Page and post content<\/strong>: the text of WordPress pages and (if you opt in under Content Sync) posts and other public content types, sent when that content is saved or on the daily reconcile, so the assistant can answer questions from it.<\/li>\n<li><strong>Coupon codes<\/strong>: active, unexpired coupon codes and their terms, so the assistant can mention live promotions.<\/li>\n<li><strong>Store details<\/strong>: your store name, currency, and any store-context text you enter in Settings.<\/li>\n<li><strong>Shopper chat messages<\/strong>: when a visitor uses the widget, their messages are sent directly from their browser to api.idea89.com to generate a reply. This traffic does not pass through your WordPress server.<\/li>\n<li><strong>Your site's domain and your API key<\/strong>, sent with every request, so IDEA89 can identify which store the data belongs to.<\/li>\n<\/ul>\n\n<p>The widget itself is served from api.idea89.com rather than bundled into the plugin, because the assistant's interface is part of the hosted service and is updated centrally. The plugin prints only the loader tag and your public configuration.<\/p>\n\n<p>No data is sent for training third-party AI models on other customers' behalf, and the plugin never transmits WordPress user accounts, passwords, or payment details.<\/p>\n\n<p>Full terms and privacy policy for the IDEA89 service: <a href=\"https:\/\/idea89.com\/terms\">Terms of Service<\/a> and <a href=\"https:\/\/idea89.com\/privacy\">Privacy Policy<\/a>.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin to <code>\/wp-content\/plugins\/<\/code>, or install it through the WordPress admin under Plugins &gt; Add New &gt; Upload Plugin.<\/li>\n<li>Activate the plugin. WooCommerce 8.0 or later must already be installed and active. If it isn't, the plugin shows an admin notice and stays inactive rather than causing errors.<\/li>\n<li>Go to <strong>IDEA89<\/strong> in the admin menu.<\/li>\n<li>Paste the API key from your <a href=\"https:\/\/app.idea89.com\">IDEA89 dashboard<\/a> and save.<\/li>\n<li>Tick <strong>Enable assistant<\/strong>, choose what to sync under Content Sync, and save again.<\/li>\n<li>Click <strong>Sync now<\/strong> to push your catalogue immediately, or wait for the background sync to pick it up.<\/li>\n<li>Visit your storefront. The chat widget appears in the corner you configured.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"which%20php%20versions%20are%20supported%3F\"><h3>Which PHP versions are supported?<\/h3><\/dt>\n<dd><p>PHP 7.4 through 8.4. The plugin source is parsed under both a real PHP 7.4 and a real PHP 8.4 runtime before every release, and the test suite is run with deprecations, notices and warnings all treated as failures, so it stays clean on the newest PHP as well as the oldest supported one.<\/p><\/dd>\n<dt id=\"does%20this%20cost%20anything%3F\"><h3>Does this cost anything?<\/h3><\/dt>\n<dd><p>The plugin itself is free. It connects to the IDEA89 SaaS service, which is a paid product with a free trial. See the <strong>External services<\/strong> section for what's sent and to which service, and https:\/\/idea89.com for current pricing.<\/p><\/dd>\n<dt id=\"will%20this%20slow%20down%20my%20site%3F\"><h3>Will this slow down my site?<\/h3><\/dt>\n<dd><p>The widget loads asynchronously in the footer, so it does not block the rest of the page from rendering. Catalogue and content sync run entirely in the background through Action Scheduler, and never run inline with a page request or an admin save.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20variable%20products%3F\"><h3>Does it work with variable products?<\/h3><\/dt>\n<dd><p>Yes. Variations sync with their attributes, and the widget renders a variant picker before adding the selected variation to the cart via the WooCommerce Store API.<\/p><\/dd>\n<dt id=\"will%20it%20find%20every%20faq%20on%20my%20site%3F\"><h3>Will it find every FAQ on my site?<\/h3><\/dt>\n<dd><p>Not automatically. FAQ detection looks for three things, in order: schema.org <code>FAQPage<\/code> structured data (what Yoast SEO and Rank Math's FAQ blocks emit), native WordPress <code>&lt;details&gt;<\/code>\/<code>&lt;summary&gt;<\/code> blocks, and a handful of known FAQ plugin post types. It does <strong>not<\/strong> read theme-specific accordions built from plain <code>&lt;div&gt;<\/code> markup with no structured data behind them, because guessing at arbitrary markup risks mangling a question or answer, which is worse than missing it. The Content Sync screen shows exactly what was detected, so you can see whether your FAQs were picked up, and add a small FAQ block or plugin if they weren't.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20i%20untick%20a%20content%20type%3F\"><h3>What happens if I untick a content type?<\/h3><\/dt>\n<dd><p>Unticking a content type (a post type, categories, pages, store details, or FAQs) under Content Sync stops it being sent on future syncs. It does <strong>not<\/strong> retroactively remove content that was already sent and indexed. That content can still be quoted to shoppers until you remove it directly (for example, by unpublishing or deleting the underlying page or post, which does withdraw it).<\/p><\/dd>\n<dt id=\"can%20i%20remove%20the%20%22idea89%22%20label%20from%20the%20chat%20widget%3F\"><h3>Can I remove the \"idea89\" label from the chat widget?<\/h3><\/dt>\n<dd><p>The label sits in the chat panel footer and is part of the hosted assistant's interface. Removing it is a white-label option, so ask us at support@idea89.com about your plan. The plugin itself adds no links, badges or credits anywhere else on your site, and nothing at all outside the chat panel.<\/p><\/dd>\n<dt id=\"does%20it%20store%20anything%20in%20my%20wordpress%20database%3F\"><h3>Does it store anything in my WordPress database?<\/h3><\/dt>\n<dd><p>Only its own settings (your API key, enabled\/disabled state, appearance and content-sync choices) as WordPress options, and nothing else. Your catalogue, page content and chat transcripts live on the IDEA89 service, not in your WordPress database. See <strong>External services<\/strong>.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20i%20deactivate%20or%20delete%20the%20plugin%3F\"><h3>What happens if I deactivate or delete the plugin?<\/h3><\/dt>\n<dd><p>Deactivating stops the widget and all syncing immediately. Deleting the plugin (via <code>uninstall.php<\/code>) removes every option it created and unschedules any pending Action Scheduler jobs. It does not delete data already synced to the IDEA89 service. Do that from your IDEA89 dashboard.<\/p><\/dd>\n<dt id=\"does%20it%20support%20hpos%20%28high-performance%20order%20storage%29%3F\"><h3>Does it support HPOS (High-Performance Order Storage)?<\/h3><\/dt>\n<dd><p>Yes, compatibility is declared explicitly, so the plugin works correctly with WooCommerce order tables enabled or disabled.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.2.3<\/h4>\n\n<ul>\n<li><strong>Storefront globals are JSON-encoded.<\/strong> The __IDEA89_WC block (Store API URL, nonce, basket URL) that the assistant reads on boot is now written with wp_json_encode and the same hex-escaping as every other inline value, in place of esc_js, which is meant for attribute context. Same keys, same values; nothing changes for shoppers.<\/li>\n<li><strong>In-chat checkout page is printed, not buffered.<\/strong> The stripped checkout page is now written the way a page template is: wp_head and wp_footer print themselves and every script element is printed by WordPress's own inline-script function, instead of the whole page being assembled into one string and echoed. Same page, same headers, same bridge messages.<\/li>\n<\/ul>\n\n<h4>1.2.2<\/h4>\n\n<ul>\n<li><strong>Widget loader is now enqueued.<\/strong> The storefront loader goes through wp_register_script \/ wp_enqueue_script with its configuration attached via wp_add_inline_script, instead of a script tag printed in the footer. Same script, same globals, same async behaviour; other plugins and themes can now see and filter it like any other enqueued script.<\/li>\n<li><strong>Hardened inline JSON.<\/strong> Every value the plugin writes into an inline script (checkout configuration, store finder analytics settings, store JSON-LD, checkout bridge messages) is now JSON-encoded with the characters &lt;, &gt;, &amp;, ' and \" hex-escaped, so no configured or merchant-entered value can close the script element early. Structured data and scripts are printed through WordPress's own inline-script functions.<\/li>\n<\/ul>\n\n<h4>1.2.1<\/h4>\n\n<ul>\n<li><strong>Assistant name now sets the name shoppers see.<\/strong> The Assistant name field under Appearance used to save a value nothing read; the name above the conversation came from your IDEA89 account. It is now that same name, so setting it here sets what shoppers see and how the assistant refers to itself when asked. Stored in your IDEA89 account rather than in WordPress, so it is the same in both places.<\/li>\n<li><strong>Checkout display, shared with your IDEA89 dashboard.<\/strong> New field under IDEA89 &gt; Checkout experience. Full window (the default, and how the assistant has behaved so far) gives checkout the whole screen; In the chat keeps checkout inside the assistant panel alongside the conversation. Changing it in WordPress or in the dashboard changes it in both.<\/li>\n<li><strong>Personalization status is spelled out.<\/strong> Personalization needs two switches on, one in WordPress and one in your IDEA89 dashboard. The settings screen now says which half is on and which is off, so a store where only one is on is no longer told nothing.<\/li>\n<\/ul>\n\n<h4>1.2.0<\/h4>\n\n<ul>\n<li><strong>Checkout experience.<\/strong> New setting under IDEA89 &gt; Checkout experience, matching the Magento 2 module. Express handoff is the default: after adding to basket, the assistant shows a basket summary card in chat with one button straight to your checkout. Checkout in chat opens your real WooCommerce checkout inside the assistant panel, with your site's header, footer and navigation stripped away so it fits the panel cleanly. Your payment methods, your shipping rules, your extensions all run exactly as they do on your normal checkout page; IDEA89 never sees a card number. Works whether your checkout page uses the classic checkout shortcode or the WooCommerce Checkout block; a settings screen status line beside the mode select tells you which one your store uses. If your checkout page uses neither, the assistant sends shoppers to it directly instead of showing it in the chat. Native checkout (beta) is also a real, working rung: the assistant collects delivery details in the conversation and places the order itself, on payment methods you choose from an allowlist that is empty by default, so a freshly switched-on store places no orders at all until you explicitly select one. Offline methods (cash on delivery, bank transfer, cheque) are recommended. Existing stores keep today's behaviour unless this setting is changed.<\/li>\n<li><strong>Agentic Commerce Protocol product feed.<\/strong> New setting under IDEA89 &gt; Agentic Commerce, off by default. Publishes your catalogue (names, descriptions, prices, stock and page links) at a public web address in the Agentic Commerce Protocol shape, so assistants such as ChatGPT can find and recommend your products. Works alongside any checkout experience setting. Does not give anyone access to your orders, customers or payment details, and nothing is published until you turn it on.<\/li>\n<li><strong>Pinned checkout bar.<\/strong> New \"Pinned checkout bar\" setting under IDEA89 &gt; Checkout experience, on by default. Shows a full-width bar above the assistant's message box reading \"Checkout, N items, total\" whenever the shopper's basket has items. Tapping it goes through the same checkout mode you already chose above; it is simply a second, always-visible way to reach checkout.<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>A WordPress install in a subfolder is now recognised as its own IDEA89 account, separate from a shop at the domain root. Test Connection names the site an API key belongs to, so a key pasted from the wrong site on the same domain is caught during setup rather than after a sync.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li><strong>Order tracking.<\/strong> Shoppers can ask \"where is my order?\" in the chat and see their own order status, delivery progress and tracking links. Order details are read by the shopper's browser directly from your site and are never sent to IDEA89 or to any AI provider. Signed-in shoppers see their recent orders; guests can look up one order with its number and the email used to place it. Off by default.<\/li>\n<li><strong>Store finder page.<\/strong> Publishes a searchable map of your stores at a URL you choose, styled to your brand and using your own theme's header and footer, with structured data so search engines can read your store details. Off by default.<\/li>\n<li><strong>Shopper personalization.<\/strong> Lets the assistant recognise a returning customer, using a short-lived signed token that carries no name, email address or order history. Off by default.<\/li>\n<li>Dashboard settings such as map provider and brand colour are now read from your IDEA89 account, so they are set once for every storefront you run.<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Text domain now matches the plugin slug, so WordPress can load translations for the plugin.<\/li>\n<li>Removed the redundant load_plugin_textdomain() call.<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>The plugin and author links in the plugin header now point to different pages, as WordPress requires: the plugin link goes to the plugin's own repository, the author link to idea89.com.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>The \"WooCommerce required\" notice now appears only on the dashboard and plugins screens, and can be dismissed, instead of showing on every admin page.<\/li>\n<li>Declares its WooCommerce dependency through the Requires Plugins header on WordPress 6.5 and later.<\/li>\n<li>Documents the assistant's footer label and why the widget is served from IDEA89 rather than bundled.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release. Catalogue, category, page, coupon, FAQ and content sync; storefront chat widget with WooCommerce Store API add-to-cart; admin settings with Test Connection and Sync Now.<\/li>\n<\/ul>","raw_excerpt":"An AI shopping assistant for WooCommerce. Answers product and policy questions, recommends products from your catalogue, and adds them to the basket.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/356481","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=356481"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/idea89hq"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=356481"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=356481"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=356481"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=356481"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=356481"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=356481"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}