ChatRaj
AI chatbot for Adobe Commerce

Add an AI chatbot to Adobe Commerce or Magento, the enterprise way

Install via HTML Head Includes, a version-controlled custom module, or directly in your Hyva and PWA Studio storefront. Works with multi-store, B2B Commerce, Varnish, and Redis.

Read install steps
Bottom line
Adobe Commerce stores can add an AI chatbot in three ways. The fastest is the Admin Content, Design, Configuration screen, which exposes an HTML Head field where you paste a one-line script before the closing body tag. The DevOps-friendly path is a small custom module that ships the snippet through a layout XML default_head_blocks file under version control. Headless storefronts on PWA Studio or Hyva take the same snippet inside the React or Alpine entry point. ChatRaj indexes your catalog, captures B2B leads, and stays compliant for GDPR and SOC 2 procurement.
Reviewed by ··11 min read
Jump to section

Why Adobe Commerce stores need an AI chatbot

Adobe Commerce is the platform that powers some of the largest catalog-driven retailers on the open web. The audience that lands on an Adobe Commerce storefront looks very different from the audience that lands on a typical Shopify DTC store. Average order values are higher. Catalogs are deeper, often into the tens of thousands of SKUs with attribute matrices that span configurable products, bundle products, downloadable products, and grouped products. Buyer journeys are longer, especially on B2B Commerce instances where a single transaction can wait on negotiated pricing, shared cart approval, and a purchase order workflow.

In that environment the cost of a missed question is high. A visitor who cannot get an answer about minimum order quantities, lead time on a configurable product, or whether a SKU is in a specific company-account contract simply leaves. Email back later, request a quote, fill in the contact form: these are friction paths that lose the majority of buyers in the gap between question and answer.

An AI chatbot grounded in your store content closes that gap. The bot reads the catalog you already publish, the policy pages legal already approved, and the technical PDFs you already host, and answers in the visitor's language at three in the morning without waking the sales team. The math is straightforward: even a single percentage point of recovered intent on a store doing seven figures of revenue per month pays for the chatbot many times over.

The hard part on Adobe Commerce has always been the install path. Unlike Shopify, there is no one-click App Store install that hides the work. Adobe Commerce stores live in code, deploy through CI, sit behind Varnish, and answer to a security team that wants every third-party tag justified. This page is the enterprise install playbook for ChatRaj on that stack.

Enterprise reality: caching layers, multi-store, B2B Commerce

Before the script tag, three Adobe Commerce realities shape any third-party install.

Caching is layered. A real Adobe Commerce stack runs full-page Varnish in front, Redis for session and config cache, and the Magento built-in cache on top. A theme change you push from your local can take a deploy plus a cache flush before it shows up on production. Anything you paste into the Admin's HTML Head Includes field, however, lives in core_config_data and propagates without a full deploy. That is why the no-code path below is the right starting point for most teams: you can validate the chatbot on a staging store view in minutes, then promote the snippet to production through your normal config-sync workflow.

Multi-store is normal. A single Adobe Commerce instance often hosts several websites, each with multiple stores and store views. A consumer brand might run a US storefront, a UK storefront, and a Canadian storefront from one Magento install, each with its own theme, currency, and tax rules. A B2B brand might run a public catalog plus a gated dealer portal on the same instance. The chatbot needs to scope to the right view: you do not want US support content answering UK product questions, and you do not want public-catalog answers leaking into a B2B-only dealer chat. Adobe Commerce's scope selector (Default Config, Website, Store View) is where you control this. ChatRaj supports one bot per scope, so you can configure a different bot ID per store view from the same Admin screen.

B2B Commerce changes the lead-capture shape. On a standard DTC store the chatbot captures emails to feed an abandoned-cart automation. On a B2B Commerce store the chatbot captures a buyer's company name, role, and the requested-quote SKU list, then pushes that into Marketo, Salesforce, or a HubSpot pipeline as a sales-qualified lead. ChatRaj's webhook target accepts any of these payload shapes; on the bot configuration side you control which fields the chatbot asks for and when.

ChatRaj on Adobe Commerce: install paths

There are three good install paths for ChatRaj on Adobe Commerce in 2026. Pick the one that matches how your team ships changes.

