{"id":365781,"date":"2026-09-22T17:36:47","date_gmt":"2026-09-22T17:36:47","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/themevix-ai-chat\/"},"modified":"2026-09-23T03:04:15","modified_gmt":"2026-09-23T03:04:15","slug":"themevix-ai-chat","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/themevix-ai-chat\/","author":23341499,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.1.2","requires":"6.5","requires_php":"7.4","requires_plugins":null,"header_name":"ThemeVix AI Chat","header_author":"themevix","header_description":"AI-powered WooCommerce chatbot with a React admin dashboard. Supports OpenAI, Claude, DeepSeek, Gemini, and Groq.","assets_banners_color":"7d9393","last_updated":"2026-09-23 03:04:15","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/themevix.com\/themevix-ai-chat","header_author_uri":"https:\/\/themevix.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":77,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"themevix","date":"2026-09-23 03:04:15","revision":3708383}},"upgrade_notice":{"1.0.0":"<p>Initial release. Requires WooCommerce and a self-hosted AI API key (OpenAI, Claude, DeepSeek, Gemini, or Groq).<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3707844,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3707844,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3707844,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3707844,"resolution":"772x250","location":"assets","locale":"","width":722,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3707844,"resolution":"1","location":"assets","locale":"","width":1280,"height":720},"screenshot-10.png":{"filename":"screenshot-10.png","revision":3707844,"resolution":"10","location":"assets","locale":"","width":1280,"height":720},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3707844,"resolution":"2","location":"assets","locale":"","width":1280,"height":720},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3707844,"resolution":"3","location":"assets","locale":"","width":1280,"height":720},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3707844,"resolution":"4","location":"assets","locale":"","width":1280,"height":720},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3707844,"resolution":"5","location":"assets","locale":"","width":1280,"height":720},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3707844,"resolution":"6","location":"assets","locale":"","width":1280,"height":720},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3707844,"resolution":"7","location":"assets","locale":"","width":1280,"height":720},"screenshot-8.png":{"filename":"screenshot-8.png","revision":3707844,"resolution":"8","location":"assets","locale":"","width":1280,"height":720},"screenshot-9.png":{"filename":"screenshot-9.png","revision":3707844,"resolution":"9","location":"assets","locale":"","width":1280,"height":720}},"screenshots":{"1":"Admin dashboard \u2014 conversation stats, setup status, and recent sessions at a glance","2":"Live Chat inbox \u2014 claim, assign, and reply to conversations in real time","3":"Lead Generation \u2014 capture, manage, and track leads from chat conversations","4":"CRM integration \u2014 connect HubSpot, Salesforce, Zoho, Pipedrive, and more","5":"Channels &amp; Integrations \u2014 configure WhatsApp, Messenger, Instagram, Telegram, Slack, Discord, and webhooks","6":"Knowledge Base \u2014 index products, pages, posts, and upload PDF, DOCX, TXT, or CSV files for RAG","7":"Privacy &amp; Compliance \u2014 GDPR consent, PII masking, data retention, and audit log","8":"AI Settings \u2014 choose provider, model, and API key; test and activate in one click","9":"Appearance \u2014 customize colors, widget position, and preview live in the dashboard","10":"Storefront chat widget \u2014 product cards with price, stock, and image shown inline"}},"plugin_section":[],"plugin_tags":[90336,2364,2379,194533,286],"plugin_category":[41,45],"plugin_contributors":[269834,278296],"plugin_business_model":[],"class_list":["post-365781","plugin","type-plugin","status-publish","hentry","plugin_tags-ai-chat","plugin_tags-chatbot","plugin_tags-live-chat","plugin_tags-openai","plugin_tags-woocommerce","plugin_category-communication","plugin_category-ecommerce","plugin_contributors-motaleb","plugin_contributors-themevix","plugin_committers-themevix"],"banners":{"banner":"https:\/\/ps.w.org\/themevix-ai-chat\/assets\/banner-772x250.png?rev=3707844","banner_2x":"https:\/\/ps.w.org\/themevix-ai-chat\/assets\/banner-1544x500.png?rev=3707844","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/themevix-ai-chat\/assets\/icon-128x128.png?rev=3707844","icon_2x":"https:\/\/ps.w.org\/themevix-ai-chat\/assets\/icon-256x256.png?rev=3707844","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/themevix-ai-chat\/assets\/screenshot-1.png?rev=3707844","caption":"Admin dashboard \u2014 conversation stats, setup status, and recent sessions at a glance"},{"src":"https:\/\/ps.w.org\/themevix-ai-chat\/assets\/screenshot-2.png?rev=3707844","caption":"Live Chat inbox \u2014 claim, assign, and reply to conversations in real time"},{"src":"https:\/\/ps.w.org\/themevix-ai-chat\/assets\/screenshot-3.png?rev=3707844","caption":"Lead Generation \u2014 capture, manage, and track leads from chat conversations"},{"src":"https:\/\/ps.w.org\/themevix-ai-chat\/assets\/screenshot-4.png?rev=3707844","caption":"CRM integration \u2014 connect HubSpot, Salesforce, Zoho, Pipedrive, and more"},{"src":"https:\/\/ps.w.org\/themevix-ai-chat\/assets\/screenshot-5.png?rev=3707844","caption":"Channels &amp; Integrations \u2014 configure WhatsApp, Messenger, Instagram, Telegram, Slack, Discord, and webhooks"},{"src":"https:\/\/ps.w.org\/themevix-ai-chat\/assets\/screenshot-6.png?rev=3707844","caption":"Knowledge Base \u2014 index products, pages, posts, and upload PDF, DOCX, TXT, or CSV files for RAG"},{"src":"https:\/\/ps.w.org\/themevix-ai-chat\/assets\/screenshot-7.png?rev=3707844","caption":"Privacy &amp; Compliance \u2014 GDPR consent, PII masking, data retention, and audit log"},{"src":"https:\/\/ps.w.org\/themevix-ai-chat\/assets\/screenshot-8.png?rev=3707844","caption":"AI Settings \u2014 choose provider, model, and API key; test and activate in one click"},{"src":"https:\/\/ps.w.org\/themevix-ai-chat\/assets\/screenshot-9.png?rev=3707844","caption":"Appearance \u2014 customize colors, widget position, and preview live in the dashboard"},{"src":"https:\/\/ps.w.org\/themevix-ai-chat\/assets\/screenshot-10.png?rev=3707844","caption":"Storefront chat widget \u2014 product cards with price, stock, and image shown inline"}],"raw_content":"<!--section=description-->\n<p>ThemeVix AI Chat adds an AI storefront chatbot to your WooCommerce shop. Shoppers can ask about products, check order status, compare items, and request a human agent \u2014 all from a customizable chat widget on your site.<\/p>\n\n<p><strong>You provide your own AI API key.<\/strong> This plugin does not include paid AI access and does not send store data to ThemeVix servers.<\/p>\n\n<h4>Key features<\/h4>\n\n<ul>\n<li><a href=\"https:\/\/react.dev\/\">React<\/a> admin dashboard with conversation inbox and usage statistics<\/li>\n<li>AI providers: OpenAI, Anthropic Claude, DeepSeek, Google Gemini, and Groq<\/li>\n<li>Product search, recommendations, comparison, upsells, and wishlist<\/li>\n<li>Order status and tracking help for logged-in customers; guest lookup with billing email verification<\/li>\n<li>Live chat handoff with agent assignment and offline message capture<\/li>\n<li>Knowledge base (RAG): index products, pages, posts, and upload PDF, DOCX, TXT, or CSV files<\/li>\n<li>Voice input (browser speech-to-text) and image understanding (OpenAI, Claude, Gemini)<\/li>\n<li>Customizable colors, position, bot name, welcome message, and display rules<\/li>\n<li>Compatible with WooCommerce HPOS (custom order tables)<\/li>\n<\/ul>\n\n<h4>Requirements<\/h4>\n\n<ul>\n<li>WordPress 6.5 or later (uses the Requires Plugins dependency header)<\/li>\n<li>WooCommerce 7.0 or later (required; tested up to 9.8)<\/li>\n<li>PHP 7.4 or later<\/li>\n<li>An API key from at least one supported AI provider (free tiers available from Gemini and Groq)<\/li>\n<\/ul>\n\n<h4>Important notes<\/h4>\n\n<ul>\n<li>API keys are encrypted in your WordPress database when OpenSSL is available.<\/li>\n<li>Visitor messages (and optional images) are sent only to the AI provider you configure.<\/li>\n<li>Google Fonts are <strong>disabled by default<\/strong>. Enable them under <strong>Appearance<\/strong> settings or with the <code>themevix_ai_chat_enqueue_google_fonts<\/code> filter.<\/li>\n<li><strong>Source code:<\/strong> the unminified source for every bundled admin script and stylesheet ships inside this plugin, in <code>admin\/src\/<\/code>. See the <strong>Source Code<\/strong> section below for build instructions.<\/li>\n<\/ul>\n\n<p>Support: <a href=\"mailto:contact.themevix@gmail.com\">contact.themevix@gmail.com<\/a><\/p>\n\n<h3>Privacy Policy<\/h3>\n\n<p>ThemeVix AI Chat stores chat data on your WordPress site and may send visitor messages to third-party AI providers you configure. ThemeVix does not collect store data on its own servers.<\/p>\n\n<p><strong>Data stored on your site:<\/strong> chat messages, conversation metadata, optional visitor name\/email, session identifiers, wishlist data, knowledge-base uploads, and plugin settings (including API keys).<\/p>\n\n<p><strong>Data sent externally (when configured):<\/strong> chat message text and optional images or audio to your chosen AI provider; optional channel, CRM, and notification payloads to services you enable; Google Fonts stylesheet requests when enabled; optional browser speech-to-text when the visitor uses voice input.<\/p>\n\n<p><strong>Your responsibility:<\/strong> Add this plugin's data practices to your store privacy policy and cookie notice. See <strong>External Services<\/strong> below for each provider's privacy policy.<\/p>\n\n<p>ThemeVix legal pages: <a href=\"https:\/\/themevix.com\/privacy-policy\/\">Privacy Policy<\/a> \u00b7 <a href=\"https:\/\/themevix.com\/terms-of-service\/\">Terms of Service<\/a><\/p>\n\n<h3>External Services<\/h3>\n\n<p>This plugin may connect to third-party services that you enable and configure. No data is sent to any service below until you turn it on and provide credentials (or, for Google Fonts, until you enable the setting). ThemeVix does not operate these services, does not proxy your API traffic, and does not receive store or chat data. ThemeVix is not affiliated with Meta, WhatsApp, Instagram, Messenger, Telegram, OpenAI, Anthropic, Google, Groq, DeepSeek, Slack, Discord, HubSpot, Salesforce, Zoho, Pipedrive, Freshworks, Bitrix24, ActiveCampaign, or Mailchimp.<\/p>\n\n<p>ThemeVix website (author documentation only; this plugin does not call ThemeVix servers:\n<strong>Privacy policy:<\/strong> <a href=\"https:\/\/themevix.com\/privacy-policy\/\">https:\/\/themevix.com\/privacy-policy\/<\/a>\n<strong>Terms of service:<\/strong> <a href=\"https:\/\/themevix.com\/terms-of-service\/\">https:\/\/themevix.com\/terms-of-service\/<\/a><\/p>\n\n<p><strong><a href=\"https:\/\/fonts.google.com\/\">Google Fonts<\/a> (optional)<\/strong><\/p>\n\n<p><strong>What it is used for:<\/strong> Optional \"Plus Jakarta Sans\" webfont in the admin dashboard and storefront widget.<\/p>\n\n<p><strong>What is sent and when:<\/strong> Only if Google Fonts are enabled in Appearance settings. The browser requests the stylesheet from fonts.googleapis.com (and font files from fonts.gstatic.com). Google may receive the visitor or admin IP address and user-agent as part of a normal font request.<\/p>\n\n<p><strong>Service URL:<\/strong> <a href=\"https:\/\/fonts.google.com\/\">https:\/\/fonts.google.com\/<\/a>\n<strong>Terms of use:<\/strong> <a href=\"https:\/\/policies.google.com\/terms\/\">https:\/\/policies.google.com\/terms\/<\/a>\n<strong>Privacy policy:<\/strong> <a href=\"https:\/\/policies.google.com\/privacy\/\">https:\/\/policies.google.com\/privacy<\/a><\/p>\n\n<p><strong><a href=\"https:\/\/openai.com\/\">OpenAI<\/a><\/strong><\/p>\n\n<p><strong>What it is used for:<\/strong> AI chat replies, optional image understanding, knowledge-base embeddings (api.openai.com\/v1\/embeddings), and optional voice transcription (api.openai.com\/v1\/audio\/transcriptions) when you select OpenAI and save an API key.<\/p>\n\n<p><strong>What is sent and when:<\/strong> When OpenAI is your active chat provider and a visitor sends a message: message text, conversation context, system instructions, and optional image data go to api.openai.com. When the knowledge base uses OpenAI embeddings, indexed text chunks are sent to create vectors. When server-side speech-to-text uses OpenAI, uploaded audio is sent for transcription.<\/p>\n\n<p><strong>Service URL:<\/strong> <a href=\"https:\/\/openai.com\/\">https:\/\/openai.com\/<\/a>\n<strong>Terms of use:<\/strong> <a href=\"https:\/\/openai.com\/policies\/terms-of-use\/\">https:\/\/openai.com\/policies\/terms-of-use\/<\/a>\n<strong>Privacy policy:<\/strong> <a href=\"https:\/\/openai.com\/policies\/privacy-policy\/\">https:\/\/openai.com\/policies\/privacy-policy\/<\/a><\/p>\n\n<p><strong><a href=\"https:\/\/www.anthropic.com\/\">Anthropic (Claude)<\/a><\/strong><\/p>\n\n<p><strong>What it is used for:<\/strong> AI chat replies and optional image understanding via api.anthropic.com when you select Claude and save an API key.<\/p>\n\n<p><strong>What is sent and when:<\/strong> When Claude is configured and a visitor sends a chat message, the message text, conversation context, system instructions, and optional image data are sent to api.anthropic.com.<\/p>\n\n<p><strong>Service URL:<\/strong> <a href=\"https:\/\/www.anthropic.com\/\">https:\/\/www.anthropic.com\/<\/a>\n<strong>Terms of use:<\/strong> <a href=\"https:\/\/www.anthropic.com\/legal\/terms\/\">https:\/\/www.anthropic.com\/legal\/terms\/<\/a>\n<strong>Privacy policy:<\/strong> <a href=\"https:\/\/www.anthropic.com\/legal\/privacy\/\">https:\/\/www.anthropic.com\/legal\/privacy<\/a><\/p>\n\n<p><strong><a href=\"https:\/\/ai.google.dev\/\">Google Gemini<\/a><\/strong><\/p>\n\n<p><strong>What it is used for:<\/strong> AI chat replies, optional image understanding, optional embeddings, and optional speech understanding via generativelanguage.googleapis.com when you select Gemini and save an API key.<\/p>\n\n<p><strong>What is sent and when:<\/strong> When Gemini is configured and a visitor sends a chat message, the message text, conversation context, system instructions, and optional image or audio data are sent to Google's Gemini API.<\/p>\n\n<p><strong>Service URL:<\/strong> <a href=\"https:\/\/ai.google.dev\/\">https:\/\/ai.google.dev\/<\/a>\n<strong>Terms of use:<\/strong> <a href=\"https:\/\/policies.google.com\/terms\/\">https:\/\/policies.google.com\/terms\/<\/a>\n<strong>Privacy policy:<\/strong> <a href=\"https:\/\/policies.google.com\/privacy\/\">https:\/\/policies.google.com\/privacy\/<\/a><\/p>\n\n<p><strong><a href=\"https:\/\/groq.com\/\">Groq<\/a><\/strong><\/p>\n\n<p><strong>What it is used for:<\/strong> AI chat replies via api.groq.com when you select Groq and save an API key. Optional voice transcription uses api.groq.com\/openai\/v1\/audio\/transcriptions when Groq is the speech backend.<\/p>\n\n<p><strong>What is sent and when:<\/strong> When Groq is configured and a visitor sends a chat message, the message text and conversation context are sent to the Groq Cloud API. When Groq speech-to-text is used, uploaded audio is sent for transcription.<\/p>\n\n<p><strong>Service URL:<\/strong> <a href=\"https:\/\/groq.com\/\">https:\/\/groq.com\/<\/a>\n<strong>Terms of use:<\/strong> <a href=\"https:\/\/console.groq.com\/docs\/legal\/services-agreement\/\">https:\/\/console.groq.com\/docs\/legal\/services-agreement\/<\/a>\n<strong>Privacy policy:<\/strong> <a href=\"https:\/\/groq.com\/privacy-policy\/\">https:\/\/groq.com\/privacy-policy\/<\/a><\/p>\n\n<p><strong><a href=\"https:\/\/www.deepseek.com\/\">DeepSeek<\/a><\/strong><\/p>\n\n<p><strong>What it is used for:<\/strong> AI chat replies via api.deepseek.com when you select DeepSeek and save an API key.<\/p>\n\n<p><strong>What is sent and when:<\/strong> When DeepSeek is configured and a visitor sends a chat message, the message text and conversation context are sent to the DeepSeek API.<\/p>\n\n<p><strong>Service URL:<\/strong> <a href=\"https:\/\/www.deepseek.com\/\">https:\/\/www.deepseek.com\/<\/a>\n<strong>Terms of use:<\/strong> <a href=\"https:\/\/cdn.deepseek.com\/policies\/en-US\/deepseek-terms-of-use.html\/\">https:\/\/cdn.deepseek.com\/policies\/en-US\/deepseek-terms-of-use.html\/<\/a>\n<strong>Privacy policy:<\/strong> <a href=\"https:\/\/cdn.deepseek.com\/policies\/en-US\/deepseek-privacy-policy.html\/\">https:\/\/cdn.deepseek.com\/policies\/en-US\/deepseek-privacy-policy.html\/<\/a><\/p>\n\n<p><strong><a href=\"https:\/\/business.whatsapp.com\/\">WhatsApp Business Cloud API Meta<\/a><\/strong><\/p>\n\n<p><strong>What it is used for:<\/strong> Optional WhatsApp inbox: AI replies, notifications, and live handoff through graph.facebook.com (WhatsApp Cloud API). Optional click-to-chat buttons may open wa.me links.<\/p>\n\n<p><strong>What is sent and when:<\/strong> When WhatsApp is enabled and configured, inbound and outbound message text, media metadata, and customer phone identifiers are sent between your site and Meta's WhatsApp Cloud API. When a customer sends an attachment, the plugin first requests the media record from graph.facebook.com and then downloads the file from the temporary Meta-owned CDN URL that Meta returns (for example lookaside.fbsbx.com or a fbcdn.net host); that download carries your WhatsApp access token to Meta.<\/p>\n\n<p><strong>Service URL:<\/strong> <a href=\"https:\/\/business.whatsapp.com\/\">https:\/\/business.whatsapp.com\/<\/a>\n<strong>Terms of use:<\/strong> <a href=\"https:\/\/www.whatsapp.com\/legal\/business-terms\/\">https:\/\/www.whatsapp.com\/legal\/business-terms\/<\/a>\n<strong>Privacy policy:<\/strong> <a href=\"https:\/\/www.whatsapp.com\/legal\/business-policy\/\">https:\/\/www.whatsapp.com\/legal\/business-policy\/<\/a><\/p>\n\n<p><strong><a href=\"https:\/\/www.messenger.com\/\">Facebook Messenger Meta<\/a><\/strong><\/p>\n\n<p><strong>What it is used for:<\/strong> Optional Messenger inbox via graph.facebook.com.<\/p>\n\n<p><strong>What is sent and when:<\/strong> When Messenger is enabled and configured, message text and Page-scoped user identifiers are sent to Meta's Messenger Platform API for AI replies and agent handoff.<\/p>\n\n<p><strong>Service URL:<\/strong> <a href=\"https:\/\/www.messenger.com\/\">https:\/\/www.messenger.com\/<\/a>\n<strong>Terms of use:<\/strong> <a href=\"https:\/\/www.facebook.com\/legal\/terms\/\">https:\/\/www.facebook.com\/legal\/terms\/<\/a>\n<strong>Privacy policy:<\/strong> <a href=\"https:\/\/www.facebook.com\/privacy\/policy\/\">https:\/\/www.facebook.com\/privacy\/policy\/<\/a><\/p>\n\n<p><strong><a href=\"https:\/\/www.instagram.com\/\">Instagram Direct Meta<\/a><\/strong><\/p>\n\n<p><strong>What it is used for:<\/strong> Optional Instagram Direct inbox via graph.facebook.com.<\/p>\n\n<p><strong>What is sent and when:<\/strong> When Instagram is enabled and configured, Direct Message text and Instagram-scoped user identifiers are sent to Meta's Instagram Messaging API for AI replies and agent handoff.<\/p>\n\n<p><strong>Service URL:<\/strong> <a href=\"https:\/\/www.instagram.com\/\">https:\/\/www.instagram.com\/<\/a>\n<strong>Terms of use:<\/strong> <a href=\"https:\/\/help.instagram.com\/581066165581870\">https:\/\/help.instagram.com\/581066165581870<\/a><\/p>\n\n<p><strong>Privacy policy:<\/strong> <a href=\"https:\/\/privacycenter.instagram.com\/policy\/\">https:\/\/privacycenter.instagram.com\/policy\/<\/a><\/p>\n\n<p><strong><a href=\"https:\/\/telegram.org\/\">Telegram Bot API<\/a><\/strong><\/p>\n\n<p><strong>What it is used for:<\/strong> Optional Telegram inbox via api.telegram.org.<\/p>\n\n<p><strong>What is sent and when:<\/strong> When Telegram is enabled and configured, message text and Telegram chat\/user identifiers are sent to Telegram's Bot API for AI replies and agent handoff.<\/p>\n\n<p><strong>Service URL:<\/strong> <a href=\"https:\/\/telegram.org\/\">https:\/\/telegram.org\/<\/a>\n<strong>Terms of use:<\/strong> <a href=\"https:\/\/telegram.org\/tos\/\">https:\/\/telegram.org\/tos\/<\/a>\n<strong>Privacy policy:<\/strong> <a href=\"https:\/\/telegram.org\/privacy\/\">https:\/\/telegram.org\/privacy\/<\/a><\/p>\n\n<p><strong><a href=\"https:\/\/slack.com\/\">Slack<\/a><\/strong><\/p>\n\n<p><strong>What it is used for:<\/strong> Optional staff alerts (new conversations and human handoff) posted to a Slack incoming webhook (hooks.slack.com).<\/p>\n\n<p><strong>What is sent and when:<\/strong> When Slack notifications are enabled and you save a Slack webhook URL, conversation summaries and handoff alerts are POSTed to that URL.<\/p>\n\n<p><strong>Service URL:<\/strong> <a href=\"https:\/\/slack.com\/\">https:\/\/slack.com\/<\/a>\n<strong>Terms of use:<\/strong> <a href=\"https:\/\/slack.com\/terms-of-service\/\">https:\/\/slack.com\/terms-of-service\/<\/a>\n<strong>Privacy policy:<\/strong> <a href=\"https:\/\/slack.com\/privacy-policy-updated\/\">https:\/\/slack.com\/privacy-policy-updated\/<\/a><\/p>\n\n<p><strong><a href=\"https:\/\/discord.com\/\">Discord<\/a><\/strong><\/p>\n\n<p><strong>What it is used for:<\/strong> Optional staff alerts posted to a Discord channel webhook (discord.com\/api\/webhooks).<\/p>\n\n<p><strong>What is sent and when:<\/strong> When Discord notifications are enabled and you save a Discord webhook URL, conversation summaries and handoff alerts are POSTed to that URL.<\/p>\n\n<p><strong>Service URL:<\/strong> <a href=\"https:\/\/discord.com\/\">https:\/\/discord.com\/<\/a>\n<strong>Terms of use:<\/strong> <a href=\"https:\/\/discord.com\/terms\/\">https:\/\/discord.com\/terms\/<\/a>\n<strong>Privacy policy:<\/strong> <a href=\"https:\/\/discord.com\/privacy\/\">https:\/\/discord.com\/privacy\/<\/a><\/p>\n\n<h4>Zapier \/ Make \/ custom webhooks<\/h4>\n\n<p><strong>What it is used for:<\/strong> Optional automation when you paste your own HTTPS webhook URL (for example Zapier or Make).<\/p>\n\n<p><strong>What is sent and when:<\/strong> When you configure an automation or lead webhook URL, JSON payloads about new conversations, human handoff, and\/or captured leads are POSTed to the URL you provide.<\/p>\n\n<p><strong>Service URL:<\/strong> Depends on the URL you configure.\n<strong>Terms of use:<\/strong> Depends on the service you connect.\n<strong>Privacy policy:<\/strong> Depends on the service you connect.<\/p>\n\n<p><strong><a href=\"https:\/\/www.hubspot.com\/\">HubSpot CRM<\/a><\/strong><\/p>\n\n<p>This plugin connects to the HubSpot CRM API at <a href=\"https:\/\/api.hubapi.com\/\">https:\/\/api.hubapi.com\/<\/a> to sync contacts, deals, tickets, notes, and tasks when you enable HubSpot and save a private app token.<\/p>\n\n<p>It sends mapped lead and conversation fields (such as name, email, phone, company, deal notes, or tickets) to <a href=\"https:\/\/api.hubapi.com\/\">https:\/\/api.hubapi.com\/<\/a> only after you turn HubSpot sync on.<\/p>\n\n<p>This service is provided by HubSpot: terms of use <a href=\"https:\/\/legal.hubspot.com\/terms-of-service\/\">https:\/\/legal.hubspot.com\/terms-of-service\/<\/a> , API terms <a href=\"https:\/\/legal.hubspot.com\/api-terms\">https:\/\/legal.hubspot.com\/api-terms<\/a>, privacy policy <a href=\"https:\/\/legal.hubspot.com\/privacy-policy\/\">https:\/\/legal.hubspot.com\/privacy-policy\/<\/a>.<\/p>\n\n<p><strong>Service URL:<\/strong> <a href=\"https:\/\/api.hubapi.com\/\">https:\/\/api.hubapi.com\/<\/a>\n<strong>Website:<\/strong> <a href=\"https:\/\/www.hubspot.com\/\">https:\/\/www.hubspot.com\/<\/a>\n<strong>Terms of use:<\/strong> <a href=\"https:\/\/legal.hubspot.com\/terms-of-service\/\">https:\/\/legal.hubspot.com\/terms-of-service\/<\/a>\n<strong>API terms:<\/strong> <a href=\"https:\/\/legal.hubspot.com\/api-terms\/\">https:\/\/legal.hubspot.com\/api-terms\/<\/a>\n<strong>Privacy policy:<\/strong> <a href=\"https:\/\/legal.hubspot.com\/privacy-policy\/\">https:\/\/legal.hubspot.com\/privacy-policy\/<\/a><\/p>\n\n<p><strong><a href=\"https:\/\/www.salesforce.com\/\">Salesforce CRM<\/a><\/strong><\/p>\n\n<p><strong>What it is used for:<\/strong> Optional CRM sync to your Salesforce org REST API (instance URL you provide, typically .salesforce.com or .my.salesforce.com).<\/p>\n\n<p><strong>What is sent and when:<\/strong> When Salesforce sync is enabled, mapped lead and conversation fields are sent to your Salesforce instance.<\/p>\n\n<p><strong>Service URL:<\/strong> <a href=\"https:\/\/www.salesforce.com\/\">https:\/\/www.salesforce.com\/<\/a>\n<strong>Terms of use:<\/strong> <a href=\"https:\/\/www.salesforce.com\/company\/legal\/agreements\/\">https:\/\/www.salesforce.com\/company\/legal\/agreements\/<\/a>\n<strong>Privacy policy:<\/strong> <a href=\"https:\/\/www.salesforce.com\/company\/privacy\/\">https:\/\/www.salesforce.com\/company\/privacy\/<\/a><\/p>\n\n<p><strong><a href=\"https:\/\/www.zoho.com\/crm\/\">Zoho CRM<\/a><\/strong><\/p>\n\n<p><strong>What it is used for:<\/strong> Optional CRM sync to your Zoho CRM API (domain you provide, typically *.zoho.com \/ *.zoho.eu).<\/p>\n\n<p><strong>What is sent and when:<\/strong> When Zoho CRM sync is enabled, mapped lead and conversation fields are sent to your Zoho CRM account.<\/p>\n\n<p><strong>Service URL:<\/strong> <a href=\"https:\/\/www.zoho.com\/crm\/\">https:\/\/www.zoho.com\/crm\/<\/a>\n<strong>Terms of use:<\/strong> <a href=\"https:\/\/www.zoho.com\/terms.html\/\">https:\/\/www.zoho.com\/terms.html\/<\/a>\n<strong>Privacy policy:<\/strong> <a href=\"https:\/\/www.zoho.com\/privacy.html\/\">https:\/\/www.zoho.com\/privacy.html\/<\/a><\/p>\n\n<p><strong><a href=\"https:\/\/www.pipedrive.com\/\">Pipedrive CRM<\/a><\/strong><\/p>\n\n<p><strong>What it is used for:<\/strong> Optional CRM sync via *.pipedrive.com\/api\/v1 when you enable Pipedrive and save credentials.<\/p>\n\n<p><strong>What is sent and when:<\/strong> When Pipedrive sync is enabled, mapped lead and deal fields are sent to your Pipedrive account.<\/p>\n\n<p><strong>Service URL:<\/strong> <a href=\"https:\/\/www.pipedrive.com\/\">https:\/\/www.pipedrive.com\/<\/a>\n<strong>Terms of use:<\/strong> <a href=\"https:\/\/www.pipedrive.com\/en\/terms-of-service\/\">https:\/\/www.pipedrive.com\/en\/terms-of-service\/<\/a>\n<strong>Privacy policy:<\/strong> <a href=\"https:\/\/www.pipedrive.com\/en\/privacy\/\">https:\/\/www.pipedrive.com\/en\/privacy\/<\/a><\/p>\n\n<p><strong><a href=\"https:\/\/www.freshworks.com\/crm\/\">Freshsales CRM<\/a><\/strong><\/p>\n\n<p><strong>What it is used for:<\/strong> Optional CRM sync to your Freshsales \/ Freshworks CRM API (domain you provide).<\/p>\n\n<p><strong>What is sent and when:<\/strong> When Freshsales sync is enabled, mapped lead and contact fields are sent to your Freshsales account.<\/p>\n\n<p><strong>Service URL:<\/strong> <a href=\"https:\/\/www.freshworks.com\/crm\/\">https:\/\/www.freshworks.com\/crm\/<\/a>\n<strong>Terms of use:<\/strong> <a href=\"https:\/\/www.freshworks.com\/terms\/\">https:\/\/www.freshworks.com\/terms\/<\/a>\n<strong>Privacy policy:<\/strong> <a href=\"https:\/\/www.freshworks.com\/privacy\/\">https:\/\/www.freshworks.com\/privacy\/<\/a><\/p>\n\n<p><strong><a href=\"https:\/\/www.bitrix24.com\/\">Bitrix24 CRM<\/a><\/strong><\/p>\n\n<p><strong>What it is used for:<\/strong> Optional CRM sync via the Bitrix24 REST \/ inbound webhook URL you provide (typically *.bitrix24.com).<\/p>\n\n<p><strong>What is sent and when:<\/strong> When Bitrix24 sync is enabled, mapped lead and contact fields are sent to your Bitrix24 portal.<\/p>\n\n<p><strong>Service URL:<\/strong> <a href=\"https:\/\/www.bitrix24.com\/\">https:\/\/www.bitrix24.com\/<\/a>\n<strong>Terms of use:<\/strong> <a href=\"https:\/\/www.bitrix24.com\/terms\/\">https:\/\/www.bitrix24.com\/terms\/<\/a>\n<strong>Privacy policy:<\/strong> <a href=\"https:\/\/www.bitrix24.com\/privacy\/\">https:\/\/www.bitrix24.com\/privacy\/<\/a><\/p>\n\n<p><strong><a href=\"https:\/\/www.activecampaign.com\/\">ActiveCampaign<\/a><\/strong><\/p>\n\n<p><strong>What it is used for:<\/strong> Optional contact and tag sync to the ActiveCampaign API URL you provide.<\/p>\n\n<p><strong>What is sent and when:<\/strong> When ActiveCampaign sync is enabled, mapped contact fields and tags are sent to your ActiveCampaign account.<\/p>\n\n<p><strong>Service URL:<\/strong> <a href=\"https:\/\/www.activecampaign.com\/\">https:\/\/www.activecampaign.com\/<\/a>\n<strong>Terms of use:<\/strong> <a href=\"https:\/\/www.activecampaign.com\/legal\/terms-of-service\/\">https:\/\/www.activecampaign.com\/legal\/terms-of-service\/<\/a>\n<strong>Privacy policy:<\/strong> <a href=\"https:\/\/www.activecampaign.com\/legal\/privacy-policy\/\">https:\/\/www.activecampaign.com\/legal\/privacy-policy\/<\/a><\/p>\n\n<p><strong><a href=\"https:\/\/mailchimp.com\/\">Mailchimp<\/a><\/strong><\/p>\n\n<p><strong>What it is used for:<\/strong> Optional audience\/contact sync via .api.mailchimp.com when you enable Mailchimp and save an API key.<\/p>\n\n<p><strong>What is sent and when:<\/strong> When Mailchimp sync is enabled, mapped audience\/contact fields are sent to your Mailchimp account.<\/p>\n\n<p><strong>Service URL:<\/strong> <a href=\"https:\/\/mailchimp.com\/\">https:\/\/mailchimp.com\/<\/a>\n<strong>Terms of use:<\/strong> <a href=\"https:\/\/mailchimp.com\/legal\/terms\/\">https:\/\/mailchimp.com\/legal\/terms\/<\/a>\n<strong>Privacy policy:<\/strong> <a href=\"https:\/\/www.intuit.com\/privacy\/statement\/\">https:\/\/www.intuit.com\/privacy\/statement\/<\/a><\/p>\n\n<h4>Browser speech recognition (optional)<\/h4>\n\n<p><strong>What it is used for:<\/strong> Optional voice input in the storefront widget.<\/p>\n\n<p><strong>What is sent and when:<\/strong> If the visitor uses voice input and the browser supports the Web Speech API, audio may be processed by the browser vendor's speech-to-text service (for example Chrome\/Google). That path is controlled by the visitor's browser, not by ThemeVix. Server-side transcription (when used) is documented under OpenAI, Groq, or Gemini above.<\/p>\n\n<h3>Source Code<\/h3>\n\n<p>The storefront widget is already human-readable:<\/p>\n\n<ul>\n<li><code>public\/js\/chat-widget.js<\/code><\/li>\n<li><code>public\/css\/chat-widget.css<\/code><\/li>\n<li><code>public\/css\/whatsapp-button.css<\/code><\/li>\n<\/ul>\n\n<p>The WordPress admin dashboard is a React app. Production (minified) files live in <code>assets\/js\/<\/code> and <code>assets\/css\/<\/code> (<code>admin.js<\/code>, <code>admin-vendor.js<\/code>, <code>admin-charts.js<\/code>, lazy page chunks, <code>admin.css<\/code>). The complete unminified source for those files is included in this plugin zip:<\/p>\n\n<ul>\n<li>Plugin UI source: <code>admin\/src\/<\/code> (entry file <code>admin\/src\/main.jsx<\/code>)<\/li>\n<li>npm manifest: <code>package.json<\/code> (and <code>package-lock.json<\/code> when present)<\/li>\n<li>Vite build config: <code>vite.config.js<\/code><\/li>\n<li>Built-file map: <code>assets\/asset-manifest.php<\/code><\/li>\n<\/ul>\n\n<p>To rebuild the admin bundles from the included source:<\/p>\n\n<ol>\n<li>Install Node.js 18 or later<\/li>\n<li>Open the plugin folder<\/li>\n<li>Run <code>npm install<\/code><\/li>\n<li>Run <code>npm run build<\/code><\/li>\n<\/ol>\n\n<p>No build step is required to use the plugin. <code>npm install<\/code> downloads the libraries listed below into <code>node_modules\/<\/code> and Vite writes the production files back to <code>assets\/<\/code>.<\/p>\n\n<p>Bundled third-party libraries (admin only; not loaded on the storefront):<\/p>\n\n<ul>\n<li>React 18 \u2014 MIT \u2014 source <a href=\"https:\/\/github.com\/facebook\/react\/\">https:\/\/github.com\/facebook\/react\/<\/a><\/li>\n<li>React DOM 18 \u2014 MIT \u2014 source <a href=\"https:\/\/github.com\/facebook\/react\/\">https:\/\/github.com\/facebook\/react\/<\/a><\/li>\n<li>Recharts 2 \u2014 MIT \u2014 source <a href=\"https:\/\/github.com\/recharts\/recharts\/\">https:\/\/github.com\/recharts\/recharts\/<\/a><\/li>\n<li><p>@wordpress\/i18n \u2014 GPL-2.0-or-later \u2014 source [https:\/\/github.com\/WordPress\/gutenberg\/tree\/trunk\/packages\/i18n] (https:\/\/github.com\/WordPress\/gutenberg\/tree\/trunk\/packages\/i18n)<\/p>\n\n<p>assets\/js\/admin-vendor.js is the built React \/ React DOM runtime. <code>assets\/js\/admin-charts.js<\/code> is the built Recharts runtime. <code>assets\/js\/admin-*.js<\/code> page chunks are compiled from the matching files in <code>admin\/src\/pages\/<\/code>.<\/p><\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate <strong>WooCommerce<\/strong>.<\/li>\n<li>Upload the <code>themevix-ai-chat<\/code> folder to <code>\/wp-content\/plugins\/<\/code>, or install the plugin through the WordPress Plugins screen.<\/li>\n<li>Activate <strong>ThemeVix AI Chat<\/strong> through the <strong>Plugins<\/strong> menu.<\/li>\n<li>Go to <strong>ThemeVix AI Chat \u2192 AI Settings<\/strong>.<\/li>\n<li>Choose an AI provider, select a model, enter your API key, and save.<\/li>\n<li>Customize appearance and features under the plugin settings tabs.<\/li>\n<li>Visit your storefront \u2014 the chat widget appears based on your display rules.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20plugin%20require%20woocommerce%3F\"><h3>Does this plugin require WooCommerce?<\/h3><\/dt>\n<dd><p>Yes. WooCommerce is a required dependency. If WooCommerce is not active, the plugin shows an admin notice and does not load on the storefront.<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20require%20a%20paid%20api%20key%3F\"><h3>Does this plugin require a paid API key?<\/h3><\/dt>\n<dd><p>No. You can use free-tier keys from Google Gemini (Google AI Studio) or Groq. OpenAI and Anthropic Claude require paid accounts with those providers.<\/p><\/dd>\n<dt id=\"are%20api%20keys%20stored%20securely%3F\"><h3>Are API keys stored securely?<\/h3><\/dt>\n<dd><p>API keys are encrypted at rest in the WordPress options table when OpenSSL is available. They are not exposed in page source or public REST responses. The admin dashboard shows only masked key values.<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20send%20data%20to%20themevix%3F\"><h3>Does this plugin send data to ThemeVix?<\/h3><\/dt>\n<dd><p>No. This plugin does not send store or chat data to ThemeVix servers. There is no licensing phone-home or usage telemetry to ThemeVix.<\/p><\/dd>\n<dt id=\"what%20data%20does%20this%20plugin%20store%20on%20my%20site%3F\"><h3>What data does this plugin store on my site?<\/h3><\/dt>\n<dd><ul>\n<li>Chat messages and conversation history (custom database tables)<\/li>\n<li>Optional visitor name and email (live chat \/ offline forms)<\/li>\n<li>Session identifier (browser localStorage) and session binding cookie (<code>themevix_ai_chat_bind<\/code>)<\/li>\n<li>Guest wishlist product IDs (cookie) and logged-in wishlist (user meta)<\/li>\n<li>Knowledge-base uploads in the WordPress media library<\/li>\n<li>Plugin settings, including encrypted API keys<\/li>\n<\/ul><\/dd>\n<dt id=\"what%20data%20is%20sent%20to%20external%20services%3F\"><h3>What data is sent to external services?<\/h3><\/dt>\n<dd><p>Nothing is sent unless you enable or configure that service. Chat message text (and optional images or audio) go only to the AI provider whose API key you entered. Optional channels, CRM, and notification tools send only the fields you map. Google Fonts load only when you enable them. See <strong>External Services<\/strong> below.<\/p><\/dd>\n<dt id=\"why%20does%20this%20plugin%20call%20ai%20providers%20directly%20instead%20of%20the%20wordpress%20ai%20client%3F\"><h3>Why does this plugin call AI providers directly instead of the WordPress AI Client?<\/h3><\/dt>\n<dd><p>This plugin supports WordPress 6.5 and later. The WordPress AI Client shipped in WordPress 7.0. Site owners also bring their own API keys (BYOK) and may use embeddings, speech-to-text, and vision APIs that the core AI Client does not fully cover yet. Direct provider APIs are used only after you save a key in plugin settings.<\/p><\/dd>\n<dt id=\"can%20guest%20visitors%20look%20up%20orders%3F\"><h3>Can guest visitors look up orders?<\/h3><\/dt>\n<dd><p>Yes, but only when they provide an order number and the matching billing email. Lookups are rate-limited to reduce enumeration attempts.<\/p><\/dd>\n<dt id=\"which%20file%20types%20can%20i%20upload%20to%20the%20knowledge%20base%3F\"><h3>Which file types can I upload to the knowledge base?<\/h3><\/dt>\n<dd><p>PDF, DOCX, TXT, and CSV files up to 8 MB (filterable).<\/p><\/dd>\n<dt id=\"does%20pdf%20parsing%20require%20server%20software%3F\"><h3>Does PDF parsing require server software?<\/h3><\/dt>\n<dd><p>No. A built-in PDF text extractor is included. For better accuracy, use the <code>themevix_ai_chat_parse_pdf<\/code> filter with a PHP PDF library.<\/p><\/dd>\n<dt id=\"can%20i%20enable%20google%20fonts%3F\"><h3>Can I enable Google Fonts?<\/h3><\/dt>\n<dd><p>Yes. Google Fonts are off by default. Enable them in <strong>ThemeVix AI Chat \u2192 Appearance<\/strong>, or with:<\/p>\n\n<pre><code>add_filter( 'themevix_ai_chat_enqueue_google_fonts', '__return_true' );\n<\/code><\/pre><\/dd>\n<dt id=\"what%20cookies%20does%20this%20plugin%20use%3F\"><h3>What cookies does this plugin use?<\/h3><\/dt>\n<dd><ul>\n<li><code>themevix_ai_chat_bind<\/code> \u2014 HttpOnly session binding cookie for chat security<\/li>\n<li><code>themevix_ai_chat_wishlist<\/code> \u2014 guest wishlist product IDs (HttpOnly when set by the plugin)<\/li>\n<\/ul><\/dd>\n<dt id=\"what%20happens%20when%20i%20uninstall%20the%20plugin%3F\"><h3>What happens when I uninstall the plugin?<\/h3><\/dt>\n<dd><p>Deleting the plugin removes its settings, custom database tables, knowledge-base uploads, wishlist user meta, and related transients.<\/p><\/dd>\n<dt id=\"who%20is%20responsible%20for%20gdpr%20%2F%20store%20privacy%20compliance%3F\"><h3>Who is responsible for GDPR \/ store privacy compliance?<\/h3><\/dt>\n<dd><p>You, as the site owner, are responsible for telling your customers about chat data collection, cookies, and AI processing in your own store privacy policy and for obtaining consent where required by law.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<\/ul>","raw_excerpt":"AI-powered WooCommerce chatbot with a React admin dashboard. Use your own API key with OpenAI, Claude, DeepSeek, Gemini, or Groq.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/365781","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=365781"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/themevix"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=365781"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=365781"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=365781"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=365781"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=365781"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=365781"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}