Agentic Commerce — Revenue per AI (ChatGPT, Claude, Perplexity, Copilot)
Description
Highlights
- See revenue per AI source live: how much ChatGPT, Claude & Perplexity brought your shop
- Native JSONL feeds for Perplexity, Google UCP, Anthropic and Bing/Copilot — all in one plugin
- llms.txt, commerce.txt, Markdown alternates + Open Graph & Twitter Card preview tags
- AI bot tracking for 24 known crawlers + UTM attribution for ChatGPT, Claude, Perplexity, Gemini
- GDPR-ready: IP anonymization on by default, retention policy, clean uninstall
Features
- JSONL Product Export Provider for Perplexity (Agentic Commerce Protocol)
- JSONL Product Export Provider for Google UCP (Gemini / Google Shopping)
- JSONL Product Export Provider for Anthropic / Claude
- JSONL Product Export Provider for Bing / Microsoft Copilot
- Public /llms.txt steering file per llmstxt.org spec
- Public /commerce.txt per CommerceTXT v1.0.1
- Markdown alternate /{slug}.md for products, categories and CMS pages with hreflang
- AI bot tracking for 24 crawler signatures with anonymized IP
- UTM attribution from chatgpt.com, perplexity.ai, claude.ai, gemini.google.com
- Order revenue attribution per AI source via first-party cookie
- Live dashboard with token, password, IP-whitelist, rate-limit and brute-force lockout; revenue in the shop default currency, foreign currencies converted at the order rate
- Open Graph + Twitter Card tags for rich AI agent previews
- JSON-LD graph: Product, Offer, OfferShippingDetails, MerchantReturnPolicy, Brand, BreadcrumbList, Organization, WebSite/SearchAction, AggregateRating, Review, optional LocalBusiness and Article
- Product Readiness Score 0–100 on 11 AI criteria including image alt-text
- Six self-service tools: Support Bundle, Feed Preview, GPTBot Crawl, Endpoint Health, Bot Detection Test, Score Runner
About the Extension
Stop guessing whether AI shopping works for you. See it in euros.
AI agents like ChatGPT, Claude, Perplexity and Microsoft Copilot are taking over more and more of the product discovery journey. If your shop does not serve these systems the right data in the right format, you simply will not be found — no matter how strong your classic SEO is. And without tracking, you have no way to prove that the work pays off.
Great Agentic Commerce is the complete AI discovery command center for Shopware 6.7.9+ — a self-service plugin from the Store, no agency required.
Three promises
- 1. Be discoverable. Feeds for Perplexity, Google UCP, Anthropic / Claude and Bing / Copilot, plus open standards like llms.txt, commerce.txt and Markdown alternates of every product, category and CMS page.
- 2. Prove the revenue. Every order that came in after a visit from an AI platform is linked back to its source. The live dashboard shows you the gross revenue per AI provider over the last 30 days, ranked. No more “we think AI helps a bit”.
- 3. Stay in control. Self-service tools in the admin — feed validation, GPTBot crawl simulation, endpoint health check and a support bundle in one click.
Revenue attribution per AI source (the killer feature)
When an AI agent sends a visitor to your shop, the plugin sets a first-party 30-day cookie identifying the source (ChatGPT, Claude, Perplexity, Gemini and others). When that visitor completes a checkout, the order is linked back to that source. The live dashboard then shows, per provider:
- Number of attributed orders in the selected time range
- Total gross revenue in your shop currency
- Ranking of top AI sources by revenue
Works on the public token-protected dashboard URL — share the read-only link with your CMO without giving them admin access.
AI discovery endpoints (active by default)
- /llms.txt — 14-section machine-readable shop guide following the llmstxt.org spec
- /commerce.txt — CommerceTXT v1.0.1 standard
- /{slug}.md — every product, category and CMS page also available as Markdown with YAML frontmatter, plus a hreflang link to the Markdown variant in the HTML head
- /category-feed.json — category structure with parent-child relations
- /ai/ai-plugin.json — ChatGPT plugin manifest
- /openapi.json — OpenAPI 3.1 specification of all endpoints
- /agentic-products-index.md — paginated full product index (up to 5,000 entries)
- /robots.txt — plugin-managed with AI-crawler-friendly defaults; yields gracefully if you maintain your own
Feed providers for AI shopping
- Perplexity ACP — Agentic Commerce Protocol JSONL feed
- Google Universal Commerce Protocol (UCP) — for Google Shopping / Gemini
- Anthropic / Claude — semantic JSONL feed optimized for Claude agents
- Bing / Microsoft Copilot — Microsoft Product Catalog JSONL
Each provider ships with its own line-by-line validator that reports feed errors with exact line and column.
Rich previews for AI agents
When ChatGPT or Claude fetches one of your URLs, they now see a full product preview — image, brand, price, description — instead of just the page title. The plugin emits 15 Open Graph, Twitter Card and product meta tags per product page, plus a full JSON-LD graph: Product, Offer, OfferShippingDetails, MerchantReturnPolicy, Brand, ImageObject, BreadcrumbList, Organization and WebSite with SearchAction — plus AggregateRating and a Review sample on products that have reviews. Optional on top: LocalBusiness for shops with a physical address, Article with author defaults for editorial pages, and Offer.priceValidUntil. Duplicate detection prevents conflicts with Core or other SEO plugins.
AI bot tracking and UTM attribution
The plugin detects 24 known AI bot signatures in the user agent: GPTBot, OAI-SearchBot, ChatGPT-User, ClaudeBot, Claude-Web, PerplexityBot, CCBot, Bytespider, Google-Extended, Applebot-Extended, Amazonbot, YouBot, MistralAI-User, Diffbot and more.
In parallel, AI platform traffic is detected via utm_source and the Referer header and logged per session — for chatgpt.com, perplexity.ai, claude.ai, gemini.google.com, bard.google.com and others.
Product readiness scorer
Every product gets a 0-to-100 score showing how well prepared it is for AI discovery. Eleven criteria are evaluated: cover image, gallery images, image alt-text completeness, GTIN, manufacturer number, manufacturer name, description length, meta description, variant properties, and product reviews. The admin module shows gap-by-gap where each product loses points and suggests one-line fixes.
Live dashboard with five-layer protection
At /agentic-dashboard/{your-token} you open a token-protected dashboard. Optional additional layers:
- 32+ character access token in the URL (mandatory)
- IP whitelist with CIDR support (optional)
- Password with a 365-day cookie (optional)
- Rate limit: 60 requests/minute per IP (always on)
- Brute-force lockout: 10 failed tokens trigger a 15-minute IP block (always on)
Three tabs: Live with auto-refresh and the AI-revenue card, Details with time-range filter, and Config for quick settings without leaving the dashboard.
Self-service tools in the admin
- Support Bundle — one-click ZIP with plugin info, redacted config, table counts, last 100 bot hits and a live endpoint-health probe.
- Feed Preview & Validator — render the first 5 products as JSONL for any provider and run the matching validator.
- GPTBot Crawl Simulation — fetch llms.txt as GPTBot and follow Markdown links.
- Bot Detection Test — pick a signature and verify detection.
- Endpoint Health Check — pings every discovery endpoint, green/yellow/red.
- Readiness Score Runner — re-calculate scores with a live progress bar.
Privacy and GDPR
- IP anonymization on by default — IPv4 last octet and IPv6 last 80 bits zeroed before storage. Admin-configurable: anonymized (default), full (opt-in), or disabled.
- Retention policy: bot-log 90 days, UTM-log 180 days — enforced daily by a Shopware scheduled task.
- No external HTTP calls from the storefront.
- Uninstall with “remove plugin data” drops all plugin tables and configuration values cleanly.
- GDPR template paragraph included for your privacy policy.
Multi-sales-channel ready
Every setting is configurable per sales channel — different shops in the same Shopware install (different domains) each get their own token, dashboard and tracking data. Settings cascade: per-SC value overrides the global default; missing per-SC value falls back to the global one.
What this plugin does not do
- It does not sell inside ChatGPT. There is no agentic checkout, no payment handover, no order taken outside your shop. The plugin makes your catalogue findable for AI agents and measures what that brings in — the purchase happens in your Shopware checkout, as before.
- No template overrides. The plugin ships seven templates, all of them its own pages; not one extends a Shopware template. A theme update cannot collide with it.
- No JavaScript in your storefront. The storefront bundle is empty — nothing is injected into pages your customers load.
- No external calls on customer page loads. Feeds are fetched by the AI platforms from your shop, not the other way round. The only outbound request is the endpoint health check, and only when you click it in the admin.
- Nothing is left behind. Uninstalling with "remove plugin data" drops all five plugin tables and every configuration value.
Technical details
- Compatible with Shopware ~6.7.9 || ~6.8.0
- PHP 8.2, 8.3 or 8.4
- MySQL 8.0+ / MariaDB equivalent
- Forward-compatible with Shopware Core 6.8 Agentic Commerce — runs today on 6.7.x with bundled abstracts
- Optional dependency: endroid/qr-code for inline SVG QR codes (plugin installs and works without it)
- Self-hosted Shopware only (no Shopware Cloud)
Stop guessing whether AI shopping works for you. See it in euros.
AI agents like ChatGPT, Claude, Perplexity and Microsoft Copilot are taking over more and more of the product discovery journey. If your shop does not serve these systems the right data in the right format, you simply will not be found — no matter how strong your classic SEO is. And without tracking, you have no way to prove that the work pays off.
Great Agentic Commerce is the complete AI discovery command center for Shopware 6.7.9+ — a self-service plugin from the Store, no agency required.
Three promises
- 1. Be discoverable. Feeds for Perplexity, Google UCP, Anthropic / Claude and Bing / Copilot, plus open standards like llms.txt, commerce.txt and Markdown alternates of every product, category and CMS page.
- 2. Prove the revenue. Every order that came in after a visit from an AI platform is linked back to its source. The live dashboard shows you the gross revenue per AI provider over the last 30 days, ranked. No more “we think AI helps a bit”.
- 3. Stay in control. Self-service tools in the admin — feed validation, GPTBot crawl simulation, endpoint health check and a support bundle in one click.
Revenue attribution per AI source (the killer feature)
When an AI agent sends a visitor to your shop, the plugin sets a first-party 30-day cookie identifying the source (ChatGPT, Claude, Perplexity, Gemini and others). When that visitor completes a checkout, the order is linked back to that source. The live dashboard then shows, per provider:
- Number of attributed orders in the selected time range
- Total gross revenue in your shop currency
- Ranking of top AI sources by revenue
Works on the public token-protected dashboard URL — share the read-only link with your CMO without giving them admin access.
AI discovery endpoints (active by default)
- /llms.txt — 14-section machine-readable shop guide following the llmstxt.org spec
- /commerce.txt — CommerceTXT v1.0.1 standard
- /{slug}.md — every product, category and CMS page also available as Markdown with YAML frontmatter, plus a hreflang link to the Markdown variant in the HTML head
- /category-feed.json — category structure with parent-child relations
- /ai/ai-plugin.json — ChatGPT plugin manifest
- /openapi.json — OpenAPI 3.1 specification of all endpoints
- /agentic-products-index.md — paginated full product index (up to 5,000 entries)
- /robots.txt — plugin-managed with AI-crawler-friendly defaults; yields gracefully if you maintain your own
Feed providers for AI shopping
- Perplexity ACP — Agentic Commerce Protocol JSONL feed
- Google Universal Commerce Protocol (UCP) — for Google Shopping / Gemini
- Anthropic / Claude — semantic JSONL feed optimized for Claude agents
- Bing / Microsoft Copilot — Microsoft Product Catalog JSONL
Each provider ships with its own line-by-line validator that reports feed errors with exact line and column.
Rich previews for AI agents
When ChatGPT or Claude fetches one of your URLs, they now see a full product preview — image, brand, price, description — instead of just the page title. The plugin emits 15 Open Graph, Twitter Card and product meta tags per product page, plus a full JSON-LD graph: Product, Offer, OfferShippingDetails, MerchantReturnPolicy, Brand, ImageObject, BreadcrumbList, Organization and WebSite with SearchAction — plus AggregateRating and a Review sample on products that have reviews. Optional on top: LocalBusiness for shops with a physical address, Article with author defaults for editorial pages, and Offer.priceValidUntil. Duplicate detection prevents conflicts with Core or other SEO plugins.
AI bot tracking and UTM attribution
The plugin detects 24 known AI bot signatures in the user agent: GPTBot, OAI-SearchBot, ChatGPT-User, ClaudeBot, Claude-Web, PerplexityBot, CCBot, Bytespider, Google-Extended, Applebot-Extended, Amazonbot, YouBot, MistralAI-User, Diffbot and more.
In parallel, AI platform traffic is detected via utm_source and the Referer header and logged per session — for chatgpt.com, perplexity.ai, claude.ai, gemini.google.com, bard.google.com and others.
Product readiness scorer
Every product gets a 0-to-100 score showing how well prepared it is for AI discovery. Eleven criteria are evaluated: cover image, gallery images, image alt-text completeness, GTIN, manufacturer number, manufacturer name, description length, meta description, variant properties, and product reviews. The admin module shows gap-by-gap where each product loses points and suggests one-line fixes.
Live dashboard with five-layer protection
At /agentic-dashboard/{your-token} you open a token-protected dashboard. Optional additional layers:
- 32+ character access token in the URL (mandatory)
- IP whitelist with CIDR support (optional)
- Password with a 365-day cookie (optional)
- Rate limit: 60 requests/minute per IP (always on)
- Brute-force lockout: 10 failed tokens trigger a 15-minute IP block (always on)
Three tabs: Live with auto-refresh and the AI-revenue card, Details with time-range filter, and Config for quick settings without leaving the dashboard.
Self-service tools in the admin
- Support Bundle — one-click ZIP with plugin info, redacted config, table counts, last 100 bot hits and a live endpoint-health probe.
- Feed Preview & Validator — render the first 5 products as JSONL for any provider and run the matching validator.
- GPTBot Crawl Simulation — fetch llms.txt as GPTBot and follow Markdown links.
- Bot Detection Test — pick a signature and verify detection.
- Endpoint Health Check — pings every discovery endpoint, green/yellow/red.
- Readiness Score Runner — re-calculate scores with a live progress bar.
Privacy and GDPR
- IP anonymization on by default — IPv4 last octet and IPv6 last 80 bits zeroed before storage. Admin-configurable: anonymized (default), full (opt-in), or disabled.
- Retention policy: bot-log 90 days, UTM-log 180 days — enforced daily by a Shopware scheduled task.
- No external HTTP calls from the storefront.
- Uninstall with “remove plugin data” drops all plugin tables and configuration values cleanly.
- GDPR template paragraph included for your privacy policy.
Multi-sales-channel ready
Every setting is configurable per sales channel — different shops in the same Shopware install (different domains) each get their own token, dashboard and tracking data. Settings cascade: per-SC value overrides the global default; missing per-SC value falls back to the global one.
What this plugin does not do
- It does not sell inside ChatGPT. There is no agentic checkout, no payment handover, no order taken outside your shop. The plugin makes your catalogue findable for AI agents and measures what that brings in — the purchase happens in your Shopware checkout, as before.
- No template overrides. The plugin ships seven templates, all of them its own pages; not one extends a Shopware template. A theme update cannot collide with it.
- No JavaScript in your storefront. The storefront bundle is empty — nothing is injected into pages your customers load.
- No external calls on customer page loads. Feeds are fetched by the AI platforms from your shop, not the other way round. The only outbound request is the endpoint health check, and only when you click it in the admin.
- Nothing is left behind. Uninstalling with "remove plugin data" drops all five plugin tables and every configuration value.
Technical details
- Compatible with Shopware ~6.7.9 || ~6.8.0
- PHP 8.2, 8.3 or 8.4
- MySQL 8.0+ / MariaDB equivalent
- Forward-compatible with Shopware Core 6.8 Agentic Commerce — runs today on 6.7.x with bundled abstracts
- Optional dependency: endroid/qr-code for inline SVG QR codes (plugin installs and works without it)
- Self-hosted Shopware only (no Shopware Cloud)
Details
- Available: English, German, Dutch, Italian, French, Czech, Polish, Spanish
- Latest update: 9 September 2026
- Version: 1.67.50
- Category: SEO Optimization
About the Extension Partner
great2gether
Partner Status
-
Shopware
Bronze Partner -
Shopware
Extension Partner
Details
-
Ø-Rating:
5
Average rating of 5 out of 5 stars
- Partner since: 2015
- Extensions: 28
Support
- Based in: Germany
- Speaks: German, English
- Response time: Quickly
Initial setup in five minutes
After activation, open the plugin configuration at Extensions → My Extensions → Great Agentic Commerce → Configure. Settings are organized into seven thematic cards that can be overridden per sales channel.
1. Dashboard
Set an access token of at least 16 characters — for example with the terminal command openssl rand -hex 16 or a memorable string of your choice. Optionally configure an IP whitelist with CIDR support and an additional password. The live tab refresh interval can be set anywhere from 5 seconds upward, default is 30 seconds.
2. AI Identity and Access Policy
This card is the heart of your AI communication. Here you fill in short description, business type, contact email and define what AI models may do with your content: read, summarize, index, use for training, and redistribute. Training is off by default and must be enabled deliberately. Return period in days and shipping info automatically flow into the JSON-LD of product pages.
3. Providers
Enable the AI shopping providers for which you want to publish product feeds: Perplexity, Google UCP, Anthropic or Bing/Copilot. Each enabled provider additionally requires a product export under Catalogues → Product Exports with the matching technical name.
4. Perplexity Configuration
Enter seller name, seller URL and the two-letter ISO country code for your store. These values appear in every feed row.
5. llms.txt
Enabled by default. Optionally set an API key — then /llms.txt is only served with the query parameter ?key=value.
6. commerce.txt
Analogous to llms.txt — default enabled, optionally protected via API key.
7. SEO
Enable the robots.txt manager if you want to use the plugin defaults with AI crawler rules. The placeholder {{ baseUrl }} is automatically replaced with your shop URL. You can also set a global robots meta tag, configure a revisit-after interval and store a Bing/Copilot verification token.
Creating product exports
For each enabled provider, create a new entry under Catalogues → Product Exports. Choose the sales channel, a product stream with your products, file format JSONL Agentic Commerce, and set the technical name to the provider key — perplexity, google-ucp, anthropic or bing-copilot. The shareable feed URL appears in the entry after saving.
Calculating readiness scores
After installation you should calculate readiness scores for all products once. In the admin module Catalogues → AI Tools → AI Readiness start this via the Re-calculate scores button. Alternatively via CLI with bin/console great:agentic:rescore --all.
Opening the dashboard
Access the dashboard at https://your-shop.com/agentic-dashboard/your-token. The three tabs Live, Details and Config can also be addressed directly with ?tab=details. The time range filter in the details tab persists in the URL, making links shareable.
Feed validation before platform submission
Under Catalogues → AI Tools → Feed Preview, pick the provider and immediately see the first five feed rows plus validator output with all field errors. Only when this shows 0 errors should you share the feed URL with the respective platform.
1.67.50 6.7.0.0 - 6.7.14.0
- AI Readiness list now shows a clear empty state with icon and text when no scores exist yet, instead of an empty grid
- Product column no longer shows "(unknown)" for variants or bulk-imported products: falls back to the parent product's name, and finally to the product number if no name is available
- Feed Preview: the "Preview + Validate" button now stays on the same row as the provider dropdown at any card width
- Re-score progress bar now uses Shopware's brand blue while running and Shopware's success green when done, matching the rest of the admin
1.67.49 6.7.0.0 - 6.7.14.0
- Removed the statement that switched the database's foreign-key checks off during uninstall. Shopware's code review forbids it outright, and it was never needed: a foreign key only blocks dropping the table it points AT, and the drop order already puts the dependent table first. The full cycle was re-run afterwards — uninstall still clears all five tables and every configuration value
- The QR-code renderer now also probes for the encoding class before instantiating it. That closes the last static-analysis warning and is the better behaviour anyway: a missing class would previously have surfaced only at the point of use
1.67.48 6.7.0.0 - 6.7.14.0
- Shopware's code review stopped with a severe error while analysing QrCodeRenderer: it could not resolve the optional QR-code library. Declaring the library as a hard require fixes the review but blocks installation — measured against 6.7.13: "Required plugin/package endroid/qr-code ^6.0 is missing or not installed". The class now names the library through string constants and dynamic instantiation instead of ::class expressions, so static analysis has no symbol to resolve while the runtime behaviour is unchanged: library present, QR codes render; library absent, a placeholder appears
1.67.47 6.7.0.0 - 6.7.14.0
- Removed the OpenAI configuration card, the enableOpenAi switch and the four openAi* fields. The switch had no read site anywhere in the code since v1.4.5 — it looked like a setting and was decoration — and the detail fields only fed the plugin's own OpenAI provider, which is gone now that Shopware's Core serves the open-ai technical name itself. A migration removes the leftover rows on update. The OpenAI feed template in the product export is untouched and still ships
- Fixed every product-export feed crashing with a TypeError as soon as a merchant configured one. The plugin tagged its five providers with Shopware's shopware.product_export.provider; once Core started consuming that tag in 6.7.13, its registry received objects that do not extend the class its return type demands, and the Core subscriber runs on every render. Reproduced with a real Perplexity export — the advertised default feed — and fixed by moving the providers onto the plugin's own tag and its own subscriber, exactly as the abstract provider's own docblock has described since 1.0. It never showed in development because the container had no product export at all
- Removed the compiler pass that deleted Shopware's own OpenAI product-export provider from the container. Its docblock claimed it was inert on 6.7.x; measured on 6.7.13 it fired in every shop, including shops that never wanted an OpenAI feed. With the providers on their own tag there is nothing left to resolve, and Core's provider is back
- Fixed the AI revenue figure silently stopping at 500 attributed orders. It loaded at most 500 rows, newest first, and added them up in PHP — a shop with more orders in the selected window saw a number that looked complete and was not, on the very figure the plugin advertises. The database now does the grouping and the currency conversion, with no row limit. Measured: 601 attributed orders are counted as 601
- Fixed the plugin taking over /robots.txt and answering 404 while its robots manager was switched off, which is the factory state. Any shop that installed the plugin and never opened that setting lost its robots.txt entirely, because the route shadows Shopware's own. The request is now handed back to Shopware Core instead
- Fixed the three-dot button on every row of the AI Readiness list opening an empty menu. It now offers "Open product" and jumps straight to the product that lost the points
- Column headings in the AI Readiness list now fall back to English in administration languages the plugin does not ship, instead of showing the raw snippet key
- Removed the two demo-traffic buttons from the AI Tools screen. The generators behind them were deliberately taken out in 1.67.23 because their rows could not be told apart from real tracking data, but the buttons stayed and called routes that no longer exist. The screen now shows the GPTBot crawl simulation it actually performs
- Fixed JSON-LD and Open Graph publishing every price as euro regardless of the sales channel currency. Search engines and AI agents were served CHF or GBP amounts labelled EUR
- Admin requests now carry their access token from the start. Every click previously went out unauthenticated first, earned a 401 and was only rescued by a retry — 36 avoidable failed requests for a single re-scoring run
- Store description and FAQ no longer advertise a demo traffic generator or a data reset that the plugin does not contain
- Removed eight snippet-registration classes that implemented SnippetFileInterface, a Shopware interface that no longer exists in 6.7.13. They had no effect — storefront snippets load from the JSON files by convention, verified before and after removal — but they would have broken any classmap-based autoloading
- Store description and features now list the JSON-LD types the plugin actually emits (measured on a rendered product page) instead of a shorter, outdated selection
1.67.39 6.7.9.0 - 6.7.14.0
Initial Store Upload
1.67.02 6.7.0.0 - 6.7.14.0
First release in the store