Path A is the no-code Admin path through HTML Head Includes. Fastest, no deploy, no developer.

Path B is a custom module that places the snippet in default_head_blocks.xml. Version controlled, code-reviewed, deployable through your normal CI.

Path C is the headless storefront path: PWA Studio or Hyva. Snippet goes in the storefront repo, not the Magento backend.

All three result in the same single line of HTML being rendered into the page. The difference is who controls it and how it deploys.

Path A: HTML Head Includes (no-code, fastest)

Adobe Commerce ships an Admin screen that lets you inject arbitrary HTML and JavaScript into the document head and just before the closing body tag, without touching theme code. This is the no-code path.

Sign in to the Admin. From the left navigation pick Content, then under Design pick Configuration. You land on the Design Configuration grid. Each row is a scope: Default Config, then one row per website, store, and store view that has any design override. Find the scope you want the chatbot to appear on (most teams want Default Config so the bot loads on every store view) and click Edit in the Action column.

On the edit screen, expand the HTML Head section. Inside that section is a field labeled Scripts and Style Sheets, sometimes also surfaced as Miscellaneous Scripts further down the page. Paste the ChatRaj script tag into that field:

html
<script async src="https://chatraj.com/widget.js" data-bot-id="YOUR_BOT_ID"></script>

Save Configuration. Adobe Commerce clears the config cache for that scope automatically. If you have Varnish in front you may need to flush the full-page cache once: System, Tools, Cache Management, click Flush Magento Cache. Within a minute the chatbot bubble appears on every page in that scope.

Two notes on this path. First, the HTML Head Includes field is scope-aware: if you set it at Default Config it cascades to every store view, and a store-view-specific value overrides the default. That mirrors how every other Magento config field behaves and is the lever that lets you ship a different bot per language store. Second, the snippet stores in core_config_data and travels through config-sync. If your CI pipeline does a config:show and a config:set as part of release, the chatbot snippet rides along with every other config change you ship.

Path B: Custom module (DevOps-friendly, version-controlled)

For teams that prefer to keep all storefront code in Git rather than in the Admin database, the right path is a small custom module that adds the snippet through layout XML.

Create a module under app/code/Yourcompany/Chatraj with the standard registration.php and module.xml files. Inside view/frontend/layout, create or extend default_head_blocks.xml. Add a referenceBlock pointing at head.additional and inject the script via a block of type Magento\Framework\View\Element\Template that renders a small phtml file containing the ChatRaj snippet. Run setup:upgrade, deploy:mode:set production, and setup:static-content:deploy. Push the change through your normal CI pipeline, run cache flush as part of post-deploy, and the snippet is live.

The advantage over Path A is that the snippet is now in version control next to the rest of your storefront code. A pull request shows it. A revert removes it. A composer require pulls it into a staging environment. For organizations with a change-management board that wants every third-party tag in a code review, this is the only path that satisfies the policy.

The cost is a few extra hours of developer time on first install, and a deploy cycle every time you want to change the bot ID. For most enterprise Adobe Commerce teams that cost is worth paying once and then leaving alone.

Path C: PWA Studio / Hyva storefront

Adobe Commerce stores running a decoupled storefront skip the Admin and the layout XML and embed the chatbot in the storefront repo directly.

For PWA Studio (Adobe's official React-based storefront, built on Venia), open src/index.js or the root layout component and add the script tag through a useEffect that injects a script element into document.head on mount. The widget loads asynchronously, attaches its iframe to the body, and lives outside the React tree, so there is no hydration cost and no React rerender concern.

For Hyva, the post-Luma Magento frontend framework built on Tailwind CSS and Alpine.js, the install is even simpler. Hyva renders a thin Tailwind layout with minimal JavaScript shipped on first paint, which is exactly the kind of environment a third-party widget loader is designed for. Open the Hyva theme's templates/page/js/head.phtml or your project's equivalent and paste the ChatRaj script tag inside the head block. Rebuild Tailwind, clear cache, deploy. Done.

Hyva-specific note: as of 2024 Adobe officially supports Hyva on Adobe Commerce, and the Hyva community grew past 4,900 live stores by early 2026. If you are still on the Luma theme and considering a chatbot, this is a good moment to also evaluate Hyva. Luma ships 700 KB to 1.2 MB of JavaScript on every page; Hyva ships closer to 50 to 100 KB. A chatbot on top of Hyva feels instant. A chatbot on top of Luma feels like one more weight on an already heavy page.

What ChatRaj reads from product catalog

After install, ChatRaj indexes your store. The crawler starts from the URL you provide on the Sources tab and follows internal links up to the depth you configure. On Adobe Commerce that means the homepage, category pages, product detail pages, CMS pages, and blog posts if you run a Magento blog extension.

For deeper catalog coverage point ChatRaj at your sitemap.xml. Adobe Commerce generates one automatically at /pub/media/sitemap/sitemap.xml when you enable the sitemap feature under Marketing, SEO and Search, Site Map. Submit that URL on the Sources tab and the bot ingests every product, category, and CMS page you have published.

The indexer extracts the main content of each page, skipping headers, footers, sidebars, the announcement bar, and the cart drawer. On Luma it reads the product description, short description, additional information attributes that you have set to Visible on Frontend, and the meta description. On Hyva it does the same, just from the leaner Hyva template. For configurable products it reads the attribute matrix so the bot can answer questions like "do you have this in size XL". For bundle products it reads the bundle item list. For downloadable products it reads the link titles.

ChatRaj does not read prices that require customer-group context, because the crawler logs in as a guest. If you run a B2B Commerce site with company-account-specific pricing, the bot answers list-price questions correctly and defers customer-specific-price questions to a human or to a logged-in request. For B2B-pricing transparency on a public catalog, the workaround is to publish a price-tier guide as a CMS page and let the bot index that page.

Lead capture for high-AOV B2B Adobe Commerce flows

The lead-capture story on Adobe Commerce differs from Shopify in shape. A typical B2B Commerce buyer is not converting in a single session. They are evaluating, scoping, comparing, and then circling back through procurement. The chatbot's job in that flow is to capture the buyer's company and contact information at the moment of intent so sales can follow up before the buyer goes cold.

ChatRaj's lead-capture form on the B2B template asks for full name, work email, company, role, and a free-text "what are you trying to solve" field. The form fires after the buyer asks three or more questions or matches a specific intent trigger you configure (for example: "request a quote", "minimum order", "net 30"). The captured lead pushes to your CRM through a webhook. For Salesforce, the webhook target is your Salesforce Web-to-Lead endpoint with the bot's field map. For HubSpot, the target is the HubSpot Forms API. For Marketo, the target is the Marketo Form 2.0 endpoint.

Buyers who drop the form still get answered. The form is offered, not required. You do not lose the conversation because the buyer did not want to type their email.

For pure DTC Adobe Commerce stores (still common in fashion, beauty, and home goods), the lead-capture pattern matches the Shopify pattern: trigger the form on exit intent or after three questions, exchange a discount code for the email, push to Klaviyo or to your Adobe Journey Optimizer endpoint, and let the existing abandoned-cart flow take over.

ChatRaj vs Adobe Sensei / Adobe Experience Cloud AI

Adobe Commerce ships with Adobe Sensei built in. Sensei powers Live Search, Product Recommendations, and the Catalog Service. It is a strong product-discovery engine. It is not a chatbot.

The difference matters. Sensei answers the question "what should I show this visitor next" by ranking products against a behavioral model. ChatRaj answers the question "what did this visitor ask, and what is the right answer based on my store content". One ranks products. The other answers questions. Both can live on the same page.

In practice, the pattern that works on Adobe Commerce stores is to keep Adobe Sensei doing product discovery (search bar, recommendation rails, related products) and add ChatRaj for the question-answering surface. Visitors who know what they want use the search bar. Visitors who are uncertain ask the bot. The two surfaces do not compete; they cover different intent.

Adobe Experience Cloud also ships generative AI features inside Adobe Journey Optimizer and Adobe Experience Manager. These are content-generation tools (write the email, generate the asset) rather than visitor-facing chat. ChatRaj sits on the storefront, in front of the buyer, doing a job that the Adobe stack does not currently address.

Compliance posture for enterprise procurement (GDPR, SOC 2)

Adobe Commerce buyers usually arrive at the chatbot purchase decision with a security review attached. ChatRaj's posture is built for that review.

GDPR. ChatRaj signs a Data Processing Agreement with every paid customer. You are the data controller, ChatRaj is the data processor, and the standard contractual clauses are part of the DPA. Conversation data stores in the EU on request. Visitor cookies (a random visitor_id used for conversation continuity) fold into your existing cookie consent flow. For Adobe Commerce stores running OneTrust or a similar consent platform, ChatRaj's loader honors a window-level consent flag so the widget stays dormant until consent fires.

SOC 2. ChatRaj operates under SOC 2 Type II controls. Independent audit reports are available under NDA to enterprise prospects in active evaluation. Sub-processor list, breach notification policy, encryption-at-rest and in-transit, and access-control documentation ship with the security packet.

Data residency. For EU customers the conversation data can be pinned to EU-region storage. For Canadian and Australian customers the same option is available on request through the enterprise plan. US is the default.

PII handling. ChatRaj does not train any underlying language model on customer conversation data. The retrieval-augmented generation layer reads only your bot's knowledge base at query time. Visitor messages are stored for the lifetime of the conversation history and are deletable on request through the GDPR right-to-erasure endpoint.

For procurement, the artifacts you need (DPA, SOC 2 Type II report under NDA, sub-processor list, security questionnaire pre-filled in CAIQ format) are available on request from the enterprise sales team.

When ChatRaj is NOT the right call (deep ERP/PIM integration required)

A few honest signals that ChatRaj might not be the right fit for an Adobe Commerce store in 2026.

You need the bot to read real-time inventory from your ERP. ChatRaj indexes your public storefront content; it does not connect to Akeneo, Salsify, Pimcore, SAP, NetSuite, or any back-office system. If "is this SKU in stock at warehouse W12 right now" is a question the bot must answer, you need a chatbot tier that does function calling against your ERP, and you need to staff the integration. ChatRaj plans to ship function calling later in 2026; until then this is a real limitation.

You need the bot to operate inside a logged-in B2B account context with company-account pricing. ChatRaj answers as a guest. Customer-group pricing, negotiated contract prices, and shared-cart approval flows are out of scope.

You need the bot to execute cart actions ("add three of SKU X to my cart, apply discount code Y"). Same constraint as above: action execution is on the roadmap, not in production.

You need the chatbot UI to render inside Adobe Commerce Cloud's checkout. The checkout is a locked-down surface; even Adobe-supported third-party tags have a constrained injection model there. ChatRaj appears on every storefront page that ships your theme's head block, and intentionally does not render inside checkout.

For every other enterprise Adobe Commerce use case (catalog Q&A, policy Q&A, B2B lead capture, multi-language support across store views, GDPR-compliant EU storefronts), the install paths above are the path of least resistance, and the procurement story is built for the review.

Install guide

Install on Adobe Commerce

7 steps. Most operators finish in 60 seconds.

  1. Create a ChatRaj account

    Sign in at chatraj.com/signup with your work Google account. Free tier, no credit card. For enterprise procurement, request an SSO-eligible workspace from the sales team and your account ships with SAML on day one.

  2. Create one bot per Adobe Commerce store view

    From the dashboard click New chatbot. Name it after the store view it serves (e.g. 'US Storefront', 'UK Storefront', 'B2B Dealer Portal'). If your Adobe Commerce instance hosts multiple websites, repeat per scope so each store view has its own knowledge base and its own analytics.

  3. Point the bot at your sitemap.xml

    On the Sources tab, paste the URL of your Adobe Commerce sitemap. Adobe Commerce generates this automatically at /pub/media/sitemap/sitemap.xml once you enable Marketing, SEO and Search, Site Map. ChatRaj indexes every product, category, and CMS page from that file. For B2B catalogs that gate inventory, supplement with a public CMS landing page that summarizes capabilities for the bot to read.

  4. Customize for your brand and locale

    On the Customize tab, set the bot's accent color to match your store theme, write a welcome message in the store view's primary language, and add 4-6 suggested questions that map to real visitor intent (return policy, shipping, B2B pricing process, technical spec sheets). Save.

  5. Copy your embed snippet

    On the Embed tab, copy the one-line script tag. It looks like: <script async src="https://chatraj.com/widget.js" data-bot-id="YOUR_BOT_ID"></script>. You will paste this same line into whichever install path you pick below.

  6. Paste into Adobe Commerce Admin (Path A, fastest)

    In the Adobe Commerce Admin go to Content, Design, Configuration. Click Edit on the scope you want (Default Config for all store views, or a specific Store View row for a per-locale bot). Expand HTML Head. Paste the script tag into the Scripts and Style Sheets field (or the Miscellaneous Scripts field if your version surfaces both). Click Save Configuration.

  7. Flush cache and verify in incognito

    In the Admin go to System, Tools, Cache Management and click Flush Magento Cache. If you run Varnish, the same button issues a full-page-cache purge. Open the public storefront in an incognito window. Within 1-2 seconds the ChatRaj bubble appears in the bottom-right corner. Click it, send a test question about a product, and confirm the bot answers from your catalog content. Promote to the next environment through your normal config-sync flow.

ChatRaj on Adobe Commerce

Plugin approach vs ChatRaj approach

What you'd otherwise stitch together from a chatbot plugin + a separate analytics tool + a lead-capture tool, ChatRaj bundles by default, and ships in a single script tag.

The plugin approach

Other Adobe Commerce chatbot tools

Typical when you install a WordPress plugin, Shopify app, or third-party chatbot widget.

  • Install method: Marketplace extension via composer require, with admin module config
  • Catalog access scope: Often requests REST API access to products, customers, and orders
  • Multi-store support: Single bot across all store views, manual scope wiring
  • Works with Hyva theme: Many older extensions break on Hyva (no Knockout)
  • Works with PWA Studio / headless: Often requires a separate React component or extension
  • Cache compatibility (Varnish, Redis): Marketplace extensions sometimes invalidate full-page cache on every render
  • B2B Commerce lead capture: Generic contact form, no role or company field
  • Multi-language across store views: Often a paid add-on per language
  • GDPR Data Processing Agreement: Varies by vendor; many require enterprise tier
  • SOC 2 Type II: Marketplace extensions rarely publish SOC 2 reports
The ChatRaj approach

One script tag. Everything bundled.

Hosted, configured, and maintained by us. You add a single line to your site.

  • Install method: One script tag via Admin HTML Head Includes, no extension install, no composer change
  • Catalog access scope: Zero. Runs in browser, reads only public storefront pages
  • Multi-store support: One bot per scope, Admin scope selector controls visibility
  • Works with Hyva theme: Yes. Pure script tag, no Knockout, no jQuery dependency
  • Works with PWA Studio / headless: Yes. Same snippet injected via useEffect in the storefront repo
  • Cache compatibility (Varnish, Redis): Script loads from chatraj.com, never busts your full-page cache
  • B2B Commerce lead capture: Configurable B2B form (name, email, company, role, free text) with CRM webhook
  • Multi-language across store views: Auto-detects visitor language, supports 100+ languages on every plan
  • GDPR Data Processing Agreement: DPA signed with every paid customer, EU-region storage available
  • SOC 2 Type II: SOC 2 Type II, audit report available under NDA for procurement review
FAQ: ChatRaj on Adobe Commerce

Common Adobe Commerce chatbot questions

Yes. The ChatRaj widget is a single async script tag with no jQuery, no Knockout, and no RequireJS dependency, so it is fully compatible with Hyva's Tailwind plus Alpine.js stack. On Hyva you paste the script tag into your theme's head template (commonly templates/page/js/head.phtml) or into the HTML Head Includes Admin field, the same as on Luma. Adobe officially supports Hyva as of 2024, and Hyva's lean 50 to 100 KB JavaScript footprint actually makes the chatbot feel faster than on Luma's 700 KB to 1.2 MB baseline.

Was this helpful?

Ship your first chatbot in 60 seconds.

Sign in with Google and you'll be answering visitor questions before your coffee gets cold.

60-second setup · One-line install · Works on any site

Works on any website
SShopify
WWebflow
WPWordPress
SqSquarespace
FFramer
</>Plain HTML