Skip to content
Reponse.ai LogoDocs
DocsAPISDKsGuides

Search Documentation

Search for an article...

Getting Started

  • Overview
  • Architecture
  • Installation
  • Authentication
  • First Request

Products & Collections

  • Products — List
  • Products — Get
  • Products — Metafields
  • Collections — List
  • Collections — Get
  • Collections — Products

Cart & Checkout

  • Cart — Create
  • Cart — Get
  • Cart — Add Item
  • Cart — Update Item
  • Cart — Remove Item
  • Cart — Apply Promotion
  • Checkout — Stripe
  • Checkout — Payment Intent
  • Checkout — ACP

Orders & Fulfillment

  • Orders — Create
  • Orders — Get
  • Orders — Confirm
  • Orders — Cancel
  • Orders — Fulfill
  • Orders — Refund

Commerce

  • Inventory — Get
  • Inventory — Update
  • Shipping — Rates
  • Discounts — List
  • Discounts — Create
  • Discounts — Validate
  • Subscriptions — Manage

Loyalty & Gift Cards

  • Loyalty — Balance
  • Loyalty — Redeem
  • Loyalty — Referral
  • Gift Cards — List
  • Gift Cards — Redeem

Tickets & Support

  • Tickets — List
  • Tickets — Create
  • Tickets — Reply

Platform

  • Product Feed — JSON
  • Product Feed — CSV
  • Theme — Get
  • Approvals — Execute
  • Approvals — Reject
  • Geocode

SDKs

  • SDK Overview
  • TypeScript SDK
  • React Hooks

Guides

  • Chat Widget
  • Shopify Sync
  • Storefront Starter
  • Loyalty Program
  • Discounts & Promotions
  • Subscriptions
  • Klaviyo Integration
  • Custom Domains
  • Agentic Commerce (ACP)
  • A2A Protocol
  • AI Engines
  • MCP Server

Webhooks

  • Webhooks Overview
  • Events Reference
  • Shopify Webhooks
  • Stripe Webhooks
  • Reviews (Stamped / Trustpilot)
  • Logistics
  • Email Inbound

Resources

  • Environment Variables
  • Rate Limits
  • Changelog
DocsGuidesStorefront Starter

Storefront Starter

The Next.js storefront starter.

4 min read/Last updated Aug 19, 2026
On this page

Overview

The **Reponse Storefront Starter** is a production-ready Next.js commerce frontend wired to the Reponse SDK. It ships with product listing, product detail, collections, cart, embedded checkout, sitemap, robots.txt, and product JSON-LD — everything you need to launch a headless storefront in minutes.

Prerequisites

RequirementMinimum version
Node.js18+
pnpm (or npm / yarn)9+
Reponse workspaceActive, with at least one product
Reponse API keyGenerated in Dashboard → Settings → API Keys
Stripe accountConnected to your workspace (for checkout)

Step 1 — Clone the starter

bash
npx degit reponseai/storefront-starter my-store
cd my-store
pnpm install

Step 2 — Configure environment variables

Create a `.env.local` file at the project root:

bash
# ─── Reponse API (required) ─────────────────────────────────────────────────
REPONSE_API_KEY=rp_live_xxxxxxxxxxxx
NEXT_PUBLIC_REPONSE_API_URL=https://reponse.ai/api
NEXT_PUBLIC_REPONSE_API_KEY=rp_live_xxxxxxxxxxxx
NEXT_PUBLIC_WORKSPACE_ID=your-workspace-uuid

# ─── Store ──────────────────────────────────────────────────────────────────
NEXT_PUBLIC_STORE_NAME="My Store"
NEXT_PUBLIC_SITE_URL=https://my-store.com

# ─── Checkout ───────────────────────────────────────────────────────────────
CHECKOUT_MODE=embedded
NEXT_PUBLIC_MARKET_ID=your-market-uuid
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=pk_live_xxxxxxxxxxxx

Variable reference

VariableRequiredDescription
REPONSE_API_KEYYesServer-side API key. See Authentication.
NEXT_PUBLIC_REPONSE_API_URLYesAPI base URL — use https://reponse.ai/api for production.
NEXT_PUBLIC_REPONSE_API_KEYYesClient-side API key (same value as REPONSE_API_KEY). Used by the variant selector and client-side cart operations.
NEXT_PUBLIC_WORKSPACE_IDYesYour workspace UUID. See How to find your Workspace ID.
NEXT_PUBLIC_STORE_NAMEYesStore name shown in </code> and footer.</td></tr><tr><td class="px-3 py-2 text-sm text-secondary border border-default"><code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">NEXT_PUBLIC_SITE_URL</code></td><td class="px-3 py-2 text-sm text-secondary border border-default">No</td><td class="px-3 py-2 text-sm text-secondary border border-default">Canonical base URL for SEO (defaults to <code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">localhost:3000</code>).</td></tr><tr><td class="px-3 py-2 text-sm text-secondary border border-default"><code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">CHECKOUT_MODE</code></td><td class="px-3 py-2 text-sm text-secondary border border-default">No</td><td class="px-3 py-2 text-sm text-secondary border border-default"><code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">embedded</code> (Stripe Elements on your site) or <code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">redirect</code> (redirect to Stripe Checkout). Defaults to <code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">embedded</code>. See <a href="#checkout-modes" class="text-info hover:underline transition-colors">Checkout modes</a>.</td></tr><tr><td class="px-3 py-2 text-sm text-secondary border border-default"><code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">NEXT_PUBLIC_MARKET_ID</code></td><td class="px-3 py-2 text-sm text-secondary border border-default">Yes</td><td class="px-3 py-2 text-sm text-secondary border border-default">Market UUID for currency, taxes, and shipping. See <a href="#how-to-find-your-market-id" class="text-info hover:underline transition-colors">How to find your Market ID</a>.</td></tr><tr><td class="px-3 py-2 text-sm text-secondary border border-default"><code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY</code></td><td class="px-3 py-2 text-sm text-secondary border border-default">Yes</td><td class="px-3 py-2 text-sm text-secondary border border-default">Stripe publishable key. See <a href="#how-to-find-your-stripe-key" class="text-info hover:underline transition-colors">How to find your Stripe key</a>.</td></tr></tbody></table></div><h3 id="how-to-find-your-workspace-id" class="scroll-mt-20 text-primary font-semibold">How to find your Workspace ID</h3><ol class="list-decimal list-inside space-y-1 my-4 text-secondary"><li>Open the Reponse dashboard.</li> <li>The workspace ID is the UUID in the URL: <code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">https://reponse.ai/dashboard/{workspace-id}/...</code></li> <li>You can also find it in <strong>Settings → General</strong>.</li> </ol><h3 id="how-to-find-your-market-id" class="scroll-mt-20 text-primary font-semibold">How to find your Market ID</h3><p class="my-3 text-secondary leading-relaxed">Markets define the currency, tax rules, and shipping zones for a region. Every workspace has at least one market (created automatically).</p><ol class="list-decimal list-inside space-y-1 my-4 text-secondary"><li>Go to <strong>Dashboard → Settings → Markets</strong>.</li> <li>Click on the market you want to use (e.g. "France" or "Europe").</li> <li>Copy the <strong>Market ID</strong> shown at the top of the market detail page.</li> </ol><p class="my-3 text-secondary leading-relaxed">If you only sell in one country, use your default market. For multi-currency storefronts, pass different `market_id` values based on the visitor's locale.</p><h3 id="how-to-find-your-stripe-key" class="scroll-mt-20 text-primary font-semibold">How to find your Stripe key</h3><p class="my-3 text-secondary leading-relaxed">The storefront needs your Stripe **publishable key** (starts with `pk_live_` or `pk_test_`). This is a client-side key — it is safe to expose in the browser.</p><ol class="list-decimal list-inside space-y-1 my-4 text-secondary"><li>Go to <a href="https://dashboard.stripe.com/apikeys" class="text-info hover:underline transition-colors" target="_blank" rel="noopener noreferrer">dashboard.stripe.com/apikeys</a>.</li> <li>Copy the <strong>Publishable key</strong>.</li> <li>For testing, use the key from Stripe's test mode (<code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">pk_test_...</code>).</li> </ol><blockquote class="border-l-2 border-strong bg-subtle pl-4 py-2 my-4 not-italic">**Note:** Your workspace also needs a Stripe **secret key** configured on the backend. This is set up in **Dashboard → Settings → Payments** — you do not need to add it to your storefront `.env.local`.</blockquote><h3 id="checkout-modes" class="scroll-mt-20 text-primary font-semibold">Checkout modes</h3><div class="overflow-x-auto my-4 not-prose"><table class="w-full text-sm border-collapse border border-default"><thead><tr><th class="bg-subtle px-3 py-2 text-left text-xs font-semibold text-secondary border border-default">Mode</th><th class="bg-subtle px-3 py-2 text-left text-xs font-semibold text-secondary border border-default">Description</th></tr></thead><tbody><tr><td class="px-3 py-2 text-sm text-secondary border border-default"><code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">embedded</code> (default)</td><td class="px-3 py-2 text-sm text-secondary border border-default">Stripe Payment Elements render directly on your storefront. The customer never leaves your site. Requires <code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY</code>.</td></tr><tr><td class="px-3 py-2 text-sm text-secondary border border-default"><code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">redirect</code></td><td class="px-3 py-2 text-sm text-secondary border border-default">The customer is redirected to a Stripe-hosted checkout page. Simpler to set up — no Stripe key needed in the storefront.</td></tr></tbody></table></div><h2 id="step-3-run-locally" class="scroll-mt-20 text-primary font-semibold">Step 3 — Run locally</h2><div class="relative group my-4 not-prose"><span class="absolute top-2 left-3 text-[10px] font-mono select-none uppercase tracking-wider" style="color: var(--code-block-text); opacity: 0.4">bash</span><button type="button" class="code-copy-btn absolute top-2 right-2 p-1 rounded transition-colors opacity-0 group-hover:opacity-100 focus:opacity-100" style="color: var(--code-block-text)" aria-label="Copy code" title="Copy"><svg class="w-4 h-4 copy-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="9" y="9" width="13" height="13" rx="2"/><path d="M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1"/></svg><svg class="w-4 h-4 check-icon hidden" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20 6L9 17l-5-5"/></svg></button><pre class="bg-code-block rounded-lg pt-8 px-4 pb-4 overflow-x-auto text-[13px] leading-relaxed" style="color: var(--code-block-text)"><code class="language-bash">pnpm dev</code></pre></div><p class="my-3 text-secondary leading-relaxed">Open [http://localhost:3000](http://localhost:3000). Products from your Reponse workspace appear automatically.</p><h2 id="step-4-deploy" class="scroll-mt-20 text-primary font-semibold">Step 4 — Deploy</h2><h3 id="vercel" class="scroll-mt-20 text-primary font-semibold">Vercel</h3><div class="relative group my-4 not-prose"><span class="absolute top-2 left-3 text-[10px] font-mono select-none uppercase tracking-wider" style="color: var(--code-block-text); opacity: 0.4">bash</span><button type="button" class="code-copy-btn absolute top-2 right-2 p-1 rounded transition-colors opacity-0 group-hover:opacity-100 focus:opacity-100" style="color: var(--code-block-text)" aria-label="Copy code" title="Copy"><svg class="w-4 h-4 copy-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="9" y="9" width="13" height="13" rx="2"/><path d="M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1"/></svg><svg class="w-4 h-4 check-icon hidden" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20 6L9 17l-5-5"/></svg></button><pre class="bg-code-block rounded-lg pt-8 px-4 pb-4 overflow-x-auto text-[13px] leading-relaxed" style="color: var(--code-block-text)"><code class="language-bash">pnpm build # verify production build locally vercel --prod # deploy (or push to GitHub with Vercel integration)</code></pre></div><p class="my-3 text-secondary leading-relaxed">Set the same environment variables in the Vercel dashboard under **Settings → Environment Variables**.</p><h3 id="netlify" class="scroll-mt-20 text-primary font-semibold">Netlify</h3><p class="my-3 text-secondary leading-relaxed">The starter includes a `netlify.toml` configuration file. To deploy:</p><ol class="list-decimal list-inside space-y-1 my-4 text-secondary"><li>Create a new site on Netlify and connect your Git repository.</li> <li>Netlify auto-detects the Next.js framework and uses the <code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">@netlify/plugin-nextjs</code> adapter.</li> <li>Set environment variables in <strong>Site Settings → Environment Variables</strong>.</li> <li>Deploy.</li> </ol><h2 id="step-5-add-the-ai-chat-widget-optional" class="scroll-mt-20 text-primary font-semibold">Step 5 — Add the AI Chat Widget (optional)</h2><p class="my-3 text-secondary leading-relaxed">Add the Reponse chat widget to your storefront for conversational commerce. The starter includes this automatically when `NEXT_PUBLIC_WORKSPACE_ID` is set.</p><p class="my-3 text-secondary leading-relaxed">If you need to add it manually to a custom layout:</p><div class="relative group my-4 not-prose"><span class="absolute top-2 left-3 text-[10px] font-mono select-none uppercase tracking-wider" style="color: var(--code-block-text); opacity: 0.4">tsx</span><button type="button" class="code-copy-btn absolute top-2 right-2 p-1 rounded transition-colors opacity-0 group-hover:opacity-100 focus:opacity-100" style="color: var(--code-block-text)" aria-label="Copy code" title="Copy"><svg class="w-4 h-4 copy-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="9" y="9" width="13" height="13" rx="2"/><path d="M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1"/></svg><svg class="w-4 h-4 check-icon hidden" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20 6L9 17l-5-5"/></svg></button><pre class="bg-code-block rounded-lg pt-8 px-4 pb-4 overflow-x-auto text-[13px] leading-relaxed" style="color: var(--code-block-text)"><code class="language-tsx">import Script from "next/script"; <Script src="https://reponse.ai/assets/sdk/reponse-widget.min.js" data-workspace-id={process.env.NEXT_PUBLIC_WORKSPACE_ID} strategy="lazyOnload" /></code></pre></div><h2 id="step-6-customize-the-theme" class="scroll-mt-20 text-primary font-semibold">Step 6 — Customize the theme</h2><p class="my-3 text-secondary leading-relaxed">The starter uses Tailwind CSS v4 and CSS variables for theming. Override the CSS variables in `app/globals.css`:</p><div class="relative group my-4 not-prose"><span class="absolute top-2 left-3 text-[10px] font-mono select-none uppercase tracking-wider" style="color: var(--code-block-text); opacity: 0.4">css</span><button type="button" class="code-copy-btn absolute top-2 right-2 p-1 rounded transition-colors opacity-0 group-hover:opacity-100 focus:opacity-100" style="color: var(--code-block-text)" aria-label="Copy code" title="Copy"><svg class="w-4 h-4 copy-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="9" y="9" width="13" height="13" rx="2"/><path d="M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1"/></svg><svg class="w-4 h-4 check-icon hidden" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20 6L9 17l-5-5"/></svg></button><pre class="bg-code-block rounded-lg pt-8 px-4 pb-4 overflow-x-auto text-[13px] leading-relaxed" style="color: var(--code-block-text)"><code class="language-css">:root { --color-primary: #1a1a2e; --color-accent: #e94560; --font-sans: 'Inter', sans-serif; }</code></pre></div><h2 id="project-structure" class="scroll-mt-20 text-primary font-semibold">Project structure</h2><div class="relative group my-4 not-prose"><button type="button" class="code-copy-btn absolute top-2 right-2 p-1 rounded transition-colors opacity-0 group-hover:opacity-100 focus:opacity-100" style="color: var(--code-block-text)" aria-label="Copy code" title="Copy"><svg class="w-4 h-4 copy-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="9" y="9" width="13" height="13" rx="2"/><path d="M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1"/></svg><svg class="w-4 h-4 check-icon hidden" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20 6L9 17l-5-5"/></svg></button><pre class="bg-code-block rounded-lg p-4 overflow-x-auto text-[13px] leading-relaxed" style="color: var(--code-block-text)"><code>my-store/ ├── src/ │ ├── app/ │ │ ├── page.tsx # Home / product listing │ │ ├── products/[slug]/ # Product detail page │ │ ├── collections/[handle]/ # Collection page │ │ ├── cart/ # Cart page │ │ ├── checkout/ # Embedded checkout │ │ ├── order/success/ # Order confirmation │ │ ├── policies/[type]/ # Legal policies │ │ ├── sitemap.ts # Dynamic sitemap │ │ ├── robots.ts # Robots.txt │ │ └── layout.tsx # Root layout + AI widget │ ├── components/ # UI components │ └── lib/ │ ├── reponse.ts # SDK client singleton │ ├── cart.ts # Cart server actions │ └── currency.ts # Price formatting ├── netlify.toml # Netlify config ├── package.json └── .env.local</code></pre></div><h2 id="troubleshooting" class="scroll-mt-20 text-primary font-semibold">Troubleshooting</h2><div class="overflow-x-auto my-4 not-prose"><table class="w-full text-sm border-collapse border border-default"><thead><tr><th class="bg-subtle px-3 py-2 text-left text-xs font-semibold text-secondary border border-default">Symptom</th><th class="bg-subtle px-3 py-2 text-left text-xs font-semibold text-secondary border border-default">Cause</th><th class="bg-subtle px-3 py-2 text-left text-xs font-semibold text-secondary border border-default">Fix</th></tr></thead><tbody><tr><td class="px-3 py-2 text-sm text-secondary border border-default">Empty product list</td><td class="px-3 py-2 text-sm text-secondary border border-default">Invalid or missing <code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">REPONSE_API_KEY</code></td><td class="px-3 py-2 text-sm text-secondary border border-default">Verify the key in Dashboard → Settings → API Keys</td></tr><tr><td class="px-3 py-2 text-sm text-secondary border border-default">401 on API calls</td><td class="px-3 py-2 text-sm text-secondary border border-default">Key does not have <code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">catalog:read</code> scope</td><td class="px-3 py-2 text-sm text-secondary border border-default">Regenerate the key with required scopes</td></tr><tr><td class="px-3 py-2 text-sm text-secondary border border-default">Build fails with type errors</td><td class="px-3 py-2 text-sm text-secondary border border-default">Outdated SDK version</td><td class="px-3 py-2 text-sm text-secondary border border-default">Run <code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">pnpm update @reponseai/sdk</code></td></tr><tr><td class="px-3 py-2 text-sm text-secondary border border-default">Styles not applied after theme change</td><td class="px-3 py-2 text-sm text-secondary border border-default">Tailwind purge cache</td><td class="px-3 py-2 text-sm text-secondary border border-default">Delete <code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">.next/</code> and restart <code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">pnpm dev</code></td></tr><tr><td class="px-3 py-2 text-sm text-secondary border border-default">Images not loading</td><td class="px-3 py-2 text-sm text-secondary border border-default">Missing domain in <code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">next.config.ts</code></td><td class="px-3 py-2 text-sm text-secondary border border-default">Add your CDN domain to <code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">images.remotePatterns</code></td></tr><tr><td class="px-3 py-2 text-sm text-secondary border border-default">Checkout fails</td><td class="px-3 py-2 text-sm text-secondary border border-default">Missing <code class="bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose">NEXT_PUBLIC_MARKET_ID</code> or Stripe not connected</td><td class="px-3 py-2 text-sm text-secondary border border-default">Verify market ID and Stripe config in dashboard</td></tr></tbody></table></div><h2 id="related" class="scroll-mt-20 text-primary font-semibold">Related</h2><ul class="list-disc list-inside space-y-1 my-4 text-secondary"><li><a href="/docs/authentication" class="text-info hover:underline transition-colors">Authentication</a></li> <li><a href="/docs/checkout-stripe" class="text-info hover:underline transition-colors">Checkout — Stripe</a></li> <li><a href="/docs/checkout-intent" class="text-info hover:underline transition-colors">Checkout — Payment Intent</a></li> <li><a href="/docs/sdk-overview" class="text-info hover:underline transition-colors">SDK Overview</a></li> <li><a href="/docs/environment-variables" class="text-info hover:underline transition-colors">Environment Variables</a></li> </ul></div><div class="mt-10 border-t border-default pt-6"><nav class="grid grid-cols-1 sm:grid-cols-2 gap-4 mt-12" aria-label="Pagination"><a class="group flex items-center gap-3 border border-default rounded-xl p-4 hover:bg-hover transition-colors" href="/docs/shopify-sync"><svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" fill="currentColor" viewBox="0 0 256 256" class="w-4 h-4 text-muted shrink-0 group-hover:text-primary transition-colors"><path d="M165.66,202.34a8,8,0,0,1-11.32,11.32l-80-80a8,8,0,0,1,0-11.32l80-80a8,8,0,0,1,11.32,11.32L91.31,128Z"></path></svg><div class="flex flex-col min-w-0"><span class="text-xs text-muted">Previous</span><span class="text-sm font-medium text-primary truncate">Shopify Sync</span></div></a><a class="group flex items-center justify-end gap-3 border border-default rounded-xl p-4 hover:bg-hover transition-colors text-right" href="/docs/loyalty-program"><div class="flex flex-col min-w-0"><span class="text-xs text-muted">Next</span><span class="text-sm font-medium text-primary truncate">Loyalty Program</span></div><svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" fill="currentColor" viewBox="0 0 256 256" class="w-4 h-4 text-muted shrink-0 group-hover:text-primary transition-colors"><path d="M181.66,133.66l-80,80a8,8,0,0,1-11.32-11.32L164.69,128,90.34,53.66a8,8,0,0,1,11.32-11.32l80,80A8,8,0,0,1,181.66,133.66Z"></path></svg></a></nav></div></div></article><aside class="hidden lg:flex flex-col w-[240px] shrink-0 sticky top-[48px] h-[calc(100vh-48px)] border-l border-default bg-subtle"><div class="flex-1 overflow-y-auto px-4 py-6 scrollbar-thin"></div></aside></div><!--$--><!--/$--></main></div></div></div><script>$RB=[];$RV=function(a){$RT=performance.now();for(var b=0;b<a.length;b+=2){var c=a[b],e=a[b+1];null!==e.parentNode&&e.parentNode.removeChild(e);var f=c.parentNode;if(f){var g=c.previousSibling,h=0;do{if(c&&8===c.nodeType){var d=c.data;if("/$"===d||"/&"===d)if(0===h)break;else h--;else"$"!==d&&"$?"!==d&&"$~"!==d&&"$!"!==d&&"&"!==d||h++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;e.firstChild;)f.insertBefore(e.firstChild,c);g.data="$";g._reactRetry&&requestAnimationFrame(g._reactRetry)}}a.length=0}; $RC=function(a,b){if(b=document.getElementById(b))(a=document.getElementById(a))?(a.previousSibling.data="$~",$RB.push(a,b),2===$RB.length&&("number"!==typeof $RT?requestAnimationFrame($RV.bind(null,$RB)):(a=performance.now(),setTimeout($RV.bind(null,$RB),2300>a&&2E3<a?2300-a:$RT+300-a)))):b.parentNode.removeChild(b)};$RC("B:0","S:0")</script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[443497,[\"/_next/static/chunks/38ko4rtepgeah.js\",\"/_next/static/chunks/1itwu2yi2_e7s.js\"],\"default\"]\n3:I[730962,[\"/_next/static/chunks/38ko4rtepgeah.js\",\"/_next/static/chunks/1itwu2yi2_e7s.js\"],\"default\"]\n7:I[226935,[\"/_next/static/chunks/38ko4rtepgeah.js\",\"/_next/static/chunks/1itwu2yi2_e7s.js\"],\"OutletBoundary\"]\n8:\"$Sreact.suspense\"\nb:I[226935,[\"/_next/static/chunks/38ko4rtepgeah.js\",\"/_next/static/chunks/1itwu2yi2_e7s.js\"],\"ViewportBoundary\"]\nd:I[226935,[\"/_next/static/chunks/38ko4rtepgeah.js\",\"/_next/static/chunks/1itwu2yi2_e7s.js\"],\"MetadataBoundary\"]\nf:I[506050,[],\"default\",1]\n11:I[739191,[\"/_next/static/chunks/3uggcml-gypjj.js\",\"/_next/static/chunks/2hf_zhmhyiv6h.js\",\"/_next/static/chunks/187eevzj1vgdj.js\",\"/_next/static/chunks/3kzgvu_rue_fp.js\",\"/_next/static/chunks/2qe7n35gz6q67.js\",\"/_next/static/chunks/17w-056ko33ed.js\",\"/_next/static/chunks/3mvia7r6hw1ur.js\",\"/_next/static/chunks/38ije1pou43xc.js\",\"/_next/static/chunks/0v5pvcdpt7syi.js\",\"/_next/static/chunks/0tk0lz3jcqdyr.js\",\"/_next/static/chunks/3ck7ruq-6mpzo.js\"],\"DocsHeader\"]\n13:I[150953,[\"/_next/static/chunks/3uggcml-gypjj.js\",\"/_next/static/chunks/2hf_zhmhyiv6h.js\",\"/_next/static/chunks/187eevzj1vgdj.js\",\"/_next/static/chunks/3kzgvu_rue_fp.js\",\"/_next/static/chunks/2qe7n35gz6q67.js\",\"/_next/static/chunks/17w-056ko33ed.js\",\"/_next/static/chunks/3mvia7r6hw1ur.js\",\"/_next/static/chunks/38ije1pou43xc.js\",\"/_next/static/chunks/0v5pvcdpt7syi.js\",\"/_next/static/chunks/0tk0lz3jcqdyr.js\",\"/_next/static/chunks/3ck7ruq-6mpzo.js\"],\"DocsSearch\"]\n14:I[559725,[\"/_next/static/chunks/3uggcml-gypjj.js\",\"/_next/static/chunks/2hf_zhmhyiv6h.js\",\"/_next/static/chunks/187eevzj1vgdj.js\",\"/_next/static/chunks/3kzgvu_rue_fp.js\",\"/_next/static/chunks/2qe7n35gz6q67.js\",\"/_next/static/chunks/17w-056ko33ed.js\",\"/_next/static/chunks/3mvia7r6hw1ur.js\",\"/_next/static/chunks/38ije1pou43xc.js\",\"/_next/static/chunks/0v5pvcdpt7syi.js\",\"/_next/static/chunks/0tk0lz3jcqdyr.js\",\"/_next/static/chunks/3ck7ruq-6mpzo.js\"],\"MermaidInit\"]\n15:I[297251,[\"/_next/static/chunks/3uggcml-gypjj.js\",\"/_next/static/chunks/2hf_zhmhyiv6h.js\",\"/_next/static/chunks/187eevzj1vgdj.js\",\"/_next/static/chunks/3kzgvu_rue_fp.js\",\"/_next/static/chunks/2qe7n35gz6q67.js\",\"/_next/static/chunks/17w-056ko33ed.js\",\"/_next/static/chunks/3mvia7r6hw1ur.js\",\"/_next/static/chunks/38ije1pou43xc.js\",\"/_next/static/chunks/0v5pvcdpt7syi.js\",\"/_next/static/chunks/0tk0lz3jcqdyr.js\",\"/_next/static/chunks/3ck7ruq-6mpzo.js\"],\"CodeCopyInit\"]\n17:I[941407,[\"/_next/static/chunks/3uggcml-gypjj.js\",\"/_next/static/chunks/2hf_zhmhyiv6h.js\",\"/_next/static/chunks/187eevzj1vgdj.js\",\"/_next/static/chunks/3kzgvu_rue_fp.js\",\"/_next/static/chunks/2qe7n35gz6q67.js\",\"/_next/static/chunks/17w-056ko33ed.js\",\"/_next/static/chunks/3mvia7r6hw1ur.js\",\"/_next/static/chunks/38ije1pou43xc.js\",\"/_next/static/chunks/0v5pvcdpt7syi.js\",\"/_next/static/chunks/0tk0lz3jcqdyr.js\",\"/_next/static/chunks/3ck7ruq-6mpzo.js\",\"/_next/static/chunks/2q2kfp_398bjo.js\"],\"\"]\n18:I[50930,[\"/_next/static/chunks/3uggcml-gypjj.js\",\"/_next/static/chunks/2hf_zhmhyiv6h.js\",\"/_next/static/chunks/187eevzj1vgdj.js\",\"/_next/static/chunks/3kzgvu_rue_fp.js\",\"/_next/static/chunks/2qe7n35gz6q67.js\",\"/_next/static/chunks/17w-056ko33ed.js\",\"/_next/static/chunks/3mvia7r6hw1ur.js\",\"/_next/static/chunks/38ije1pou43xc.js\",\"/_next/static/chunks/0v5pvcdpt7syi.js\",\"/_next/static/chunks/0tk0lz3jcqdyr.js\",\"/_next/static/chunks/3ck7ruq-6mpzo.js\",\"/_next/static/chunks/2q2kfp_398bjo.js\"],\"DocsArticleActions\"]\n1d:I[28198,[\"/_next/static/chunks/3uggcml-gypjj.js\",\"/_next/static/chunks/2hf_zhmhyiv6h.js\",\"/_next/static/chunks/187eevzj1vgdj.js\",\"/_next/static/chunks/3kzgvu_rue_fp.js\",\"/_next/static/chunks/2qe7n35gz6q67.js\",\"/_next/static/chunks/17w-056ko33ed.js\",\"/_next/static/chunks/3mvia7r6hw1ur.js\",\"/_next/static/chunks/38ije1pou43xc.js\",\"/_next/static/chunks/0v5pvcdpt7syi.js\",\"/_next/static/chunks/0tk0lz3jcqdyr.js\",\"/_next/static/chunks/3ck7ruq-6mpzo.js\"],\"DocsSidebarLink\"]\n27:I[674072,[\"/_next/static/chunks/3uggcml-gypjj.js\",\"/_next/static/chunks/2hf_zhmhyiv6h.js\",\"/_next/static/chunks/187eevz"])</script><script>self.__next_f.push([1,"j1vgdj.js\",\"/_next/static/chunks/3kzgvu_rue_fp.js\",\"/_next/static/chunks/2qe7n35gz6q67.js\",\"/_next/static/chunks/17w-056ko33ed.js\",\"/_next/static/chunks/3mvia7r6hw1ur.js\",\"/_next/static/chunks/38ije1pou43xc.js\",\"/_next/static/chunks/0v5pvcdpt7syi.js\",\"/_next/static/chunks/0tk0lz3jcqdyr.js\",\"/_next/static/chunks/3ck7ruq-6mpzo.js\",\"/_next/static/chunks/2q2kfp_398bjo.js\"],\"DocsToc\"]\n2a:I[971477,[\"/_next/static/chunks/3uggcml-gypjj.js\",\"/_next/static/chunks/2hf_zhmhyiv6h.js\",\"/_next/static/chunks/187eevzj1vgdj.js\",\"/_next/static/chunks/3kzgvu_rue_fp.js\",\"/_next/static/chunks/2qe7n35gz6q67.js\",\"/_next/static/chunks/17w-056ko33ed.js\",\"/_next/static/chunks/3mvia7r6hw1ur.js\",\"/_next/static/chunks/38ije1pou43xc.js\",\"/_next/static/chunks/0v5pvcdpt7syi.js\",\"/_next/static/chunks/0tk0lz3jcqdyr.js\"],\"default\"]\n30:I[472850,[\"/_next/static/chunks/3uggcml-gypjj.js\",\"/_next/static/chunks/2hf_zhmhyiv6h.js\",\"/_next/static/chunks/187eevzj1vgdj.js\",\"/_next/static/chunks/3kzgvu_rue_fp.js\",\"/_next/static/chunks/2qe7n35gz6q67.js\",\"/_next/static/chunks/17w-056ko33ed.js\",\"/_next/static/chunks/3mvia7r6hw1ur.js\",\"/_next/static/chunks/38ije1pou43xc.js\",\"/_next/static/chunks/0v5pvcdpt7syi.js\",\"/_next/static/chunks/0tk0lz3jcqdyr.js\"],\"ThirdPartyOptimizer\"]\n31:I[514109,[\"/_next/static/chunks/3uggcml-gypjj.js\",\"/_next/static/chunks/2hf_zhmhyiv6h.js\",\"/_next/static/chunks/187eevzj1vgdj.js\",\"/_next/static/chunks/3kzgvu_rue_fp.js\",\"/_next/static/chunks/2qe7n35gz6q67.js\",\"/_next/static/chunks/17w-056ko33ed.js\",\"/_next/static/chunks/3mvia7r6hw1ur.js\",\"/_next/static/chunks/38ije1pou43xc.js\",\"/_next/static/chunks/0v5pvcdpt7syi.js\",\"/_next/static/chunks/0tk0lz3jcqdyr.js\"],\"\"]\n33:I[91270,[\"/_next/static/chunks/3uggcml-gypjj.js\",\"/_next/static/chunks/2hf_zhmhyiv6h.js\",\"/_next/static/chunks/187eevzj1vgdj.js\",\"/_next/static/chunks/3kzgvu_rue_fp.js\",\"/_next/static/chunks/2qe7n35gz6q67.js\",\"/_next/static/chunks/17w-056ko33ed.js\",\"/_next/static/chunks/3mvia7r6hw1ur.js\",\"/_next/static/chunks/38ije1pou43xc.js\",\"/_next/static/chunks/0v5pvcdpt7syi.js\",\"/_next/static/chunks/0tk0lz3jcqdyr.js\"],\"QueryProvider\"]\n34:I[305622,[\"/_next/static/chunks/3uggcml-gypjj.js\",\"/_next/static/chunks/2hf_zhmhyiv6h.js\",\"/_next/static/chunks/187eevzj1vgdj.js\",\"/_next/static/chunks/3kzgvu_rue_fp.js\",\"/_next/static/chunks/2qe7n35gz6q67.js\",\"/_next/static/chunks/17w-056ko33ed.js\",\"/_next/static/chunks/3mvia7r6hw1ur.js\",\"/_next/static/chunks/38ije1pou43xc.js\",\"/_next/static/chunks/0v5pvcdpt7syi.js\",\"/_next/static/chunks/0tk0lz3jcqdyr.js\"],\"ThemeProvider\"]\n35:I[977324,[\"/_next/static/chunks/3uggcml-gypjj.js\",\"/_next/static/chunks/2hf_zhmhyiv6h.js\",\"/_next/static/chunks/187eevzj1vgdj.js\",\"/_next/static/chunks/3kzgvu_rue_fp.js\",\"/_next/static/chunks/2qe7n35gz6q67.js\",\"/_next/static/chunks/17w-056ko33ed.js\",\"/_next/static/chunks/3mvia7r6hw1ur.js\",\"/_next/static/chunks/38ije1pou43xc.js\",\"/_next/static/chunks/0v5pvcdpt7syi.js\",\"/_next/static/chunks/0tk0lz3jcqdyr.js\"],\"AuthProvider\"]\n36:I[208965,[\"/_next/static/chunks/3uggcml-gypjj.js\",\"/_next/static/chunks/2hf_zhmhyiv6h.js\",\"/_next/static/chunks/187eevzj1vgdj.js\",\"/_next/static/chunks/3kzgvu_rue_fp.js\",\"/_next/static/chunks/2qe7n35gz6q67.js\",\"/_next/static/chunks/17w-056ko33ed.js\",\"/_next/static/chunks/3mvia7r6hw1ur.js\",\"/_next/static/chunks/38ije1pou43xc.js\",\"/_next/static/chunks/0v5pvcdpt7syi.js\",\"/_next/static/chunks/0tk0lz3jcqdyr.js\"],\"WaitlistModalProvider\"]\n37:I[831494,[\"/_next/static/chunks/3uggcml-gypjj.js\",\"/_next/static/chunks/2hf_zhmhyiv6h.js\",\"/_next/static/chunks/187eevzj1vgdj.js\",\"/_next/static/chunks/3kzgvu_rue_fp.js\",\"/_next/static/chunks/2qe7n35gz6q67.js\",\"/_next/static/chunks/17w-056ko33ed.js\",\"/_next/static/chunks/3mvia7r6hw1ur.js\",\"/_next/static/chunks/38ije1pou43xc.js\",\"/_next/static/chunks/0v5pvcdpt7syi.js\",\"/_next/static/chunks/0tk0lz3jcqdyr.js\",\"/_next/static/chunks/2oq0e1qoa9xur.js\"],\"default\"]\n38:I[192016,[\"/_next/static/chunks/3uggcml-gypjj.js\",\"/_next/static/chunks/2hf_zhmhyiv6h.js\",\"/_next/static/chunks/187eevzj1vgdj.js\",\"/_next/static/chunks/3kzgvu_rue_fp.js\",\"/_next/static/chunks/2qe7n35gz6q67.js\",\"/_next/static/chunks/17w"])</script><script>self.__next_f.push([1,"-056ko33ed.js\",\"/_next/static/chunks/3mvia7r6hw1ur.js\",\"/_next/static/chunks/38ije1pou43xc.js\",\"/_next/static/chunks/0v5pvcdpt7syi.js\",\"/_next/static/chunks/0tk0lz3jcqdyr.js\"],\"CookieConsent\"]\n39:I[754219,[\"/_next/static/chunks/3uggcml-gypjj.js\",\"/_next/static/chunks/2hf_zhmhyiv6h.js\",\"/_next/static/chunks/187eevzj1vgdj.js\",\"/_next/static/chunks/3kzgvu_rue_fp.js\",\"/_next/static/chunks/2qe7n35gz6q67.js\",\"/_next/static/chunks/17w-056ko33ed.js\",\"/_next/static/chunks/3mvia7r6hw1ur.js\",\"/_next/static/chunks/38ije1pou43xc.js\",\"/_next/static/chunks/0v5pvcdpt7syi.js\",\"/_next/static/chunks/0tk0lz3jcqdyr.js\"],\"Toaster\"]\n3a:I[29756,[\"/_next/static/chunks/38ko4rtepgeah.js\",\"/_next/static/chunks/1itwu2yi2_e7s.js\"],\"IconMark\"]\n:HL[\"/_next/static/chunks/28mxuwsavqlp2.css\",\"style\"]\n:HL[\"/_next/static/chunks/2d7gvdh5yu5ay.css\",\"style\"]\n:HL[\"/_next/static/media/797e433ab948586e-s.p.0r6juujl39pe6.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"en\",\"docs\",\"storefront-starter\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[[\"locale\",\"en\",\"d\",null],{\"children\":[\"docs\",{\"children\":[[\"slug\",\"storefront-starter\",\"d\",null],{\"children\":[\"__PAGE__\",{}]}]}]},\"$undefined\",\"$undefined\",16]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/28mxuwsavqlp2.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/2d7gvdh5yu5ay.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/3uggcml-gypjj.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/2hf_zhmhyiv6h.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/_next/static/chunks/187eevzj1vgdj.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-3\",{\"src\":\"/_next/static/chunks/3kzgvu_rue_fp.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-4\",{\"src\":\"/_next/static/chunks/2qe7n35gz6q67.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-5\",{\"src\":\"/_next/static/chunks/17w-056ko33ed.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-6\",{\"src\":\"/_next/static/chunks/3mvia7r6hw1ur.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-7\",{\"src\":\"/_next/static/chunks/38ije1pou43xc.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-8\",{\"src\":\"/_next/static/chunks/0v5pvcdpt7syi.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-9\",{\"src\":\"/_next/static/chunks/0tk0lz3jcqdyr.js\",\"async\":true,\"nonce\":\"$undefined\"}]],\"$L4\"]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/3ck7ruq-6mpzo.js\",\"async\":true,\"nonce\":\"$undefined\"}]],\"$L5\"]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[\"$L6\",[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/2q2kfp_398bjo.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L7\",null,{\"children\":[\"$\",\"$8\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@9\"}]}]]}],{},null,false,null]},null,false,\"$@a\"]},null,false,null]},null,false,null]},null,false,\"$@a\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$Lb\",null,{\"children\":\"$Lc\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Ld\",null,{\"children\":[\"$\",\"$8\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Le\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$f\",[]],\"S\":false,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"P9nICX-KsOCjSo7oCz7yv\"}\n"])</script><script>self.__next_f.push([1,"10:[]\na:\"$W10\"\n"])</script><script>self.__next_f.push([1,"5:[\"$\",\"div\",null,{\"className\":\"flex flex-col min-h-screen bg-base\",\"data-mermaid-zoom-hint\":\"⌘ scroll to zoom\",\"data-mermaid-zoom-out\":\"Zoom out\",\"data-mermaid-zoom-in\":\"Zoom in\",\"data-mermaid-reset\":\"Reset\",\"children\":[[\"$\",\"a\",null,{\"href\":\"#docs-content\",\"className\":\"sr-only focus:not-sr-only focus:absolute focus:top-2 focus:left-2 focus:z-50 focus:px-4 focus:py-2 focus:bg-info focus:text-white focus:rounded-md focus:text-sm\",\"children\":\"Skip to content\"}],[\"$\",\"$L11\",null,{\"locale\":\"en\",\"labels\":{\"nav\":{\"docs\":\"Docs\",\"api\":\"API\",\"sdks\":\"SDKs\",\"guides\":\"Guides\"},\"hamburgerAria\":\"Open menu\",\"themeLightAria\":\"Switch to light mode\",\"themeDarkAria\":\"Switch to dark mode\",\"githubAria\":\"GitHub\"},\"mobileSidebar\":\"$L12\",\"search\":[\"$\",\"$L13\",null,{\"locale\":\"en\",\"labels\":{\"searchPlaceholder\":\"Search...\",\"searchTitle\":\"Search Documentation\",\"searchDescription\":\"Search for an article...\",\"searchInputPlaceholder\":\"Search documentation...\",\"searchNoResults\":\"No results found\"}}]}],[\"$\",\"div\",null,{\"className\":\"flex flex-1 min-h-0\",\"children\":[[\"$\",\"aside\",null,{\"className\":\"hidden lg:block w-[260px] shrink-0 sticky top-[48px] h-[calc(100vh-48px)] overflow-y-auto border-r border-default bg-subtle py-4 px-2 scrollbar-thin\",\"children\":\"$5:props:children:1:props:mobileSidebar\"}],[\"$\",\"main\",null,{\"id\":\"docs-content\",\"className\":\"flex-1 min-w-0\",\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}],[\"$\",\"$L14\",null,{}],[\"$\",\"$L15\",null,{}]]}]]}]\n"])</script><script>self.__next_f.push([1,"4:[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"geist_22e2a02c-module__MwEO2a__variable geist_mono_42eec60-module__Gb1_vG__variable\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"link\",null,{\"rel\":\"preconnect\",\"href\":\"https://cdn.shopify.com\",\"crossOrigin\":\"anonymous\"}],[\"$\",\"link\",null,{\"rel\":\"dns-prefetch\",\"href\":\"https://app.cal.com\"}],[\"$\",\"link\",null,{\"rel\":\"dns-prefetch\",\"href\":\"https://www.googletagmanager.com\"}],[\"$\",\"link\",null,{\"rel\":\"dns-prefetch\",\"href\":\"https://www.google-analytics.com\"}],[\"$\",\"script\",null,{\"id\":\"theme-script\",\"suppressHydrationWarning\":true,\"dangerouslySetInnerHTML\":{\"__html\":\"\\n try {\\n if (window.location.pathname.includes('/dashboard')) {\\n var theme = localStorage.getItem('theme') || 'system';\\n var classList = document.documentElement.classList;\\n classList.remove('light', 'dark');\\n if (theme === 'system') {\\n var systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';\\n classList.add(systemTheme);\\n } else {\\n classList.add(theme);\\n }\\n }\\n } catch (e) {}\\n \"}}]]}],[\"$\",\"body\",null,{\"className\":\"font-sans antialiased min-h-svh\",\"suppressHydrationWarning\":true,\"children\":\"$L16\"}]]}]\n"])</script><script>self.__next_f.push([1,"6:[[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"TechArticle\\\",\\\"headline\\\":\\\"Storefront Starter\\\",\\\"description\\\":\\\"The Next.js storefront starter.\\\",\\\"dateModified\\\":\\\"2026-08-19T14:21:41.529Z\\\",\\\"author\\\":{\\\"@type\\\":\\\"Organization\\\",\\\"name\\\":\\\"Reponse.ai\\\",\\\"url\\\":\\\"https://reponse.ai\\\"},\\\"publisher\\\":{\\\"@type\\\":\\\"Organization\\\",\\\"name\\\":\\\"Reponse.ai\\\",\\\"url\\\":\\\"https://reponse.ai\\\",\\\"logo\\\":{\\\"@type\\\":\\\"ImageObject\\\",\\\"url\\\":\\\"https://reponse.ai/icon.svg\\\"}},\\\"mainEntityOfPage\\\":{\\\"@type\\\":\\\"WebPage\\\",\\\"@id\\\":\\\"https://reponse.ai/docs/storefront-starter\\\"},\\\"isAccessibleForFree\\\":true,\\\"inLanguage\\\":\\\"en-US\\\"}\"}}],[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"BreadcrumbList\\\",\\\"itemListElement\\\":[{\\\"@type\\\":\\\"ListItem\\\",\\\"position\\\":1,\\\"name\\\":\\\"Home\\\",\\\"item\\\":\\\"https://reponse.ai\\\"},{\\\"@type\\\":\\\"ListItem\\\",\\\"position\\\":2,\\\"name\\\":\\\"Documentation\\\",\\\"item\\\":\\\"https://reponse.ai/docs\\\"},{\\\"@type\\\":\\\"ListItem\\\",\\\"position\\\":3,\\\"name\\\":\\\"Guides\\\"},{\\\"@type\\\":\\\"ListItem\\\",\\\"position\\\":4,\\\"name\\\":\\\"Storefront Starter\\\"}]}\"}}],[\"$\",\"div\",null,{\"className\":\"flex items-start\",\"children\":[[\"$\",\"article\",null,{\"className\":\"flex-1 min-w-0 px-5 py-10 md:px-8\",\"itemScope\":true,\"itemType\":\"https://schema.org/TechArticle\",\"children\":[\"$\",\"div\",null,{\"className\":\"mx-auto max-w-3xl\",\"children\":[[\"$\",\"nav\",null,{\"className\":\"mb-6 flex items-center gap-1.5 text-xs text-muted\",\"aria-label\":\"Breadcrumb\",\"itemScope\":true,\"itemType\":\"https://schema.org/BreadcrumbList\",\"children\":[[\"$\",\"span\",null,{\"itemProp\":\"itemListElement\",\"itemScope\":true,\"itemType\":\"https://schema.org/ListItem\",\"children\":[[\"$\",\"$L17\",null,{\"href\":\"/docs\",\"className\":\"-mx-1.5 rounded-md px-1.5 py-0.5 transition-colors hover:bg-subtle hover:text-primary\",\"itemProp\":\"item\",\"children\":[\"$\",\"span\",null,{\"itemProp\":\"name\",\"children\":\"Docs\"}]}],[\"$\",\"meta\",null,{\"itemProp\":\"position\",\"content\":\"1\"}]]}],[[\"$\",\"svg\",null,{\"ref\":\"$undefined\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"1em\",\"height\":\"1em\",\"fill\":\"currentColor\",\"viewBox\":\"0 0 256 256\",\"transform\":\"$undefined\",\"className\":\"h-3 w-3 text-muted/50\",\"children\":[false,\"$undefined\",[\"$\",\"path\",null,{\"d\":\"M181.66,133.66l-80,80a8,8,0,0,1-11.32-11.32L164.69,128,90.34,53.66a8,8,0,0,1,11.32-11.32l80,80A8,8,0,0,1,181.66,133.66Z\"}]]}],[\"$\",\"span\",null,{\"itemProp\":\"itemListElement\",\"itemScope\":true,\"itemType\":\"https://schema.org/ListItem\",\"children\":[[\"$\",\"span\",null,{\"itemProp\":\"name\",\"children\":\"Guides\"}],[\"$\",\"meta\",null,{\"itemProp\":\"position\",\"content\":\"2\"}]]}]],[\"$\",\"svg\",null,{\"ref\":\"$undefined\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"1em\",\"height\":\"1em\",\"fill\":\"currentColor\",\"viewBox\":\"0 0 256 256\",\"transform\":\"$undefined\",\"className\":\"h-3 w-3 text-muted/50\",\"children\":[false,\"$undefined\",\"$6:2:props:children:0:props:children:props:children:0:props:children:1:0:props:children:2\"]}],[\"$\",\"span\",null,{\"className\":\"max-w-[200px] truncate font-medium text-primary\",\"itemProp\":\"itemListElement\",\"itemScope\":true,\"itemType\":\"https://schema.org/ListItem\",\"children\":[[\"$\",\"span\",null,{\"itemProp\":\"name\",\"children\":\"Storefront Starter\"}],[\"$\",\"meta\",null,{\"itemProp\":\"position\",\"content\":\"3\"}]]}]]}],[\"$\",\"header\",null,{\"className\":\"border-b border-default pb-6\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex flex-col gap-5 sm:flex-row sm:items-start sm:justify-between\",\"children\":[[\"$\",\"div\",null,{\"className\":\"min-w-0\",\"children\":[[\"$\",\"h1\",null,{\"className\":\"text-3xl font-bold tracking-tight text-primary md:text-4xl\",\"children\":\"Storefront Starter\"}],[\"$\",\"p\",null,{\"className\":\"mt-3 text-base leading-7 text-secondary\",\"children\":\"The Next.js storefront starter.\"}]]}],[\"$\",\"div\",null,{\"className\":\"shrink-0\",\"children\":[\"$\",\"$L18\",null,{\"title\":\"Storefront Starter\",\"labels\":{\"copied\":\"Copied\",\"share\":\"Share\"}}]}]]}],[\"$\",\"div\",null,{\"className\":\"mt-5 flex flex-wrap items-center gap-x-3 gap-y-2 text-xs text-muted\",\"children\":[[\"$\",\"span\",null,{\"children\":\"4 min read\"}],[[\"$\",\"span\",null,{\"className\":\"text-muted/50\",\"aria-hidden\":\"true\",\"children\":\"/\"}],[\"$\",\"span\",null,{\"children\":[\"Last updated\",\" \",\"Aug 19, 2026\"]}]]]}]]}],[\"$\",\"details\",null,{\"className\":\"mt-6 rounded-lg border border-default bg-subtle lg:hidden\",\"children\":[[\"$\",\"summary\",null,{\"className\":\"cursor-pointer select-none px-4 py-2.5 text-xs font-semibold uppercase tracking-widest text-muted transition-colors hover:text-primary\",\"children\":\"On this page\"}],\"$L19\"]}],\"$L1a\",\"$L1b\"]}]}],\"$L1c\"]}]]\n"])</script><script>self.__next_f.push([1,"12:[\"$\",\"nav\",null,{\"className\":\"flex flex-col\",\"aria-label\":\"Documentation\",\"children\":[[\"$\",\"div\",\"0\",{\"className\":\"\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"mb-2 px-3 text-xs font-semibold uppercase tracking-wider text-muted\",\"children\":\"Getting Started\"}],[\"$\",\"ul\",null,{\"className\":\"flex flex-col gap-0.5\",\"children\":[[\"$\",\"li\",\"overview\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/overview\",\"slug\":\"overview\",\"children\":\"Overview\"}]}],[\"$\",\"li\",\"architecture\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/architecture\",\"slug\":\"architecture\",\"children\":\"Architecture\"}]}],[\"$\",\"li\",\"installation\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/installation\",\"slug\":\"installation\",\"children\":\"Installation\"}]}],[\"$\",\"li\",\"authentication\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/authentication\",\"slug\":\"authentication\",\"children\":\"Authentication\"}]}],[\"$\",\"li\",\"first-request\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/first-request\",\"slug\":\"first-request\",\"children\":\"First Request\"}]}]]}]]}],[\"$\",\"div\",\"1\",{\"className\":\"mt-6\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"mb-2 px-3 text-xs font-semibold uppercase tracking-wider text-muted\",\"children\":\"Products \u0026 Collections\"}],[\"$\",\"ul\",null,{\"className\":\"flex flex-col gap-0.5\",\"children\":[[\"$\",\"li\",\"products-list\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/products-list\",\"slug\":\"products-list\",\"children\":\"Products — List\"}]}],[\"$\",\"li\",\"products-get\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/products-get\",\"slug\":\"products-get\",\"children\":\"Products — Get\"}]}],[\"$\",\"li\",\"products-metafields\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/products-metafields\",\"slug\":\"products-metafields\",\"children\":\"Products — Metafields\"}]}],[\"$\",\"li\",\"collections-list\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/collections-list\",\"slug\":\"collections-list\",\"children\":\"Collections — List\"}]}],[\"$\",\"li\",\"collections-get\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/collections-get\",\"slug\":\"collections-get\",\"children\":\"Collections — Get\"}]}],[\"$\",\"li\",\"collections-products\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/collections-products\",\"slug\":\"collections-products\",\"children\":\"Collections — Products\"}]}]]}]]}],[\"$\",\"div\",\"2\",{\"className\":\"mt-6\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"mb-2 px-3 text-xs font-semibold uppercase tracking-wider text-muted\",\"children\":\"Cart \u0026 Checkout\"}],[\"$\",\"ul\",null,{\"className\":\"flex flex-col gap-0.5\",\"children\":[[\"$\",\"li\",\"cart-create\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/cart-create\",\"slug\":\"cart-create\",\"children\":\"Cart — Create\"}]}],[\"$\",\"li\",\"cart-get\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/cart-get\",\"slug\":\"cart-get\",\"children\":\"Cart — Get\"}]}],[\"$\",\"li\",\"cart-add-item\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/cart-add-item\",\"slug\":\"cart-add-item\",\"children\":\"Cart — Add Item\"}]}],[\"$\",\"li\",\"cart-update-item\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/cart-update-item\",\"slug\":\"cart-update-item\",\"children\":\"Cart — Update Item\"}]}],[\"$\",\"li\",\"cart-remove-item\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/cart-remove-item\",\"slug\":\"cart-remove-item\",\"children\":\"Cart — Remove Item\"}]}],[\"$\",\"li\",\"cart-apply-promotion\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/cart-apply-promotion\",\"slug\":\"cart-apply-promotion\",\"children\":\"Cart — Apply Promotion\"}]}],[\"$\",\"li\",\"checkout-stripe\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/checkout-stripe\",\"slug\":\"checkout-stripe\",\"children\":\"Checkout — Stripe\"}]}],[\"$\",\"li\",\"checkout-intent\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/checkout-intent\",\"slug\":\"checkout-intent\",\"children\":\"Checkout — Payment Intent\"}]}],[\"$\",\"li\",\"checkout-acp\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/checkout-acp\",\"slug\":\"checkout-acp\",\"children\":\"Checkout — ACP\"}]}]]}]]}],[\"$\",\"div\",\"3\",{\"className\":\"mt-6\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"mb-2 px-3 text-xs font-semibold uppercase tracking-wider text-muted\",\"children\":\"Orders \u0026 Fulfillment\"}],[\"$\",\"ul\",null,{\"className\":\"flex flex-col gap-0.5\",\"children\":[[\"$\",\"li\",\"orders-create\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/orders-create\",\"slug\":\"orders-create\",\"children\":\"Orders — Create\"}]}],[\"$\",\"li\",\"orders-get\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/orders-get\",\"slug\":\"orders-get\",\"children\":\"Orders — Get\"}]}],[\"$\",\"li\",\"orders-confirm\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/orders-confirm\",\"slug\":\"orders-confirm\",\"children\":\"Orders — Confirm\"}]}],[\"$\",\"li\",\"orders-cancel\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/orders-cancel\",\"slug\":\"orders-cancel\",\"children\":\"Orders — Cancel\"}]}],[\"$\",\"li\",\"orders-fulfill\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/orders-fulfill\",\"slug\":\"orders-fulfill\",\"children\":\"Orders — Fulfill\"}]}],\"$L1e\"]}]]}],\"$L1f\",\"$L20\",\"$L21\",\"$L22\",\"$L23\",\"$L24\",\"$L25\",\"$L26\"]}]\n"])</script><script>self.__next_f.push([1,"19:[\"$\",\"div\",null,{\"className\":\"px-4 pb-3\",\"children\":[\"$\",\"$L27\",null,{\"locale\":\"en\",\"labels\":{\"onThisPage\":\"On this page\",\"tocAria\":\"Table of contents\"}}]}]\n28:T6e3d,"])</script><script>self.__next_f.push([1,"\u003ch2 id=\"overview\" class=\"scroll-mt-20 text-primary font-semibold\"\u003eOverview\u003c/h2\u003e\u003cp class=\"my-3 text-secondary leading-relaxed\"\u003eThe **Reponse Storefront Starter** is a production-ready Next.js commerce frontend wired to the Reponse SDK. It ships with product listing, product detail, collections, cart, embedded checkout, sitemap, robots.txt, and product JSON-LD — everything you need to launch a headless storefront in minutes.\u003c/p\u003e\u003ch2 id=\"prerequisites\" class=\"scroll-mt-20 text-primary font-semibold\"\u003ePrerequisites\u003c/h2\u003e\u003cdiv class=\"overflow-x-auto my-4 not-prose\"\u003e\u003ctable class=\"w-full text-sm border-collapse border border-default\"\u003e\u003cthead\u003e\u003ctr\u003e\u003cth class=\"bg-subtle px-3 py-2 text-left text-xs font-semibold text-secondary border border-default\"\u003eRequirement\u003c/th\u003e\u003cth class=\"bg-subtle px-3 py-2 text-left text-xs font-semibold text-secondary border border-default\"\u003eMinimum version\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eNode.js\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003e18+\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003epnpm (or npm / yarn)\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003e9+\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eReponse workspace\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eActive, with at least one product\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eReponse API key\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eGenerated in \u003cstrong\u003eDashboard → Settings → API Keys\u003c/strong\u003e\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eStripe account\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eConnected to your workspace (for checkout)\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\u003c/div\u003e\u003ch2 id=\"step-1-clone-the-starter\" class=\"scroll-mt-20 text-primary font-semibold\"\u003eStep 1 — Clone the starter\u003c/h2\u003e\u003cdiv class=\"relative group my-4 not-prose\"\u003e\u003cspan class=\"absolute top-2 left-3 text-[10px] font-mono select-none uppercase tracking-wider\" style=\"color: var(--code-block-text); opacity: 0.4\"\u003ebash\u003c/span\u003e\u003cbutton type=\"button\" class=\"code-copy-btn absolute top-2 right-2 p-1 rounded transition-colors opacity-0 group-hover:opacity-100 focus:opacity-100\" style=\"color: var(--code-block-text)\" aria-label=\"Copy code\" title=\"Copy\"\u003e\u003csvg class=\"w-4 h-4 copy-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\"/\u003e\u003cpath d=\"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1\"/\u003e\u003c/svg\u003e\u003csvg class=\"w-4 h-4 check-icon hidden\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M20 6L9 17l-5-5\"/\u003e\u003c/svg\u003e\u003c/button\u003e\u003cpre class=\"bg-code-block rounded-lg pt-8 px-4 pb-4 overflow-x-auto text-[13px] leading-relaxed\" style=\"color: var(--code-block-text)\"\u003e\u003ccode class=\"language-bash\"\u003enpx degit reponseai/storefront-starter my-store\ncd my-store\npnpm install\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003ch2 id=\"step-2-configure-environment-variables\" class=\"scroll-mt-20 text-primary font-semibold\"\u003eStep 2 — Configure environment variables\u003c/h2\u003e\u003cp class=\"my-3 text-secondary leading-relaxed\"\u003eCreate a `.env.local` file at the project root:\u003c/p\u003e\u003cdiv class=\"relative group my-4 not-prose\"\u003e\u003cspan class=\"absolute top-2 left-3 text-[10px] font-mono select-none uppercase tracking-wider\" style=\"color: var(--code-block-text); opacity: 0.4\"\u003ebash\u003c/span\u003e\u003cbutton type=\"button\" class=\"code-copy-btn absolute top-2 right-2 p-1 rounded transition-colors opacity-0 group-hover:opacity-100 focus:opacity-100\" style=\"color: var(--code-block-text)\" aria-label=\"Copy code\" title=\"Copy\"\u003e\u003csvg class=\"w-4 h-4 copy-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\"/\u003e\u003cpath d=\"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1\"/\u003e\u003c/svg\u003e\u003csvg class=\"w-4 h-4 check-icon hidden\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M20 6L9 17l-5-5\"/\u003e\u003c/svg\u003e\u003c/button\u003e\u003cpre class=\"bg-code-block rounded-lg pt-8 px-4 pb-4 overflow-x-auto text-[13px] leading-relaxed\" style=\"color: var(--code-block-text)\"\u003e\u003ccode class=\"language-bash\"\u003e# ─── Reponse API (required) ─────────────────────────────────────────────────\nREPONSE_API_KEY=rp_live_xxxxxxxxxxxx\nNEXT_PUBLIC_REPONSE_API_URL=https://reponse.ai/api\nNEXT_PUBLIC_REPONSE_API_KEY=rp_live_xxxxxxxxxxxx\nNEXT_PUBLIC_WORKSPACE_ID=your-workspace-uuid\n\n# ─── Store ──────────────────────────────────────────────────────────────────\nNEXT_PUBLIC_STORE_NAME=\u0026quot;My Store\u0026quot;\nNEXT_PUBLIC_SITE_URL=https://my-store.com\n\n# ─── Checkout ───────────────────────────────────────────────────────────────\nCHECKOUT_MODE=embedded\nNEXT_PUBLIC_MARKET_ID=your-market-uuid\nNEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=pk_live_xxxxxxxxxxxx\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003ch3 id=\"variable-reference\" class=\"scroll-mt-20 text-primary font-semibold\"\u003eVariable reference\u003c/h3\u003e\u003cdiv class=\"overflow-x-auto my-4 not-prose\"\u003e\u003ctable class=\"w-full text-sm border-collapse border border-default\"\u003e\u003cthead\u003e\u003ctr\u003e\u003cth class=\"bg-subtle px-3 py-2 text-left text-xs font-semibold text-secondary border border-default\"\u003eVariable\u003c/th\u003e\u003cth class=\"bg-subtle px-3 py-2 text-left text-xs font-semibold text-secondary border border-default\"\u003eRequired\u003c/th\u003e\u003cth class=\"bg-subtle px-3 py-2 text-left text-xs font-semibold text-secondary border border-default\"\u003eDescription\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003e\u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003eREPONSE_API_KEY\u003c/code\u003e\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eYes\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eServer-side API key. See \u003ca href=\"/docs/authentication\" class=\"text-info hover:underline transition-colors\"\u003eAuthentication\u003c/a\u003e.\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003e\u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003eNEXT_PUBLIC_REPONSE_API_URL\u003c/code\u003e\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eYes\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eAPI base URL — use \u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003ehttps://reponse.ai/api\u003c/code\u003e for production.\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003e\u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003eNEXT_PUBLIC_REPONSE_API_KEY\u003c/code\u003e\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eYes\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eClient-side API key (same value as \u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003eREPONSE_API_KEY\u003c/code\u003e). Used by the variant selector and client-side cart operations.\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003e\u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003eNEXT_PUBLIC_WORKSPACE_ID\u003c/code\u003e\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eYes\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eYour workspace UUID. See \u003ca href=\"#how-to-find-your-workspace-id\" class=\"text-info hover:underline transition-colors\"\u003eHow to find your Workspace ID\u003c/a\u003e.\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003e\u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003eNEXT_PUBLIC_STORE_NAME\u003c/code\u003e\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eYes\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eStore name shown in \u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003e\u003ctitle\u003e\u003c/code\u003e and footer.\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003e\u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003eNEXT_PUBLIC_SITE_URL\u003c/code\u003e\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eNo\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eCanonical base URL for SEO (defaults to \u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003elocalhost:3000\u003c/code\u003e).\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003e\u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003eCHECKOUT_MODE\u003c/code\u003e\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eNo\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003e\u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003eembedded\u003c/code\u003e (Stripe Elements on your site) or \u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003eredirect\u003c/code\u003e (redirect to Stripe Checkout). Defaults to \u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003eembedded\u003c/code\u003e. See \u003ca href=\"#checkout-modes\" class=\"text-info hover:underline transition-colors\"\u003eCheckout modes\u003c/a\u003e.\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003e\u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003eNEXT_PUBLIC_MARKET_ID\u003c/code\u003e\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eYes\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eMarket UUID for currency, taxes, and shipping. See \u003ca href=\"#how-to-find-your-market-id\" class=\"text-info hover:underline transition-colors\"\u003eHow to find your Market ID\u003c/a\u003e.\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003e\u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003eNEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY\u003c/code\u003e\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eYes\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eStripe publishable key. See \u003ca href=\"#how-to-find-your-stripe-key\" class=\"text-info hover:underline transition-colors\"\u003eHow to find your Stripe key\u003c/a\u003e.\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\u003c/div\u003e\u003ch3 id=\"how-to-find-your-workspace-id\" class=\"scroll-mt-20 text-primary font-semibold\"\u003eHow to find your Workspace ID\u003c/h3\u003e\u003col class=\"list-decimal list-inside space-y-1 my-4 text-secondary\"\u003e\u003cli\u003eOpen the Reponse dashboard.\u003c/li\u003e\n\u003cli\u003eThe workspace ID is the UUID in the URL: \u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003ehttps://reponse.ai/dashboard/{workspace-id}/...\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eYou can also find it in \u003cstrong\u003eSettings → General\u003c/strong\u003e.\u003c/li\u003e\n\u003c/ol\u003e\u003ch3 id=\"how-to-find-your-market-id\" class=\"scroll-mt-20 text-primary font-semibold\"\u003eHow to find your Market ID\u003c/h3\u003e\u003cp class=\"my-3 text-secondary leading-relaxed\"\u003eMarkets define the currency, tax rules, and shipping zones for a region. Every workspace has at least one market (created automatically).\u003c/p\u003e\u003col class=\"list-decimal list-inside space-y-1 my-4 text-secondary\"\u003e\u003cli\u003eGo to \u003cstrong\u003eDashboard → Settings → Markets\u003c/strong\u003e.\u003c/li\u003e\n\u003cli\u003eClick on the market you want to use (e.g. \u0026quot;France\u0026quot; or \u0026quot;Europe\u0026quot;).\u003c/li\u003e\n\u003cli\u003eCopy the \u003cstrong\u003eMarket ID\u003c/strong\u003e shown at the top of the market detail page.\u003c/li\u003e\n\u003c/ol\u003e\u003cp class=\"my-3 text-secondary leading-relaxed\"\u003eIf you only sell in one country, use your default market. For multi-currency storefronts, pass different `market_id` values based on the visitor's locale.\u003c/p\u003e\u003ch3 id=\"how-to-find-your-stripe-key\" class=\"scroll-mt-20 text-primary font-semibold\"\u003eHow to find your Stripe key\u003c/h3\u003e\u003cp class=\"my-3 text-secondary leading-relaxed\"\u003eThe storefront needs your Stripe **publishable key** (starts with `pk_live_` or `pk_test_`). This is a client-side key — it is safe to expose in the browser.\u003c/p\u003e\u003col class=\"list-decimal list-inside space-y-1 my-4 text-secondary\"\u003e\u003cli\u003eGo to \u003ca href=\"https://dashboard.stripe.com/apikeys\" class=\"text-info hover:underline transition-colors\" target=\"_blank\" rel=\"noopener noreferrer\"\u003edashboard.stripe.com/apikeys\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eCopy the \u003cstrong\u003ePublishable key\u003c/strong\u003e.\u003c/li\u003e\n\u003cli\u003eFor testing, use the key from Stripe\u0026#39;s test mode (\u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003epk_test_...\u003c/code\u003e).\u003c/li\u003e\n\u003c/ol\u003e\u003cblockquote class=\"border-l-2 border-strong bg-subtle pl-4 py-2 my-4 not-italic\"\u003e**Note:** Your workspace also needs a Stripe **secret key** configured on the backend. This is set up in **Dashboard → Settings → Payments** — you do not need to add it to your storefront `.env.local`.\u003c/blockquote\u003e\u003ch3 id=\"checkout-modes\" class=\"scroll-mt-20 text-primary font-semibold\"\u003eCheckout modes\u003c/h3\u003e\u003cdiv class=\"overflow-x-auto my-4 not-prose\"\u003e\u003ctable class=\"w-full text-sm border-collapse border border-default\"\u003e\u003cthead\u003e\u003ctr\u003e\u003cth class=\"bg-subtle px-3 py-2 text-left text-xs font-semibold text-secondary border border-default\"\u003eMode\u003c/th\u003e\u003cth class=\"bg-subtle px-3 py-2 text-left text-xs font-semibold text-secondary border border-default\"\u003eDescription\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003e\u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003eembedded\u003c/code\u003e (default)\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eStripe Payment Elements render directly on your storefront. The customer never leaves your site. Requires \u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003eNEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY\u003c/code\u003e.\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003e\u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003eredirect\u003c/code\u003e\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eThe customer is redirected to a Stripe-hosted checkout page. Simpler to set up — no Stripe key needed in the storefront.\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\u003c/div\u003e\u003ch2 id=\"step-3-run-locally\" class=\"scroll-mt-20 text-primary font-semibold\"\u003eStep 3 — Run locally\u003c/h2\u003e\u003cdiv class=\"relative group my-4 not-prose\"\u003e\u003cspan class=\"absolute top-2 left-3 text-[10px] font-mono select-none uppercase tracking-wider\" style=\"color: var(--code-block-text); opacity: 0.4\"\u003ebash\u003c/span\u003e\u003cbutton type=\"button\" class=\"code-copy-btn absolute top-2 right-2 p-1 rounded transition-colors opacity-0 group-hover:opacity-100 focus:opacity-100\" style=\"color: var(--code-block-text)\" aria-label=\"Copy code\" title=\"Copy\"\u003e\u003csvg class=\"w-4 h-4 copy-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\"/\u003e\u003cpath d=\"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1\"/\u003e\u003c/svg\u003e\u003csvg class=\"w-4 h-4 check-icon hidden\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M20 6L9 17l-5-5\"/\u003e\u003c/svg\u003e\u003c/button\u003e\u003cpre class=\"bg-code-block rounded-lg pt-8 px-4 pb-4 overflow-x-auto text-[13px] leading-relaxed\" style=\"color: var(--code-block-text)\"\u003e\u003ccode class=\"language-bash\"\u003epnpm dev\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003cp class=\"my-3 text-secondary leading-relaxed\"\u003eOpen [http://localhost:3000](http://localhost:3000). Products from your Reponse workspace appear automatically.\u003c/p\u003e\u003ch2 id=\"step-4-deploy\" class=\"scroll-mt-20 text-primary font-semibold\"\u003eStep 4 — Deploy\u003c/h2\u003e\u003ch3 id=\"vercel\" class=\"scroll-mt-20 text-primary font-semibold\"\u003eVercel\u003c/h3\u003e\u003cdiv class=\"relative group my-4 not-prose\"\u003e\u003cspan class=\"absolute top-2 left-3 text-[10px] font-mono select-none uppercase tracking-wider\" style=\"color: var(--code-block-text); opacity: 0.4\"\u003ebash\u003c/span\u003e\u003cbutton type=\"button\" class=\"code-copy-btn absolute top-2 right-2 p-1 rounded transition-colors opacity-0 group-hover:opacity-100 focus:opacity-100\" style=\"color: var(--code-block-text)\" aria-label=\"Copy code\" title=\"Copy\"\u003e\u003csvg class=\"w-4 h-4 copy-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\"/\u003e\u003cpath d=\"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1\"/\u003e\u003c/svg\u003e\u003csvg class=\"w-4 h-4 check-icon hidden\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M20 6L9 17l-5-5\"/\u003e\u003c/svg\u003e\u003c/button\u003e\u003cpre class=\"bg-code-block rounded-lg pt-8 px-4 pb-4 overflow-x-auto text-[13px] leading-relaxed\" style=\"color: var(--code-block-text)\"\u003e\u003ccode class=\"language-bash\"\u003epnpm build # verify production build locally\nvercel --prod # deploy (or push to GitHub with Vercel integration)\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003cp class=\"my-3 text-secondary leading-relaxed\"\u003eSet the same environment variables in the Vercel dashboard under **Settings → Environment Variables**.\u003c/p\u003e\u003ch3 id=\"netlify\" class=\"scroll-mt-20 text-primary font-semibold\"\u003eNetlify\u003c/h3\u003e\u003cp class=\"my-3 text-secondary leading-relaxed\"\u003eThe starter includes a `netlify.toml` configuration file. To deploy:\u003c/p\u003e\u003col class=\"list-decimal list-inside space-y-1 my-4 text-secondary\"\u003e\u003cli\u003eCreate a new site on Netlify and connect your Git repository.\u003c/li\u003e\n\u003cli\u003eNetlify auto-detects the Next.js framework and uses the \u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003e@netlify/plugin-nextjs\u003c/code\u003e adapter.\u003c/li\u003e\n\u003cli\u003eSet environment variables in \u003cstrong\u003eSite Settings → Environment Variables\u003c/strong\u003e.\u003c/li\u003e\n\u003cli\u003eDeploy.\u003c/li\u003e\n\u003c/ol\u003e\u003ch2 id=\"step-5-add-the-ai-chat-widget-optional\" class=\"scroll-mt-20 text-primary font-semibold\"\u003eStep 5 — Add the AI Chat Widget (optional)\u003c/h2\u003e\u003cp class=\"my-3 text-secondary leading-relaxed\"\u003eAdd the Reponse chat widget to your storefront for conversational commerce. The starter includes this automatically when `NEXT_PUBLIC_WORKSPACE_ID` is set.\u003c/p\u003e\u003cp class=\"my-3 text-secondary leading-relaxed\"\u003eIf you need to add it manually to a custom layout:\u003c/p\u003e\u003cdiv class=\"relative group my-4 not-prose\"\u003e\u003cspan class=\"absolute top-2 left-3 text-[10px] font-mono select-none uppercase tracking-wider\" style=\"color: var(--code-block-text); opacity: 0.4\"\u003etsx\u003c/span\u003e\u003cbutton type=\"button\" class=\"code-copy-btn absolute top-2 right-2 p-1 rounded transition-colors opacity-0 group-hover:opacity-100 focus:opacity-100\" style=\"color: var(--code-block-text)\" aria-label=\"Copy code\" title=\"Copy\"\u003e\u003csvg class=\"w-4 h-4 copy-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\"/\u003e\u003cpath d=\"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1\"/\u003e\u003c/svg\u003e\u003csvg class=\"w-4 h-4 check-icon hidden\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M20 6L9 17l-5-5\"/\u003e\u003c/svg\u003e\u003c/button\u003e\u003cpre class=\"bg-code-block rounded-lg pt-8 px-4 pb-4 overflow-x-auto text-[13px] leading-relaxed\" style=\"color: var(--code-block-text)\"\u003e\u003ccode class=\"language-tsx\"\u003eimport Script from \u0026quot;next/script\u0026quot;;\n\n\u0026lt;Script\n src=\u0026quot;https://reponse.ai/assets/sdk/reponse-widget.min.js\u0026quot;\n data-workspace-id={process.env.NEXT_PUBLIC_WORKSPACE_ID}\n strategy=\u0026quot;lazyOnload\u0026quot;\n/\u0026gt;\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003ch2 id=\"step-6-customize-the-theme\" class=\"scroll-mt-20 text-primary font-semibold\"\u003eStep 6 — Customize the theme\u003c/h2\u003e\u003cp class=\"my-3 text-secondary leading-relaxed\"\u003eThe starter uses Tailwind CSS v4 and CSS variables for theming. Override the CSS variables in `app/globals.css`:\u003c/p\u003e\u003cdiv class=\"relative group my-4 not-prose\"\u003e\u003cspan class=\"absolute top-2 left-3 text-[10px] font-mono select-none uppercase tracking-wider\" style=\"color: var(--code-block-text); opacity: 0.4\"\u003ecss\u003c/span\u003e\u003cbutton type=\"button\" class=\"code-copy-btn absolute top-2 right-2 p-1 rounded transition-colors opacity-0 group-hover:opacity-100 focus:opacity-100\" style=\"color: var(--code-block-text)\" aria-label=\"Copy code\" title=\"Copy\"\u003e\u003csvg class=\"w-4 h-4 copy-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\"/\u003e\u003cpath d=\"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1\"/\u003e\u003c/svg\u003e\u003csvg class=\"w-4 h-4 check-icon hidden\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M20 6L9 17l-5-5\"/\u003e\u003c/svg\u003e\u003c/button\u003e\u003cpre class=\"bg-code-block rounded-lg pt-8 px-4 pb-4 overflow-x-auto text-[13px] leading-relaxed\" style=\"color: var(--code-block-text)\"\u003e\u003ccode class=\"language-css\"\u003e:root {\n --color-primary: #1a1a2e;\n --color-accent: #e94560;\n --font-sans: 'Inter', sans-serif;\n}\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003ch2 id=\"project-structure\" class=\"scroll-mt-20 text-primary font-semibold\"\u003eProject structure\u003c/h2\u003e\u003cdiv class=\"relative group my-4 not-prose\"\u003e\u003cbutton type=\"button\" class=\"code-copy-btn absolute top-2 right-2 p-1 rounded transition-colors opacity-0 group-hover:opacity-100 focus:opacity-100\" style=\"color: var(--code-block-text)\" aria-label=\"Copy code\" title=\"Copy\"\u003e\u003csvg class=\"w-4 h-4 copy-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\"/\u003e\u003cpath d=\"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1\"/\u003e\u003c/svg\u003e\u003csvg class=\"w-4 h-4 check-icon hidden\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M20 6L9 17l-5-5\"/\u003e\u003c/svg\u003e\u003c/button\u003e\u003cpre class=\"bg-code-block rounded-lg p-4 overflow-x-auto text-[13px] leading-relaxed\" style=\"color: var(--code-block-text)\"\u003e\u003ccode\u003emy-store/\n├── src/\n│ ├── app/\n│ │ ├── page.tsx # Home / product listing\n│ │ ├── products/[slug]/ # Product detail page\n│ │ ├── collections/[handle]/ # Collection page\n│ │ ├── cart/ # Cart page\n│ │ ├── checkout/ # Embedded checkout\n│ │ ├── order/success/ # Order confirmation\n│ │ ├── policies/[type]/ # Legal policies\n│ │ ├── sitemap.ts # Dynamic sitemap\n│ │ ├── robots.ts # Robots.txt\n│ │ └── layout.tsx # Root layout + AI widget\n│ ├── components/ # UI components\n│ └── lib/\n│ ├── reponse.ts # SDK client singleton\n│ ├── cart.ts # Cart server actions\n│ └── currency.ts # Price formatting\n├── netlify.toml # Netlify config\n├── package.json\n└── .env.local\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003ch2 id=\"troubleshooting\" class=\"scroll-mt-20 text-primary font-semibold\"\u003eTroubleshooting\u003c/h2\u003e\u003cdiv class=\"overflow-x-auto my-4 not-prose\"\u003e\u003ctable class=\"w-full text-sm border-collapse border border-default\"\u003e\u003cthead\u003e\u003ctr\u003e\u003cth class=\"bg-subtle px-3 py-2 text-left text-xs font-semibold text-secondary border border-default\"\u003eSymptom\u003c/th\u003e\u003cth class=\"bg-subtle px-3 py-2 text-left text-xs font-semibold text-secondary border border-default\"\u003eCause\u003c/th\u003e\u003cth class=\"bg-subtle px-3 py-2 text-left text-xs font-semibold text-secondary border border-default\"\u003eFix\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eEmpty product list\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eInvalid or missing \u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003eREPONSE_API_KEY\u003c/code\u003e\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eVerify the key in Dashboard → Settings → API Keys\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003e401 on API calls\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eKey does not have \u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003ecatalog:read\u003c/code\u003e scope\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eRegenerate the key with required scopes\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eBuild fails with type errors\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eOutdated SDK version\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eRun \u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003epnpm update @reponseai/sdk\u003c/code\u003e\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eStyles not applied after theme change\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eTailwind purge cache\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eDelete \u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003e.next/\u003c/code\u003e and restart \u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003epnpm dev\u003c/code\u003e\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eImages not loading\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eMissing domain in \u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003enext.config.ts\u003c/code\u003e\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eAdd your CDN domain to \u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003eimages.remotePatterns\u003c/code\u003e\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eCheckout fails\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eMissing \u003ccode class=\"bg-subtle text-primary px-1.5 py-0.5 rounded text-[13px] font-mono border border-default not-prose\"\u003eNEXT_PUBLIC_MARKET_ID\u003c/code\u003e or Stripe not connected\u003c/td\u003e\u003ctd class=\"px-3 py-2 text-sm text-secondary border border-default\"\u003eVerify market ID and Stripe config in dashboard\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\u003c/div\u003e\u003ch2 id=\"related\" class=\"scroll-mt-20 text-primary font-semibold\"\u003eRelated\u003c/h2\u003e\u003cul class=\"list-disc list-inside space-y-1 my-4 text-secondary\"\u003e\u003cli\u003e\u003ca href=\"/docs/authentication\" class=\"text-info hover:underline transition-colors\"\u003eAuthentication\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"/docs/checkout-stripe\" class=\"text-info hover:underline transition-colors\"\u003eCheckout — Stripe\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"/docs/checkout-intent\" class=\"text-info hover:underline transition-colors\"\u003eCheckout — Payment Intent\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"/docs/sdk-overview\" class=\"text-info hover:underline transition-colors\"\u003eSDK Overview\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"/docs/environment-variables\" class=\"text-info hover:underline transition-colors\"\u003eEnvironment Variables\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e"])</script><script>self.__next_f.push([1,"1a:[\"$\",\"div\",null,{\"className\":\"prose prose-sm max-w-none mt-8\",\"dangerouslySetInnerHTML\":{\"__html\":\"$28\"}}]\n1b:[\"$\",\"div\",null,{\"className\":\"mt-10 border-t border-default pt-6\",\"children\":\"$L29\"}]\n1c:[\"$\",\"aside\",null,{\"className\":\"hidden lg:flex flex-col w-[240px] shrink-0 sticky top-[48px] h-[calc(100vh-48px)] border-l border-default bg-subtle\",\"children\":[\"$\",\"div\",null,{\"className\":\"flex-1 overflow-y-auto px-4 py-6 scrollbar-thin\",\"children\":[\"$\",\"$L27\",null,{\"locale\":\"en\",\"labels\":{\"onThisPage\":\"On this page\",\"tocAria\":\"Table of contents\"}}]}]}]\n1e:[\"$\",\"li\",\"orders-refund\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/orders-refund\",\"slug\":\"orders-refund\",\"children\":\"Orders — Refund\"}]}]\n1f:[\"$\",\"div\",\"4\",{\"className\":\"mt-6\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"mb-2 px-3 text-xs font-semibold uppercase tracking-wider text-muted\",\"children\":\"Commerce\"}],[\"$\",\"ul\",null,{\"className\":\"flex flex-col gap-0.5\",\"children\":[[\"$\",\"li\",\"inventory-get\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/inventory-get\",\"slug\":\"inventory-get\",\"children\":\"Inventory — Get\"}]}],[\"$\",\"li\",\"inventory-update\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/inventory-update\",\"slug\":\"inventory-update\",\"children\":\"Inventory — Update\"}]}],[\"$\",\"li\",\"shipping-rates\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/shipping-rates\",\"slug\":\"shipping-rates\",\"children\":\"Shipping — Rates\"}]}],[\"$\",\"li\",\"discounts-list\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/discounts-list\",\"slug\":\"discounts-list\",\"children\":\"Discounts — List\"}]}],[\"$\",\"li\",\"discounts-create\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/discounts-create\",\"slug\":\"discounts-create\",\"children\":\"Discounts — Create\"}]}],[\"$\",\"li\",\"discounts-validate\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/discounts-validate\",\"slug\":\"discounts-validate\",\"children\":\"Discounts — Validate\"}]}],[\"$\",\"li\",\"subscriptions-manage\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/subscriptions-manage\",\"slug\":\"subscriptions-manage\",\"children\":\"Subscriptions — Manage\"}]}]]}]]}]\n20:[\"$\",\"div\",\"5\",{\"className\":\"mt-6\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"mb-2 px-3 text-xs font-semibold uppercase tracking-wider text-muted\",\"children\":\"Loyalty \u0026 Gift Cards\"}],[\"$\",\"ul\",null,{\"className\":\"flex flex-col gap-0.5\",\"children\":[[\"$\",\"li\",\"loyalty-balance\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/loyalty-balance\",\"slug\":\"loyalty-balance\",\"children\":\"Loyalty — Balance\"}]}],[\"$\",\"li\",\"loyalty-redeem\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/loyalty-redeem\",\"slug\":\"loyalty-redeem\",\"children\":\"Loyalty — Redeem\"}]}],[\"$\",\"li\",\"loyalty-referral\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/loyalty-referral\",\"slug\":\"loyalty-referral\",\"children\":\"Loyalty — Referral\"}]}],[\"$\",\"li\",\"gift-cards-list\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/gift-cards-list\",\"slug\":\"gift-cards-list\",\"children\":\"Gift Cards — List\"}]}],[\"$\",\"li\",\"gift-cards-redeem\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/gift-cards-redeem\",\"slug\":\"gift-cards-redeem\",\"children\":\"Gift Cards — Redeem\"}]}]]}]]}]\n21:[\"$\",\"div\",\"6\",{\"className\":\"mt-6\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"mb-2 px-3 text-xs font-semibold uppercase tracking-wider text-muted\",\"children\":\"Tickets \u0026 Support\"}],[\"$\",\"ul\",null,{\"className\":\"flex flex-col gap-0.5\",\"children\":[[\"$\",\"li\",\"tickets-list\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/tickets-list\",\"slug\":\"tickets-list\",\"children\":\"Tickets — List\"}]}],[\"$\",\"li\",\"tickets-create\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/tickets-create\",\"slug\":\"tickets-create\",\"children\":\"Tickets — Create\"}]}],[\"$\",\"li\",\"tickets-reply\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/tickets-reply\",\"slug\":\"tickets-reply\",\"children\":\"Tickets — Reply\"}]}]]}]]}]\n22:[\"$\",\"div\",\"7\",{\"className\":\"mt-6\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"mb-2 px-3 text-xs font-semibold uppercase tracking-wider text-muted\",\"children\":\"Platform\"}],[\"$\",\"ul\",null,{\"className\":\"flex flex-col gap-0.5\",\"children\":[[\"$\",\"li\",\"feed-json\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/feed-json\",\"slug\":\"feed-json\",\"children\":\"Product Feed — JSON\"}]}],"])</script><script>self.__next_f.push([1,"[\"$\",\"li\",\"feed-csv\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/feed-csv\",\"slug\":\"feed-csv\",\"children\":\"Product Feed — CSV\"}]}],[\"$\",\"li\",\"theme-get\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/theme-get\",\"slug\":\"theme-get\",\"children\":\"Theme — Get\"}]}],[\"$\",\"li\",\"approvals-execute\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/approvals-execute\",\"slug\":\"approvals-execute\",\"children\":\"Approvals — Execute\"}]}],[\"$\",\"li\",\"approvals-reject\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/approvals-reject\",\"slug\":\"approvals-reject\",\"children\":\"Approvals — Reject\"}]}],[\"$\",\"li\",\"utils-geocode\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/utils-geocode\",\"slug\":\"utils-geocode\",\"children\":\"Geocode\"}]}]]}]]}]\n23:[\"$\",\"div\",\"8\",{\"className\":\"mt-6\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"mb-2 px-3 text-xs font-semibold uppercase tracking-wider text-muted\",\"children\":\"SDKs\"}],[\"$\",\"ul\",null,{\"className\":\"flex flex-col gap-0.5\",\"children\":[[\"$\",\"li\",\"sdk-overview\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/sdk-overview\",\"slug\":\"sdk-overview\",\"children\":\"SDK Overview\"}]}],[\"$\",\"li\",\"sdk-typescript\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/sdk-typescript\",\"slug\":\"sdk-typescript\",\"children\":\"TypeScript SDK\"}]}],[\"$\",\"li\",\"react-hooks\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/react-hooks\",\"slug\":\"react-hooks\",\"children\":\"React Hooks\"}]}]]}]]}]\n"])</script><script>self.__next_f.push([1,"24:[\"$\",\"div\",\"9\",{\"className\":\"mt-6\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"mb-2 px-3 text-xs font-semibold uppercase tracking-wider text-muted\",\"children\":\"Guides\"}],[\"$\",\"ul\",null,{\"className\":\"flex flex-col gap-0.5\",\"children\":[[\"$\",\"li\",\"chat-widget\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/chat-widget\",\"slug\":\"chat-widget\",\"children\":\"Chat Widget\"}]}],[\"$\",\"li\",\"shopify-sync\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/shopify-sync\",\"slug\":\"shopify-sync\",\"children\":\"Shopify Sync\"}]}],[\"$\",\"li\",\"storefront-starter\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/storefront-starter\",\"slug\":\"storefront-starter\",\"children\":\"Storefront Starter\"}]}],[\"$\",\"li\",\"loyalty-program\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/loyalty-program\",\"slug\":\"loyalty-program\",\"children\":\"Loyalty Program\"}]}],[\"$\",\"li\",\"discounts-promotions\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/discounts-promotions\",\"slug\":\"discounts-promotions\",\"children\":\"Discounts \u0026 Promotions\"}]}],[\"$\",\"li\",\"subscriptions-guide\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/subscriptions-guide\",\"slug\":\"subscriptions-guide\",\"children\":\"Subscriptions\"}]}],[\"$\",\"li\",\"klaviyo-integration\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/klaviyo-integration\",\"slug\":\"klaviyo-integration\",\"children\":\"Klaviyo Integration\"}]}],[\"$\",\"li\",\"custom-domains\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/custom-domains\",\"slug\":\"custom-domains\",\"children\":\"Custom Domains\"}]}],[\"$\",\"li\",\"agentic-commerce\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/agentic-commerce\",\"slug\":\"agentic-commerce\",\"children\":\"Agentic Commerce (ACP)\"}]}],[\"$\",\"li\",\"a2a-protocol\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/a2a-protocol\",\"slug\":\"a2a-protocol\",\"children\":\"A2A Protocol\"}]}],[\"$\",\"li\",\"ai-engines\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/ai-engines\",\"slug\":\"ai-engines\",\"children\":\"AI Engines\"}]}],[\"$\",\"li\",\"mcp-server\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/mcp-server\",\"slug\":\"mcp-server\",\"children\":\"MCP Server\"}]}]]}]]}]\n"])</script><script>self.__next_f.push([1,"25:[\"$\",\"div\",\"10\",{\"className\":\"mt-6\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"mb-2 px-3 text-xs font-semibold uppercase tracking-wider text-muted\",\"children\":\"Webhooks\"}],[\"$\",\"ul\",null,{\"className\":\"flex flex-col gap-0.5\",\"children\":[[\"$\",\"li\",\"webhooks-overview\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/webhooks-overview\",\"slug\":\"webhooks-overview\",\"children\":\"Webhooks Overview\"}]}],[\"$\",\"li\",\"webhooks-events\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/webhooks-events\",\"slug\":\"webhooks-events\",\"children\":\"Events Reference\"}]}],[\"$\",\"li\",\"webhooks-shopify\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/webhooks-shopify\",\"slug\":\"webhooks-shopify\",\"children\":\"Shopify Webhooks\"}]}],[\"$\",\"li\",\"webhooks-stripe\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/webhooks-stripe\",\"slug\":\"webhooks-stripe\",\"children\":\"Stripe Webhooks\"}]}],[\"$\",\"li\",\"webhooks-reviews\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/webhooks-reviews\",\"slug\":\"webhooks-reviews\",\"children\":\"Reviews (Stamped / Trustpilot)\"}]}],[\"$\",\"li\",\"webhooks-logistics\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/webhooks-logistics\",\"slug\":\"webhooks-logistics\",\"children\":\"Logistics\"}]}],[\"$\",\"li\",\"webhooks-email-inbound\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/webhooks-email-inbound\",\"slug\":\"webhooks-email-inbound\",\"children\":\"Email Inbound\"}]}]]}]]}]\n26:[\"$\",\"div\",\"11\",{\"className\":\"mt-6\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"mb-2 px-3 text-xs font-semibold uppercase tracking-wider text-muted\",\"children\":\"Resources\"}],[\"$\",\"ul\",null,{\"className\":\"flex flex-col gap-0.5\",\"children\":[[\"$\",\"li\",\"environment-variables\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/environment-variables\",\"slug\":\"environment-variables\",\"children\":\"Environment Variables\"}]}],[\"$\",\"li\",\"rate-limits\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/rate-limits\",\"slug\":\"rate-limits\",\"children\":\"Rate Limits\"}]}],[\"$\",\"li\",\"resources-changelog\",{\"children\":[\"$\",\"$L1d\",null,{\"href\":\"/docs/resources-changelog\",\"slug\":\"resources-changelog\",\"children\":\"Changelog\"}]}]]}]]}]\n"])</script><script>self.__next_f.push([1,"29:[\"$\",\"nav\",null,{\"className\":\"grid grid-cols-1 sm:grid-cols-2 gap-4 mt-12\",\"aria-label\":\"Pagination\",\"children\":[[\"$\",\"$L17\",null,{\"href\":\"/docs/shopify-sync\",\"className\":\"group flex items-center gap-3 border border-default rounded-xl p-4 hover:bg-hover transition-colors\",\"children\":[[\"$\",\"svg\",null,{\"ref\":\"$undefined\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"1em\",\"height\":\"1em\",\"fill\":\"currentColor\",\"viewBox\":\"0 0 256 256\",\"transform\":\"$undefined\",\"className\":\"w-4 h-4 text-muted shrink-0 group-hover:text-primary transition-colors\",\"children\":[false,\"$undefined\",[\"$\",\"path\",null,{\"d\":\"M165.66,202.34a8,8,0,0,1-11.32,11.32l-80-80a8,8,0,0,1,0-11.32l80-80a8,8,0,0,1,11.32,11.32L91.31,128Z\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-col min-w-0\",\"children\":[[\"$\",\"span\",null,{\"className\":\"text-xs text-muted\",\"children\":\"Previous\"}],[\"$\",\"span\",null,{\"className\":\"text-sm font-medium text-primary truncate\",\"children\":\"Shopify Sync\"}]]}]]}],[\"$\",\"$L17\",null,{\"href\":\"/docs/loyalty-program\",\"className\":\"group flex items-center justify-end gap-3 border border-default rounded-xl p-4 hover:bg-hover transition-colors text-right\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex flex-col min-w-0\",\"children\":[[\"$\",\"span\",null,{\"className\":\"text-xs text-muted\",\"children\":\"Next\"}],[\"$\",\"span\",null,{\"className\":\"text-sm font-medium text-primary truncate\",\"children\":\"Loyalty Program\"}]]}],[\"$\",\"svg\",null,{\"ref\":\"$undefined\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"1em\",\"height\":\"1em\",\"fill\":\"currentColor\",\"viewBox\":\"0 0 256 256\",\"transform\":\"$undefined\",\"className\":\"w-4 h-4 text-muted shrink-0 group-hover:text-primary transition-colors\",\"children\":[false,\"$undefined\",\"$6:2:props:children:0:props:children:props:children:0:props:children:1:0:props:children:2\"]}]]}]]}]\n"])</script><script>self.__next_f.push([1,"c:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#000000\"}]]\n"])</script><script>self.__next_f.push([1,"16:[\"$\",\"$L2a\",null,{\"formats\":\"$undefined\",\"locale\":\"en\",\"messages\":{\"landing\":{\"meta_title\":\"Reponse.ai – The Agentic Commerce OS\",\"insights_badge\":\"Insights\",\"meta_description\":\"All your commerce in a single OS: catalog, orders, customers, support and AI agents that sell 24/7. One store or a hundred, international-ready, 14-day free trial.\",\"header_problem\":\"Problem\",\"header_solution\":\"Solution\",\"header_features\":\"Features\",\"header_roi\":\"ROI\",\"header_solution_problem\":\"Problem\",\"header_solution_solution\":\"Solution\",\"header_solution_performance\":\"Performance\",\"header_solution_features\":\"Features\",\"header_pricing\":\"Pricing\",\"header_login\":\"Log in\",\"header_dashboard\":\"Dashboard\",\"header_resources\":\"Resources\",\"header_blog\":\"Blog\",\"header_guides\":\"Guides\",\"header_docs\":\"Documentation\",\"header_changelog\":\"Changelog\",\"header_faq\":\"FAQ\",\"pricing_badge\":\"Pricing\",\"pricing_title\":\"Zero commission on your sales.\",\"pricing_title_agency\":\"Deploy the OS for your clients.\",\"pricing_subtitle\":\"The subscription includes the full Reponse Core and the AI sales agent. No commission on your sales, ever. Just a flat subscription.\",\"pricing_subtitle_agency\":\"A win-win model: your clients pay the platform, you earn recurring revenue.\",\"pricing_audience_merchant\":\"For Merchants\",\"pricing_audience_agency\":\"For Agencies\",\"pricing_agency_margin\":\"Your margin:\",\"pricing_agent_included_title\":\"Included in both plans\",\"pricing_agent_included_name\":\"Ambassador\",\"pricing_agent_included_badge\":\"AI Sales Agent\",\"pricing_agent_included_desc\":\"Engages visitors, handles objections, and closes sales 24/7. Zero configuration required.\",\"pricing_description\":\"Simple, transparent pricing. Start free, scale when you're ready.\",\"pricing_toggle_monthly\":\"Monthly\",\"pricing_toggle_annual\":\"Annual\",\"pricing_save_badge\":\"Save 10%\",\"pricing_trial_info\":\"14-day free trial · No credit card required\",\"pricing_core_name\":\"Reponse Core\",\"pricing_core_desc\":\"The full OS, with the AI sales agent built in\",\"pricing_core_cta\":\"Start 14-day trial\",\"pricing_core_badge\":\"REPONSE CORE\",\"pricing_core_commission\":\"0% commission on your sales\",\"pricing_core_allowance\":\"2,500 AI conversations/mo included, then $0.05 each\",\"pricing_core_features\":[\"\u003cb\u003eAmbassador Agent\u003c/b\u003e, full version\",\"\u003cb\u003eProducts\u003c/b\u003e · variants, collections \u0026 unlimited orders\",\"\u003cb\u003eCheckout\u003c/b\u003e · cart-in-chat \u0026 conversational checkout\",\"\u003cb\u003eAI knowledge base\u003c/b\u003e · product vision\",\"\u003cb\u003eCRM\u003c/b\u003e · lead capture \u0026 AI scoring\",\"\u003cb\u003ePromotions\u003c/b\u003e · discount codes \u0026 gift cards\",\"\u003cb\u003eReviews\u003c/b\u003e · collection, display \u0026 Rich Snippets\",\"\u003cb\u003eSupport\u003c/b\u003e · tickets \u0026 help center\",\"\u003cb\u003eAnalytics\u003c/b\u003e · sales, conversions \u0026 performance\",\"\u003cb\u003eInternational\u003c/b\u003e · custom domain, languages \u0026 currencies\"],\"pricing_integral_name\":\"Reponse All-in\",\"pricing_integral_desc\":\"Everything: the OS, the AI agent and all 7 specialist agents\",\"pricing_integral_badge\":\"REPONSE ALL-IN\",\"pricing_integral_cta\":\"Start 14-day trial\",\"pricing_integral_commission\":\"0% commission on your sales\",\"pricing_integral_allowance\":\"10,000 AI conversations/mo included, then $0.05 each\",\"pricing_integral_features\":[\"\u003cb\u003eEverything in Reponse Core\u003c/b\u003e included\",\"\u003cb\u003eAmbassador Agent\u003c/b\u003e, full version\",\"\u003cb\u003eReviews\u003c/b\u003e Agent · moderates \u0026 replies 24/7\",\"\u003cb\u003eLoyalty\u003c/b\u003e Agent · retains \u0026 detects churn\",\"\u003cb\u003eMarketing\u003c/b\u003e Agent · cart recovery \u0026 segments\",\"\u003cb\u003eFulfillment\u003c/b\u003e Agent · parcel tracking \u0026 alerts\",\"\u003cb\u003eSupport\u003c/b\u003e Agent · resolves tickets autonomously\",\"\u003cb\u003eAnalytics\u003c/b\u003e Agent · trends \u0026 auto insights\"],\"pricing_no_cc\":\"No credit card required\",\"pricing_stripe_notice\":\"Payments processed via Stripe Connect. Standard Stripe fees apply (1.5% + €0.25 per transaction in Europe).\",\"pricing_agents_title\":\"Your store on autopilot\",\"pricing_agents_subtitle\":\"Add specialized agents at $69/mo each, or all six with Reponse All-in.\",\"pricing_agent_1_name\":\"Reviews Agent\",\"pricing_agent_1_price\":\"$$69\",\"pricing_agent_1_desc\":\"AI-powered review moderation \u0026 auto-responses\",\"pricing_agent_2_name\":\"Loyalty Agent\",\"pricing_agent_2_price\":\"$$69\",\"pricing_agent_2_desc\":\"Points, tiers \u0026 referral programs\",\"pricing_agent_3_name\":\"Marketing Agent\",\"pricing_agent_3_price\":\"$$69\",\"pricing_agent_3_desc\":\"Email automation \u0026 AI personalization\",\"pricing_agent_4_name\":\"Fulfillment Agent\",\"pricing_agent_4_price\":\"$$69\",\"pricing_agent_4_desc\":\"Order processing automation\",\"pricing_agent_5_name\":\"Support Agent\",\"pricing_agent_5_price\":\"$$69\",\"pricing_agent_5_desc\":\"AI ticket responses \u0026 CSAT tracking\",\"pricing_agent_6_name\":\"Analytics Agent\",\"pricing_agent_6_price\":\"$$69\",\"pricing_agent_6_desc\":\"AI-powered analytics \u0026 performance insights\",\"pricing_agencysim_title\":\"Estimate your recurring commission\",\"pricing_agencysim_plan\":\"Client plan\",\"pricing_agencysim_agents\":\"Add-on agents\",\"pricing_agencysim_agents_included\":\"All 6 agents included\",\"pricing_agencysim_merchants\":\"Merchants you manage\",\"pricing_agencysim_result\":\"Your recurring commission\",\"pricing_agencysim_per_year\":\"/year\",\"pricing_agencysim_per_merchant_suffix\":\"per merchant\",\"pricing_agencysim_note\":\"20% of subscription revenue (plan + agents), recurring for as long as the merchant stays. Excludes usage fees.\",\"most_popular\":\"Most popular\",\"pricing_faq_title\":\"Frequently Asked Questions\",\"pricing_faq_1_q\":\"How does pricing work?\",\"pricing_faq_1_a\":\"Reponse Core at $99/mo gives you the complete platform with the full AI sales agent built in: no light version, no separate add-on. Add premium agents at $69/mo each, or get everything with Reponse All-in at $399/mo. Every plan starts with a 14-day free trial.\",\"pricing_faq_2_q\":\"Are there any transaction fees?\",\"pricing_faq_2_a\":\"None. Reponse never takes a percentage of your sales, unlike platforms that charge 1-2% per transaction. You pay a flat subscription and usage-based conversation overage, that's it.\",\"pricing_faq_3_q\":\"What happens beyond the included conversations?\",\"pricing_faq_3_a\":\"Each plan includes a monthly AI conversation allowance (2,500 on Reponse Core). Beyond it, conversations keep running at full quality, never throttled or cut off, and extra conversations are billed at $0.05 each. You get an alert before you reach the limit.\",\"pricing_faq_4_q\":\"Is there a commitment?\",\"pricing_faq_4_a\":\"None. Cancel anytime in one click, no notice period, no fees. Annual plans are billed upfront with two months free.\",\"pricing_secure_payment\":\"Secure payment\",\"pricing_checkout_label\":\"Get started\",\"pricing_meta_title\":\"Simple, Transparent Pricing\",\"pricing_agency_badge\":\"Revenue Share\",\"pricing_agency_title\":\"Earn on every merchant you onboard.\",\"pricing_agency_subtitle\":\"Build the stores, we power the commerce. You earn a recurring share of their subscription revenue as long as they stay.\",\"pricing_agency_commission_label\":\"recurring\",\"pricing_agency_cta\":\"Apply as Partner\",\"pricing_agency_conditions_title\":\"Attribution conditions\",\"pricing_agency_cond_1\":\"The merchant signs up through your unique partner link or code. This is how we attribute the relationship — no link, no commission.\",\"pricing_agency_cond_2\":\"The merchant must remain an active paying subscriber. Commission is calculated on the merchant's net subscription amount (after discounts and refunds), paid monthly.\",\"pricing_agency_cond_3\":\"The 20% applies to all subscription revenue (OS + agents). It does not apply to usage-based fees (conversation overages) or to the merchant's AI sales commissions.\",\"pricing_agency_cond_4\":\"Commission is earned as long as the merchant is active and paying. No cap on duration or number of merchants. Fraud or self-referral results in immediate termination.\",\"changelog_badge\":\"Changelog\",\"changelog_title\":\"Product Updates\",\"changelog_description\":\"New features, improvements, and fixes for Reponse.ai.\",\"changelog_meta_title\":\"Latest Product Updates \u0026 New Features\",\"changelog_meta_description\":\"Stay up to date with the latest features and improvements to the Reponse.ai conversational commerce platform.\",\"cta_join_waitlist\":\"Join Waitlist\",\"hero_badge_beta\":\"Beta\",\"hero_badge_shopify\":\"Official Shopify App\",\"hero_brand_name\":\"Reponse.ai\",\"hero_brand_suffix\":\"AI Agent\",\"hero_title_line1\":\"Deploy your best \u003chighlight1\u003esalesperson\u003c/highlight1\u003e\",\"hero_title_line2\":\"in \u003chighlight2\u003e1 click\u003c/highlight2\u003e.\",\"hero_subtitle\":\"An autonomous AI agent that engages visitors, understands objections, and closes sales 24/7. With zero configuration.\",\"hero_cta_see_action\":\"Start for free\",\"problem_badge\":\"Problem\",\"problem_title_line1\":\"You pay for traffic.\",\"problem_title_line2\":\"97% leave without buying.\",\"problem_subtitle\":\"Ptsss... You're sending expensive paid traffic to a static, silent store with zero sales assistance.\",\"problem_attention_leak\":\"80% users never reach your 3rd section.\",\"problem_session_abandoned\":\"Session abandoned\",\"problem_drop_off_label\":\"User just left the page\",\"problem_wireframe_cta\":\"Add to cart\",\"solution_badge\":\"Solution\",\"solution_title_line1\":\"Transform \u003cbold\u003eintent\u003c/bold\u003e into a\",\"solution_title_line2\":\"\u003cgradient\u003etailor-made shopping experience\u003c/gradient\u003e that converts.\",\"solution_subtitle\":\"A personality for every intent\",\"solution_flow_ad\":\"Advertising\",\"solution_flow_purchase\":\"Immediate Revenue\",\"solution_usp_title\":\"Our Excellence Standards\",\"solution_usp_1_title\":\"0 Friction\",\"solution_usp_1_subtitle\":\"Fully automated.\",\"solution_usp_1_desc\":\"Operational in \u003cbold\u003ea heartbeat\u003c/bold\u003e. Just provide your website, and your \u003cbold\u003ebrand ambassador\u003c/bold\u003e is already at work.\",\"solution_usp_1_quick_setup_placeholder\":\"your-store.com\",\"solution_usp_1_quick_setup_button\":\"Get started\",\"solution_usp_2_title\":\"0 Downtime\",\"solution_usp_2_subtitle\":\"Available 24/7.\",\"solution_usp_2_desc\":\"Your ambassador \u003cbold\u003enever sleeps\u003c/bold\u003e and never misses an opportunity. A \u003cbold\u003econstant presence\u003c/bold\u003e for every visitor.\",\"solution_usp_3_title\":\"0 Guesswork\",\"solution_usp_3_subtitle\":\"Surgical precision.\",\"solution_usp_3_desc\":\"Arguments are refined in \u003cbold\u003ereal-time\u003c/bold\u003e based on customer behavior for \u003cbold\u003eabsolute relevance\u003c/bold\u003e.\",\"solution_signature\":\"Excellence embodied. \u003cbr\u003e\u003c/br\u003eEverywhere. All the time.\",\"solution_ambassadors_title\":\"Your default ambassadors.\",\"solution_ambassadors_subtitle\":\"A personality for every intent.\",\"solution_ambassador_alice_role\":\"Customer Experience\",\"solution_ambassador_alice_role_2\":\"Lifestyle Specialist\",\"solution_ambassador_alice_role_3\":\"Success Support\",\"solution_ambassador_alice_role_4\":\"Personal Shopper\",\"solution_ambassador_alex_role\":\"Technical Expert\",\"solution_ambassador_alex_role_2\":\"Innovation Guide\",\"solution_ambassador_alex_role_3\":\"Performance Specialist\",\"solution_ambassador_alex_role_4\":\"Technical Advisor\",\"solution_ambassador_status_active\":\"Available\",\"solution_flow_quote\":\"\\\"Hey! I see you liked the running shoes. Ready to find your size?\\\"\",\"solution_brain_title\":\"How Reponse understands\",\"solution_brain_title_2\":\"what they don't say.\",\"solution_brain_subtitle\":\"It doesn't just chat. It analyzes 50+ data points in real-time to predict intent and personalize the pitch.\",\"solution_brain_card1_kicker\":\"01. INTENT\",\"solution_brain_card1_title\":\"Buying Signal\",\"solution_brain_card1_desc\":\"Detects urgency, hesitation, or readiness based on click patterns.\",\"solution_brain_card2_kicker\":\"02. CONTEXT\",\"solution_brain_card2_title\":\"Product Match\",\"solution_brain_card2_desc\":\"Instantly maps visitor preferences to your inventory's best option.\",\"solution_brain_card3_kicker\":\"03. PERSUASION\",\"solution_brain_card3_title\":\"Smart Nudge\",\"solution_brain_card3_desc\":\"Triggers the perfect social proof or offer to close the deal.\",\"industries_title\":\"Built for every industry.\",\"industries_subtitle\":\"From high-ticket B2B to impulse-buy B2C, Reponse adapts its sales strategy to your specific customer.\",\"industry_personal_brand\":\"Personal Brand\",\"industry_skincare\":\"Skincare\",\"industry_saas_tools\":\"SaaS Tools\",\"industry_gaming\":\"Gaming\",\"industry_real_estate\":\"Real Estate\",\"industry_education\":\"Education\",\"industry_ecommerce\":\"E-commerce\",\"industry_automotive\":\"Automotive\",\"industry_travel\":\"Travel\",\"industry_services\":\"Services\",\"industry_fintech\":\"Fintech\",\"industry_food_beverage\":\"Food \u0026 Beverage\",\"features_title\":\"The AI that actually sells.\",\"features_subtitle\":\"Reponse.ai isn't just a chatbot. It's the engine that understands your customers, resolves their doubts, and secures your revenue.\",\"features_card1_title\":\"The AI that reads between the lines\",\"features_card1_desc\":\"It detects hesitation or urgency at the first click, stepping into the conversation exactly when it matters.\",\"features_card2_title\":\"The assistant that knows your ads\",\"features_card2_desc\":\"It knows exactly where the user came from (Facebook, Google, Pinterest) and matches its pitch to the ad intent.\",\"features_metric_conversion_rate\":\"Conversion Rate\",\"features_metric_engagement_rate\":\"Engagement Rate\",\"features_metric_aov\":\"AOV\",\"features_badge\":\"Conversion Engine\",\"strategic_badge\":\"The Advantage\",\"scorecard_badge\":\"AI-Ready Scorecard\",\"scorecard_title\":\"Is your store AI-readable?\",\"scorecard_subtitle\":\"Shoppers increasingly rely on AI assistants (SearchGPT, etc.) to discover products. Without your own agent to pitch your brand, you're losing sales to the competition.\",\"scorecard_metric_1_title\":\"Data Structure\",\"scorecard_metric_1_desc\":\"Compliance level with AI-agent data schemas.\",\"scorecard_metric_2_title\":\"Persuasive Logic\",\"scorecard_metric_2_desc\":\"Machine's ability to extract your core sales arguments.\",\"scorecard_metric_3_title\":\"Agent Accessibility\",\"scorecard_metric_3_desc\":\"Ease for an AI to finalize a purchase intent.\",\"scorecard_cta\":\"Generate my readability report\",\"features_visual_intent_detected\":\"High Intent Detected\",\"features_visual_confidence\":\"{percent}% confidence\",\"features_visual_conv_opt\":\"Conversion Opt.\",\"features_visual_revenue_boost\":\"Revenue Boost\",\"features_visual_active\":\"Active\",\"features_visual_live\":\"LIVE\",\"features_visual_connected\":\"CONNECTED\",\"features_visual_campaign_url\":\"Campaign URL\",\"features_visual_copy\":\"COPY\",\"features_visual_domain\":\"DOMAIN\",\"features_title_line1\":\"The agent that\",\"features_title_line2\":\"never stops selling.\",\"more_features_title_line1\":\"One agent.\",\"more_features_title_line2\":\"Zero missed opportunities.\",\"features_intent_title\":\"Identify\",\"features_intent_subtitle\":\"Your Next Buyer\",\"features_intent_desc\":\"Reponse scores leads and dynamically adapts sales pressure for a personalized closing experience.\",\"features_ads_title\":\"Origin\",\"features_ads_subtitle\":\"Awareness\",\"features_ads_desc\":\"UTM-aware conversation starters. Visitor's origin is automatically detected to automatically tailor conversation openers.\",\"features_catalog_title\":\"Complete\",\"features_catalog_subtitle\":\"Product Mastery.\",\"features_catalog_desc\":\"Your inventory becomes a living knowledge base, capable of arguing every detail.\",\"features_agile_title\":\"Real-Time\",\"features_agile_subtitle\":\"Personalization.\",\"features_agile_desc\":\"Your agent follows the browsing. Catalog, blog, helpdesk, it reads the active page and answers from the right source, every time.\",\"features_visual_context_logistics\":\"Shopify Stock\",\"features_visual_context_dna\":\"Product Page\",\"features_visual_context_faq\":\"Helpdesk \u0026 FAQ\",\"features_visual_agile_query_1\":\"What's the material?\",\"features_visual_agile_query_2\":\"Is it in stock?\",\"features_visual_agile_query_3\":\"How do I return?\",\"features_visual_agile_status_analyzing\":\"Analyzing Intent...\",\"features_visual_agile_status_switched\":\"Context Switch: {source}\",\"features_ecosystem_title\":\"Connected to\",\"features_ecosystem_subtitle\":\"your ecosystem.\",\"features_context_title\":\"Recover 100% of your non-buyers\",\"features_context_desc\":\"The agent is able to trade incentives to capture the emails of your most promising visitors, and automatically syncs them to Klaviyo.\",\"features_shopify_badge\":\"Dashboard\",\"features_resources_title\":\"Your brand's active memory\",\"features_resources_desc\":\"Don't rely solely on the product description. Connect your blog URLs, FAQ, and shipping details for surgical precision.\",\"features_deploy_title\":\"Conversational Campaigns\",\"features_deploy_desc\":\"Generate unique URLs for each audience (Meta/TikTok). Test, iterate, and visualize which campaign drives the most qualified traffic.\",\"features_experience_title\":\"Analytics \u0026 ROI Tracking\",\"features_experience_desc\":\"Visual tracking of your engagement rate and CPA drops. Every conversation is analyzed to justify your ROAS.\",\"carousel_title\":\"Under the hood\",\"carousel_subtitle\":\"Everything you need to master your conversion.\",\"carousel_feature_1_title\":\"Native Shopify Sync\",\"features_chatbox_title\":\"On-site Experience\",\"features_chatbox_desc\":\"Deploy in seconds via our official Shopify app or a simple JS snippet. Fully customizable to match your brand.\",\"features_chatbox_visual_shopify\":\"Shopify Official App\",\"features_chatbox_visual_snippet\":\"JS Snippet\",\"carousel_feature_1_desc\":\"Inventory, variants, and pricing updated in real-time for pinpoint accurate recommendations.\",\"carousel_feature_2_title\":\"Live Intent Dashboard\",\"carousel_feature_2_desc\":\"Visualize what your customers are really looking for and spot missed sales opportunities in real-time.\",\"carousel_feature_3_title\":\"Multi-Source Training\",\"carousel_feature_3_desc\":\"Upload brand PDFs or paste URLs. The AI masters your business logic in under 2 minutes.\",\"carousel_feature_4_title\":\"Smart UTM Routing\",\"carousel_feature_4_desc\":\"Build specific conversational paths based on your ad campaigns for maximum relevance.\",\"roi_badge\":\"Performance\",\"performance_badge\":\"Official Shopify App\",\"performance_title_line1\":\"The Revenue\",\"performance_title_line2\":\"Machine\",\"performance_subtitle\":\"Reponse tracks every session to discover your exact lead rate and identifies which visits converted into sales through our native Shopify integration.\",\"performance_metric_lead_title\":\"Lead Rate\",\"performance_metric_lead_desc\":\"Discover which conversations turn into high-intent leads.\",\"performance_metric_visit_title\":\"Visit Rate\",\"performance_metric_visit_desc\":\"Track visits to your product pages triggered by the AI.\",\"performance_metric_revenue_title\":\"Conversion Tracking\",\"performance_metric_revenue_desc\":\"Official Shopify integration to attribute every sale to the right conversation.\",\"performance_metric_purchase_title\":\"Purchase\",\"performance_metric_revenue_total_title\":\"Revenue\",\"performance_log_activity\":\"Log Activity\",\"performance_source_direct\":\"Direct\",\"performance_source_ads\":\"Ads\",\"performance_source_shopify\":\"Shopify\",\"performance_feed_badge\":\"Live Attribution\",\"performance_feed_event_lead\":\"Lead detected • Session #{id}\",\"performance_feed_event_sale\":\"Order #{id} attributed • +{amount}€\",\"roi_title_line1\":\"Every non-buyer\",\"roi_title_line2\":\"has a reason.\",\"roi_subtitle\":\"Reponse adapts the conversation to identify intent, adapt sales pressure, and capture the lead. We recover the opportunity. You close the deal.\",\"roi_subtitle_prefix\":\"Reponse adapts the conversation to identify intent, adapt sales pressure, and capture the lead.\",\"roi_subtitle_bold\":\"We recover the opportunity.\",\"roi_subtitle_suffix\":\"You close the deal.\",\"roi_disclaimer\":\"No credit card required • Early access limited\",\"footer_rights\":\"Copyright {year} Reponse.ai. All rights reserved.\",\"footer_legal\":\"Legal Notice\",\"footer_terms\":\"Terms of Service\",\"footer_privacy\":\"Privacy Policy\",\"footer_refund\":\"Refund Policy\",\"cookie_consent_title\":\"We value your privacy\",\"cookie_consent_description\":\"We use cookies to improve your experience and analyze our traffic. By clicking \\\"Accept All\\\", you consent to our use of cookies.\",\"cookie_consent_accept\":\"Accept All\",\"cookie_consent_decline\":\"Decline\",\"cookie_consent_learn_more\":\"Learn more\",\"footer_status\":\"Status\",\"footer_status_operational\":\"Operational\",\"footer_description\":\"Your autonomous AI salesperson for e-commerce. Reponse.ai engages your store's visitors, handles objections, and closes sales 24/7 with zero technical configuration.\",\"footer_language_label\":\"Language\",\"waitlist_modal_title\":\"Join the waiting list\",\"waitlist_modal_subtitle\":\"Get a confirmation email, then we’ll notify you when early access opens.\",\"waitlist_modal_email_label\":\"Email\",\"waitlist_modal_email_placeholder\":\"you@company.com\",\"waitlist_modal_submit\":\"Confirm\",\"waitlist_modal_cancel\":\"Cancel\",\"waitlist_modal_disclaimer\":\"No spam. You can unsubscribe anytime.\",\"author_name\":\"Vincent Redor\",\"author_title\":\"Founder of Reponse.ai\",\"author_description_line1\":\"I help e-commerce brands escape rising acquisition costs and unlock profitable growth.\",\"author_description_line2\":\"Ready to lower your CPA and scale sales?\",\"author_cta\":\"Let’s talk\",\"contact_modal_title\":\"Let's talk about your project\",\"contact_modal_name\":\"Full name\",\"contact_modal_email\":\"Work email\",\"contact_modal_company\":\"Company (URL or Name)\",\"contact_modal_needs\":\"How can I help you?\",\"contact_modal_submit\":\"Send message\",\"contact_modal_success\":\"Message sent! I'll get back to you shortly.\",\"cms_key_insights\":\"Key Insights\",\"cms_analyze_title\":\"Analyze with Reponse AI\",\"cms_analyze_subtitle\":\"Continue conversation about your goals\",\"cms_analyze_button\":\"Let's go\",\"proof_badge\":\"Seeing is believing\",\"proof_title_line1\":\"The future of CX,\",\"proof_title_line2\":\"in real conditions.\",\"proof_view_demo\":\"View demo\",\"hero_cta_placeholder\":\"your-store.com\",\"hero_cta_button\":\"Discover now\",\"hero_cta_microcopy1\":\"No credit card required\"},\"v2\":{\"hero\":{\"badge\":\"is live\",\"titleLine1\":\"All your commerce, in\",\"titleHighlight\":\"a single OS.\",\"subtitle\":\"The future of commerce: agentic, all-in-one, run by AI,\",\"subtitleEmphasis\":\"under your control.\",\"ctaDemo\":\"Talk to sales\",\"ctaStart\":\"Launch your store\",\"showcaseCaption\":\"Interactive preview. Use the menu to explore each module.\"},\"platform\":{\"eyebrow\":\"Agentic Commerce OS\",\"title\":\"One OS, all-inclusive, AI-powered.\",\"subtitle\":\"Every module is native, connected to the others and operable by your team and your AI agents — on one store or a hundred.\",\"pinHint\":\"Click a capability to pin the highlight.\",\"mobileCaption\":\"Interactive preview.\",\"features\":{\"products\":{\"label\":\"Catalog\",\"headline\":\"A catalog, enriched by AI.\",\"lead\":\"A native PIM that structures your products, variants and media. AI enriches every listing automatically for SEO, chat and agents.\",\"footnote\":\"Works standalone or as a layer on Shopify.\",\"caps\":{\"0\":{\"title\":\"AI-enriched listings\",\"desc\":\"Descriptions, tags and metadata generated from your visuals and specs.\"},\"1\":{\"title\":\"Variants and options\",\"desc\":\"Size, color, material: unlimited combinations, price per variant.\"},\"2\":{\"title\":\"Recurring \u0026 Subscriptions\",\"desc\":\"Sell memberships, boxes, and replenishment plans with built-in billing cycles.\"},\"3\":{\"title\":\"AI vision\",\"desc\":\"Automatic visual analysis to detect colors, materials and style.\"}}},\"orders\":{\"label\":\"Orders\",\"headline\":\"From order to delivery, friction-free.\",\"lead\":\"A complete pipeline with automated statuses, payment tracking and shipping management in a single view.\",\"caps\":{\"0\":{\"title\":\"Visual pipeline\",\"desc\":\"Every order follows a clear cycle: confirmed, prepared, shipped, delivered.\"},\"1\":{\"title\":\"Built-in payments\",\"desc\":\"Native Stripe with partial refunds and dispute handling.\"},\"2\":{\"title\":\"Shipping\",\"desc\":\"Delivery profiles and shipping rates by zone, label generation, carrier tracking and automatic customer notifications.\"},\"3\":{\"title\":\"Fulfillment \u0026 warehouses\",\"desc\":\"Multi-warehouse routing, automatic stock allocation and fulfillment closest to the customer.\"}}},\"customers\":{\"label\":\"Customers\",\"headline\":\"A CRM built for commerce.\",\"lead\":\"Every customer has a complete profile: purchase history, conversations, segments and scoring, with no external integration.\",\"caps\":{\"0\":{\"title\":\"Customer life\",\"desc\":\"Purchases, support conversations, emails and AI interactions in a single timeline.\"},\"1\":{\"title\":\"Automatic segments\",\"desc\":\"Group by purchase behavior, LTV, recurrence or acquisition channel.\"},\"2\":{\"title\":\"Customer reviews\",\"desc\":\"Collect, moderate and reply to product reviews, tied to each customer profile.\"},\"3\":{\"title\":\"Native loyalty\",\"desc\":\"Points, tiers and rewards built into checkout and the AI agents.\"}}},\"discounts\":{\"label\":\"Promotions\",\"headline\":\"A promotions engine, not a text field.\",\"lead\":\"Promo codes, automatic discounts, Buy X Get Y: advanced targeting rules that AI agents know how to apply.\",\"caps\":{\"0\":{\"title\":\"Codes \u0026 auto-apply\",\"desc\":\"Manual codes or automatic discounts triggered by the agents.\"},\"1\":{\"title\":\"Buy X Get Y\",\"desc\":\"Conditional offers with minimum quantities and target items.\"},\"2\":{\"title\":\"Advanced rules\",\"desc\":\"Conditions on subtotal, products and customer segments.\"},\"3\":{\"title\":\"Bulk generation\",\"desc\":\"Create hundreds of unique codes in one click for your campaigns.\"}}},\"support\":{\"label\":\"Support\",\"headline\":\"Every ticket solved by AI, or your team.\",\"lead\":\"A multichannel inbox with automatic AI replies, smart escalation and native SLA tracking.\",\"caps\":{\"0\":{\"title\":\"Unified inbox\",\"desc\":\"Chat, email, WhatsApp and social in a single queue.\"},\"1\":{\"title\":\"AI replies\",\"desc\":\"The customer-service agent replies in context with order and product history.\"},\"2\":{\"title\":\"Smart escalation\",\"desc\":\"When AI reaches its limit it opens a ticket, notifies your inbox in real time and hands over with the full conversation context.\"},\"3\":{\"title\":\"SLA \u0026 metrics\",\"desc\":\"First-response time, resolution rate, satisfaction.\"}}},\"analytics\":{\"label\":\"Analytics\",\"headline\":\"KPIs, not empty dashboards.\",\"lead\":\"Conversion, average order value, revenue, sessions: the metrics that matter, in real time, with no setup.\",\"caps\":{\"0\":{\"title\":\"Real-time view\",\"desc\":\"KPIs updated continuously: revenue, orders, conversion rate.\"},\"1\":{\"title\":\"All your data, one place\",\"desc\":\"Commerce, AI agents, support and marketing analytics unified in a single dashboard.\"},\"2\":{\"title\":\"AI attribution\",\"desc\":\"See which agents and channels generate the most value.\"},\"3\":{\"title\":\"GTM \u0026 export\",\"desc\":\"Native Google Tag Manager, CSV export and analytics webhooks.\"}}}}},\"agent\":{\"eyebrow\":\"AI Workforce\",\"title\":\"AI agents. At your service.\",\"subtitle\":\"Sales, support, SEO, translation — specialized agents that run commerce natively. A workforce you switch on, without hiring.\",\"featured\":{\"name\":\"Ambassador\",\"badge\":\"AI Sales Agent\",\"desc\":\"The best salesperson, available 24/7 across all channels. It understands intent, recommends, builds the cart and checks out, just like an in-store salesperson would.\"},\"caps\":{\"qualify\":\"Qualifies the visitor and adapts its pitch in real time\",\"recommend\":\"Recommends the right products, in context\",\"bundle\":\"Builds the cart and suggests the right bundle\",\"promo\":\"Applies the live campaign and promo code\",\"checkout\":\"Handles payment, inside the conversation\",\"retain\":\"Captures leads and recovers abandoned carts\"},\"team\":{\"eyebrow\":\"The full team\",\"title\":\"Seven more agents, already at work.\",\"subtitle\":\"Each has a precise mission and runs autonomously. Add the ones you need, or get all six with Reponse All-in.\",\"agents\":{\"service\":{\"name\":\"Support Agent\",\"mission\":\"Handles support tickets, triggers their creation and drafts replies.\"},\"seo\":{\"name\":\"SEO Agent\",\"mission\":\"Distributes your catalog and indexes your reviews (Rich Snippets) on search engines and AI surfaces.\"},\"reputation\":{\"name\":\"Reputation Agent\",\"mission\":\"Automatically replies to customer reviews and watches over your reputation.\"},\"translation\":{\"name\":\"Translation\",\"mission\":\"Translates and localizes your catalog in real time, in every language.\"},\"marketing\":{\"name\":\"Marketing Agent\",\"mission\":\"Orchestrates email automations and AI-personalized campaigns across channels.\"},\"fulfillment\":{\"name\":\"Fulfillment Agent\",\"mission\":\"Processes orders, automates fulfillment workflows and tracks shipping.\"},\"analytics\":{\"name\":\"Analytics Agent\",\"mission\":\"Monitors KPIs, benchmarks agent performance and generates weekly insight reports.\"}}},\"protocols\":{\"text\":\"Every resource — product, cart, order — is a tool agents execute over open protocols.\"},\"chat\":{\"botName\":\"Reponse Advisor\",\"online\":\"Available\",\"widget\":\"Widget\",\"cartItemCount\":\"item(s)\",\"placeholder\":\"Ask a question...\",\"greeting\":\"Hi 👋 I can help you find the right product. Are you looking for something in particular?\",\"user1\":\"A versatile pair of sneakers.\",\"agentReco\":\"For everyday wear, the Aura Sneakers are our best-seller. And your size is still in stock.\",\"productNote\":\"Size 42 recommended based on your purchases\",\"addToCart\":\"Add to cart\",\"agentBundle\":\"Often bought together: add the Nomad Bag and save 15%.\",\"bundleTitle\":\"Recommended duo\",\"user2\":\"Perfect, I'll take the duo.\",\"agentPromo\":\"The Spring campaign is live: I'm applying code SPRING10, -10% on your duo.\",\"cartTitle\":\"Cart\",\"cartDiscountBundle\":\"Duo -15%\",\"cartTotal\":\"Total\",\"paymentTitle\":\"Payment\",\"paymentSecure\":\"secure\",\"pay\":\"Pay {total}\",\"orderConfirmed\":\"Order confirmed\",\"orderPaid\":\"{order} · paid {total}\",\"agentRetain\":\"All set 🎉 Tracking sent by email. I'll keep a -10% code for you next time.\"}},\"developers\":{\"eyebrow\":\"Storefront \u0026 Omnichannel\",\"title\":\"Your products, sold everywhere people buy.\",\"subtitle\":\"One catalog, exposed in real time to every surface: storefront, messaging, AI agents. A typed SDK and open protocols any developer picks up in hours.\",\"protocolsTitle\":\"Three open protocols, zero custom integration.\",\"protocols\":{\"mcp\":{\"full\":\"Model Context Protocol\",\"desc\":\"Your products, stock and orders become tools that agents read and execute, with no custom integration.\"},\"acp\":{\"full\":\"Agent Commerce Protocol\",\"desc\":\"Payment inside AI agents: your buyers order without leaving their assistant.\"},\"ucp\":{\"full\":\"Universal Commerce Protocol\",\"desc\":\"Your stores discoverable by AI surfaces, with catalog, capabilities and payment already wired.\"}},\"features\":{\"0\":{\"title\":\"React \u0026 Headless SDK\",\"desc\":\"Hooks, headless components, CLI. Next.js, Remix, Astro.\"},\"1\":{\"title\":\"REST \u0026 Webhooks API\",\"desc\":\"OpenAPI, real-time events, generous rate limits.\"},\"2\":{\"title\":\"Storefront starter\",\"desc\":\"A theme ready to deploy.\"}},\"agentsTitle\":\"Build your Storefront with your favorite AI coding agent.\",\"agentsDesc\":\"Typed SDK, schemas and exposed MCP: Cursor, Copilot, Claude or Windsurf generate, test and deploy on Reponse without guessing the API.\",\"docLink\":\"Read the documentation\",\"flow\":{\"catalogTitle\":\"Catalog\",\"osLabel\":\"Reponse Core\",\"live\":\"live\",\"surfaces\":{\"storefront\":{\"label\":\"Storefront\",\"sub\":\"your buyers\"},\"advisor\":{\"label\":\"Sales Advisor\",\"sub\":\"AI agent\"},\"buyers\":{\"label\":\"Shopping agents\",\"sub\":\"via ACP\"},\"messaging\":{\"label\":\"WhatsApp \u0026 DM\",\"sub\":\"multichannel\"}}}},\"international\":{\"eyebrow\":\"International-ready\",\"title\":\"Go global, natively.\",\"subtitle\":\"Languages, currencies, taxes and local domains: every store is international-ready from day one.\",\"features\":{\"0\":{\"title\":\"Multilingual catalog\",\"desc\":\"Auto-translated by the Translation agent into every enabled language.\"},\"1\":{\"title\":\"Per-market currency \u0026 tax\",\"desc\":\"Zero duplicate setup: local currency, VAT and tax rules, centralized market by market.\"},\"2\":{\"title\":\"Shipping zones\",\"desc\":\"Country groups, rates and rules per zone, straight from the dashboard.\"},\"3\":{\"title\":\"Localized domains\",\"desc\":\"A dedicated domain per store and region, for a native local presence.\"}},\"footer\":\"A credible local presence, everywhere, without stacking tools.\",\"storeName\":\"My Store\",\"showcases\":{\"multilingual\":{\"productName\":\"Aura Sneakers\",\"productPrice\":\"€ 159\",\"badge\":\"Auto-translated\",\"translations\":{\"fr\":\"Cuir premium, semelle coussinée. Design minimaliste.\",\"en\":\"Premium leather, cushioned sole. Minimalist design.\",\"de\":\"Premium-Leder, gedämpfte Sohle. Minimalistisches Design.\",\"ja\":\"プレミアムレザー、クッションソール。ミニマルデザイン。\"}},\"currency\":{\"basePrice\":\"Base price\",\"taxIncluded\":\"incl.\",\"noTax\":\"No tax\",\"autoConverted\":\"Auto-converted\"},\"shipping\":{\"free\":\"Free\",\"zoneTitle\":\"Shipping zones\"},\"domains\":{\"secured\":\"Secured\",\"primary\":\"Primary\",\"market\":\"Market\"}}},\"finalCta\":{\"marquee\":\"The future of commerce is agentic\",\"marquee2\":\"One OS to run them all\",\"subtitle\":\"Deploy your first store in minutes. No credit card required.\",\"ctaStart\":\"Launch your store\",\"ctaTalk\":\"Talk to sales\"},\"logos\":{\"caption\":\"Connected to your existing stack and the protocols of agentic commerce\"},\"outcomes\":{\"stats\":{\"0\":{\"value\":\"3\",\"label\":\"native agent protocols: MCP, ACP and UCP, with no plugin\"},\"1\":{\"value\":\"24/7\",\"label\":\"an autonomous salesperson that answers and closes on every channel\"},\"2\":{\"value\":\"1\",\"label\":\"invoice and one unified dataset, instead of a stack of subscriptions\"},\"3\":{\"value\":\"1 click\",\"label\":\"to launch a new store, not weeks\"}},\"footnote\":\"Product capabilities, not marketing promises. Book a demo to see them live.\"},\"pricingTeaser\":{\"title\":\"Simple pricing. Zero commission on your sales.\",\"subtitle\":\"One subscription for the full OS, AI sales agent included. No transaction fees, no commission, ever.\",\"fromLabel\":\"From\",\"price\":\"$$99\",\"per\":\"/mo\",\"features\":{\"0\":\"Complete e-commerce OS, AI sales agent included\",\"1\":\"0% commission on your sales, unlike Shopify\",\"2\":\"2,500 AI conversations/mo included\",\"3\":\"14-day free trial, no credit card\"},\"cta\":\"See pricing\"},\"footer\":{\"tagline\":\"The Agentic Commerce OS. All your commerce, one platform.\",\"copyright\":\"All rights reserved.\",\"bottomTag\":\"Agentic Commerce OS\",\"col_product\":\"Product\",\"col_solutions\":\"Solutions\",\"col_developers\":\"Developers\",\"col_resources\":\"Resources\",\"col_legal\":\"Legal\",\"link_platform\":\"Platform\",\"link_ai_agent\":\"AI Agent\",\"link_pricing\":\"Pricing\",\"link_changelog\":\"Changelog\",\"link_solutions\":\"Solutions\",\"link_partners\":\"Agencies \u0026 partners\",\"link_shopify\":\"Shopify\",\"link_docs\":\"Documentation\",\"link_api\":\"API\",\"link_mcp\":\"MCP Server\",\"link_sdk\":\"SDK \u0026 React\",\"link_blog\":\"Blog\",\"link_faq\":\"FAQ\",\"link_status\":\"Status\",\"link_privacy\":\"Privacy\",\"link_terms\":\"Terms\",\"link_refund\":\"Refund policy\"},\"header\":{\"nav\":{\"solutions\":\"Solutions\",\"shopify\":\"For Shopify\",\"developers\":\"Developers\",\"resources\":\"Resources\",\"pricing\":\"Pricing\"},\"cta\":{\"start\":\"Talk to sales\",\"dashboard\":\"Go to dashboard\",\"login\":\"Log in\",\"dashboardShort\":\"Dashboard\"},\"solutions\":{\"0\":{\"label\":\"Agentic Commerce OS\",\"desc\":\"Catalog, orders, customers, support and analytics — all your commerce in a single OS.\"},\"1\":{\"label\":\"AI Workforce\",\"desc\":\"An autonomous salesperson and five specialized agents that run commerce for you.\"},\"2\":{\"label\":\"Storefront \u0026 omnichannel\",\"desc\":\"Your catalog, sold on your site, messaging apps and AI shopping agents.\"},\"3\":{\"label\":\"For Shopify\",\"desc\":\"The most complete Customer Experience Suite for Shopify. It doesn't just answer, it sells.\"}},\"mockup\":{\"title\":\"Ship faster, from day one\",\"desc\":\"Catalog, orders, AI agents and analytics, ready to ship from day one.\",\"cta\":\"Explore the platform\"},\"shopifyMenu\":{\"title\":\"Reponse for Shopify\",\"desc\":\"The most complete Customer Experience Suite for Shopify, on the store you already have.\",\"cta\":\"Explore the suite\"},\"devLinks\":{\"0\":{\"label\":\"API reference\",\"desc\":\"REST and webhooks.\"},\"1\":{\"label\":\"React \u0026 Headless SDK\",\"desc\":\"Hooks, components, CLI.\"},\"2\":{\"label\":\"MCP Server\",\"desc\":\"Your catalog as tools for the agents.\"},\"3\":{\"label\":\"Agent Commerce Protocol\",\"desc\":\"Checkout inside AI agents.\"},\"4\":{\"label\":\"Storefront starter\",\"desc\":\"A theme ready to deploy.\"},\"5\":{\"label\":\"Changelog\",\"desc\":\"Product and API updates.\"}},\"devDoc\":{\"title\":\"Documentation\",\"desc\":\"Quickstart, guides and API, SDK and protocol references. Everything to integrate Reponse.\",\"cta\":\"Read the docs\"},\"resources\":{\"0\":\"Documentation\",\"1\":\"Blog\",\"2\":\"Changelog\",\"3\":\"FAQ\"}}},\"common\":{\"create\":\"Create\",\"edit\":\"Edit\",\"loading\":\"Loading...\",\"loading_more\":\"Loading more...\",\"save\":\"Save\",\"saving\":\"Saving...\",\"saved\":\"Saved\",\"save_error\":\"Failed to save\",\"cancel\":\"Cancel\",\"delete\":\"Delete\",\"close\":\"Close\",\"back\":\"Back\",\"next\":\"Next\",\"continue\":\"Continue\",\"finish\":\"Finish\",\"skip\":\"Skip for now\",\"finish_later\":\"Finish later\",\"complete_setup\":\"Complete Setup\",\"error\":\"Something went wrong\",\"success\":\"Success\",\"copy\":\"Copy\",\"copied\":\"Copied\",\"copy_failed\":\"Copy failed\",\"search\":\"Search...\",\"no_results\":\"No results found.\",\"variants\":\"variant(s)\",\"required\":\"Required\",\"country_select_placeholder\":\"Select countries…\",\"country_add_more\":\"Add or remove countries…\",\"country_selected_count\":\"{count} countries selected\",\"country_search_placeholder\":\"Search a country…\",\"country_no_results\":\"No country found.\",\"country_select_all\":\"Select all\",\"country_deselect_all\":\"Deselect all\",\"taxonomy_select_placeholder\":\"Select a Google category…\",\"taxonomy_search_placeholder\":\"Search categories…\",\"taxonomy_no_results\":\"No categories found.\",\"taxonomy_clear\":\"Clear\",\"sales\":\"sales\",\"rate_singular\":\"rate\",\"rate_plural\":\"rates\",\"country_singular\":\"country\",\"country_plural\":\"countries\",\"free\":\"Free\",\"product_singular\":\"product\",\"product_plural\":\"products\",\"add\":\"Add\"},\"blog\":{\"title\":\"E-commerce Conversion Optimization through AI Sales Agent\",\"description\":\"Discover the latest insights from the Reponse.ai team. We share our thoughts, case studies, and practical tips on transforming your advertising traffic into sales through conversational commerce and artificial intelligence.\",\"empty\":\"No articles published yet.\",\"backToList\":\"Back to Blog\"},\"docs\":{\"title\":\"Technical Documentation | Reponse.ai API, SDK \u0026 Integration Reference\",\"description\":\"Explore our comprehensive technical documentation. You'll find API references, integration guides for our SDK (widget), and all the information needed to connect Reponse.ai to your e-commerce stack (Shopify, Klaviyo, etc.).\",\"empty\":\"No documentation published yet.\",\"backToList\":\"Back to Documentation\",\"breadcrumb\":\"Documentation\",\"breadcrumbShort\":\"Docs\",\"onThisPage\":\"On this page\",\"previous\":\"Previous\",\"next\":\"Next\",\"readingTime\":\"{count} min read\",\"readingTimeOne\":\"1 min read\",\"lastUpdated\":\"Last updated\",\"share\":\"Share\",\"copied\":\"Copied\",\"searchPlaceholder\":\"Search...\",\"searchTitle\":\"Search Documentation\",\"searchDescription\":\"Search for an article...\",\"searchInputPlaceholder\":\"Search documentation...\",\"searchNoResults\":\"No results found\",\"ogBadge\":\"Documentation\",\"metaDescFallback\":\"Technical documentation: \\\"{title}\\\". Reference for Reponse.ai integration.\",\"zoomHint\":\"⌘ scroll to zoom\",\"zoomIn\":\"Zoom in\",\"zoomOut\":\"Zoom out\",\"zoomReset\":\"Reset\",\"sidebarAria\":\"Documentation\",\"tocAria\":\"Table of contents\",\"paginationAria\":\"Pagination\",\"breadcrumbAria\":\"Breadcrumb\",\"hamburgerAria\":\"Open menu\",\"themeLightAria\":\"Switch to light mode\",\"themeDarkAria\":\"Switch to dark mode\",\"githubAria\":\"GitHub\",\"nav\":{\"docs\":\"Docs\",\"api\":\"API\",\"sdks\":\"SDKs\",\"guides\":\"Guides\"},\"sections\":{\"getting-started\":\"Getting Started\",\"products-collections\":\"Products \u0026 Collections\",\"cart-checkout\":\"Cart \u0026 Checkout\",\"orders-fulfillment\":\"Orders \u0026 Fulfillment\",\"commerce\":\"Commerce\",\"loyalty-gift-cards\":\"Loyalty \u0026 Gift Cards\",\"tickets-support\":\"Tickets \u0026 Support\",\"platform\":\"Platform\",\"sdks\":\"SDKs\",\"guides\":\"Guides\",\"webhooks\":\"Webhooks\",\"resources\":\"Resources\"},\"sectionDescriptions\":{\"getting-started\":\"Set up your account and make your first API call.\",\"products-collections\":\"Manage your catalog — products, variants, collections.\",\"cart-checkout\":\"Cart operations and checkout flows.\",\"orders-fulfillment\":\"Create, manage, and fulfill customer orders.\",\"commerce\":\"Inventory, shipping, discounts, and subscriptions.\",\"loyalty-gift-cards\":\"Points, referrals, and gift card management.\",\"tickets-support\":\"Customer support ticketing API.\",\"platform\":\"Feeds, themes, approvals, and utilities.\",\"sdks\":\"Client libraries for TypeScript and React.\",\"guides\":\"Step-by-step tutorials for common use cases.\",\"webhooks\":\"Real-time event notifications.\",\"resources\":\"Environment setup, limits, and changelog.\"}},\"faq\":{\"title\":\"Frequently Asked Questions\",\"description\":\"Find all the answers to boost your brand's sales and customer experience with an AI sales agent made in Reponse.ai.\",\"search_placeholder\":\"Search a question...\",\"no_results\":\"No results found\",\"no_results_desc\":\"Try different keywords or explore the categories.\",\"still_questions\":\"Still have questions?\",\"still_questions_desc\":\"We're here to help you transform your store with AI.\",\"contact_email\":\"Contact us by email\",\"book_demo\":\"Start for free\",\"categories\":{\"all\":\"All\",\"general\":\"General\",\"technical\":\"Technical\",\"conversion\":\"Conversion\",\"customization\":\"Customization\"}},\"changelog\":{\"title\":\"Changelog | Latest Reponse Updates \u0026 Features\",\"description\":\"What's new in Reponse.\",\"empty\":\"No updates published yet.\"},\"service\":{\"meta_title\":\"Post-Click Optimization \u0026 Paid Conversion\",\"meta_description\":\"+15-30% paid traffic conversion guaranteed. Expert AI service to transform clicks into qualified leads. Complete audit, implementation \u0026 optimization.\",\"hero_badge_beta\":\"Beta\",\"hero_badge_shopify\":\"Shopify Integration\",\"hero_title\":\"Post-click Optimization \u0026 Paid Conversion\",\"hero_subtitle\":\"We don't sell an AI tool. We sell measurable post-click business results: +15–30% conversion from your paid traffic, with automatic lead qualification.\",\"hero_trust\":\"✓ Audit included ✓ Guaranteed results ✓ Measurable ROI\",\"cta_primary\":\"Start for free\",\"hero_cta_see_action\":\"Start for free\",\"cta_contact\":\"Send my request\",\"header_problem\":\"The Problem\",\"header_solution\":\"Our Solution\",\"header_included\":\"Our Service\",\"header_results\":\"Results\",\"header_pricing\":\"Pricing\",\"cta_solve_problem\":\"Stop losing money\",\"cta_see_solution\":\"Discover the solution\",\"cta_get_started\":\"Launch the project\",\"cta_achieve_results\":\"Achieve these results\",\"cta_start_process\":\"Start now\",\"cta_choose_plan\":\"Choose this plan\",\"cta_need_custom\":\"Need a custom solution?\",\"problem_title\":\"The problem you know all too well\",\"problem_description\":\"Your landing pages convert poorly. Paid traffic is expensive. Visitors click but don't convert. Every unconverted click is money lost. Worse: you have no idea about your visitors' real intent.\",\"solution_title\":\"Our solution: turn every click into a conversation\",\"solution_before_title\":\"Before: static landing page\",\"solution_before_1\":\"2–3% conversion rate\",\"solution_before_2\":\"No lead qualification\",\"solution_before_3\":\"Passive and generic experience\",\"solution_after_title\":\"After: intelligent AI conversation\",\"solution_after_1\":\"15–30% conversion rate\",\"solution_after_2\":\"Automatic lead qualification\",\"solution_after_3\":\"Personalized real-time conversation\",\"included_title\":\"What our complete service includes\",\"included_subtitle\":\"A tailored approach to transform your paid traffic into qualified customers and measurable revenue\",\"included_audit_title\":\"In-depth post-click audit\",\"included_audit_description\":\"Complete analysis of your landing pages, paid traffic performance, current message mapping, and friction point identification\",\"included_intentions_title\":\"Intent mapping\",\"included_intentions_description\":\"Precise identification of intents by source, campaign, and keyword to create relevant conversational scenarios\",\"included_experience_title\":\"AI conversational experience\",\"included_experience_description\":\"Development and deployment of a post-click AI experience via Reponse.ai, tailored to your business and objectives\",\"included_qualification_title\":\"Intelligent dynamic qualification\",\"included_qualification_description\":\"Implementation of automatic lead and potential buyer qualification rules with personalized scoring\",\"included_tracking_title\":\"Weak signal monitoring\",\"included_tracking_description\":\"Continuous intent monitoring, conversation analysis, and optimization recommendations based on real data\",\"included_recommendations_title\":\"Strategic recommendations\",\"included_recommendations_description\":\"Continuous improvement suggestions based on conversation analysis and evolving market needs\",\"results_title\":\"Measurable and guaranteed results\",\"results_1_metric\":\"+15–30%\",\"results_1_desc\":\"Ad click conversion rate\",\"results_2_metric\":\"x3–5\",\"results_2_desc\":\"Lead qualification\",\"results_3_metric\":\"-40%\",\"results_3_desc\":\"Cost per acquisition\",\"process_title\":\"Our 4-step key process\",\"process_subtitle\":\"From strategic audit to production deployment, a proven methodology to guarantee your results\",\"process_1_title\":\"Custom audit \u0026 strategy\",\"process_1_desc\":\"In-depth traffic analysis, persona definition, intent mapping, and creation of conversational scenarios tailored to your business\",\"process_2_title\":\"Development \u0026 integration\",\"process_2_desc\":\"AI experience deployment, integration with your existing tools (CRM, analytics), and qualification flow configuration\",\"process_3_title\":\"Continuous optimization\",\"process_3_desc\":\"Conversation A/B testing, scenario refinement based on real performance, and iterative experience improvement\",\"process_4_title\":\"Strategic tracking \u0026 reporting\",\"process_4_desc\":\"Personalized dashboard with key KPIs, regular reporting, and strategic recommendations to maximize your ROI\",\"pricing_title\":\"Pricing tailored to your ambitions\",\"pricing_subtitle\":\"Choose the package that matches your objectives, traffic volume, and maturity level\",\"most_popular\":\"Most chosen\",\"deliverables\":\"Concrete deliverables\",\"level_1_badge\":\"Discovery Package\",\"level_1_objective\":\"Quick test with measurable impact\",\"level_1_deliverables\":\"Complete audit + 1 AI scenario + minimal implementation + 2 weeks optimization\",\"level_1_price\":\"€2,500 – €4,000\",\"level_2_badge\":\"Performance Package\",\"level_2_objective\":\"Complete optimization with advanced qualification\",\"level_2_deliverables\":\"All Discovery + multi-scenario deployment + 4 weeks intensive optimization + personalized dashboard\",\"level_2_price\":\"€5,000 – €8,000\",\"level_3_badge\":\"Excellence Package\",\"level_3_objective\":\"Digital transformation with complete integration\",\"level_3_deliverables\":\"All Performance + advanced CRM integration + intelligent scoring + commercial playbooks + priority support\",\"level_3_price\":\"€10,000 – €15,000\",\"included_also\":\"Also included\",\"included_support\":\"Dedicated technical support\",\"included_reporting\":\"Weekly reporting\",\"included_documentation\":\"Complete documentation\",\"custom_solution_title\":\"Need a custom solution?\",\"custom_solution_description\":\"Every project is unique. Let's discuss your specific objectives to create the perfect offer.\",\"success_title\":\"Request sent successfully!\",\"success_message\":\"We've received your request. Our team will contact you within 24h to discuss your project.\",\"error_title\":\"Sending error\",\"error_message\":\"An error occurred. Please try again or contact us directly at hello@reponse.ai\",\"contact_title\":\"Ready to transform your conversion?\",\"contact_subtitle\":\"Tell us about your challenges, objectives, and traffic. We'll propose the right solution with a concrete action plan.\",\"form_name\":\"Full name\",\"form_email\":\"Business email\",\"form_company\":\"Company\",\"form_package\":\"Interested package\",\"form_package_select\":\"Select an option\",\"form_package_custom\":\"Custom\",\"form_needs\":\"Describe your project\",\"form_needs_placeholder\":\"What are your conversion objectives? Monthly traffic volume? Main campaigns? Specific challenges?\",\"form_submit\":\"Send my request\"},\"demo\":{\"title\":\"Demo Experience\",\"ai_connected\":\"AI Connected\",\"access_denied\":\"Access Denied\",\"invalid_token\":\"The access token for this demo is invalid or expired.\",\"preview_not_available\":\"Preview not available\"},\"seo\":{\"home\":\"Home\",\"service_packages\":\"Service Packages\",\"discovery_package\":\"Discovery Package\",\"performance_package\":\"Performance Package\",\"excellence_package\":\"Excellence Package\"},\"legal\":{\"title\":\"Legal Notice\",\"meta_title\":\"Legal Notice | Reponse\",\"meta_description\":\"Legal and editorial information for Reponse.ai\",\"editor_title\":\"Site Editor\",\"editor_p1\":\"The Reponse.ai website is edited by \u003cstrong\u003eShmore\u003c/strong\u003e, a simplified joint-stock company (SAS) with a capital of €1,000, headquartered at \u003cstrong\u003e26 THUBERT, 44118 LA CHEVROLIERE\u003c/strong\u003e, registered with the Paris RCS under number \u003cstrong\u003e978 743 013\u003c/strong\u003e.\",\"director\":\"Publication Director:\",\"contact\":\"Contact:\",\"hosting_title\":\"Hosting\",\"hosting_p1\":\"The website is hosted by \u003cstrong\u003eNetlify\u003c/strong\u003e.\",\"hosting_address\":\"Address:\",\"ip_title\":\"Intellectual Property\",\"ip_p1\":\"\u003cstrong\u003eReponse ai\u003c/strong\u003e is a registered trademark. All elements constituting the site (text, graphics, software, photographs, images, logos, icons, etc.) are the exclusive property of Shmore or its partners.\",\"ip_p2\":\"Any reproduction, representation, modification, publication, or adaptation of all or part of the site's elements, regardless of the means or process used, is prohibited without prior written authorization.\",\"liability_title\":\"Liability\",\"liability_p1\":\"Reponse makes every effort to ensure that information is up to date. However, we cannot guarantee the accuracy or completeness of the information. We decline all responsibility for inaccuracies, omissions, or fraudulent modifications by third parties.\",\"liability_p2\":\"The website cannot be held responsible for direct or indirect damages resulting from access to the site or its use.\",\"law_title\":\"Governing Law\",\"law_p1\":\"These legal notices are governed by French law. Any dispute will be subject to the exclusive jurisdiction of the French courts.\"},\"status\":{\"title\":\"System Status | Reponse.ai Reliability\",\"description\":\"Track the real-time performance and availability of Reponse.ai services (API, Dashboard, Chat). Our commitment: total transparency on the reliability of our AI infrastructure.\",\"meta_title\":\"Service Status \u0026 Real-time Performance\",\"header_title\":\"System Status\",\"header_subtitle\":\"Live monitoring of our infrastructure performance.\",\"all_systems_operational\":\"All systems operational\",\"last_checked\":\"Last checked: a few moments ago\",\"uptime_guarantee\":\"Uptime guarantee 99.9%\",\"service_api\":\"Core API \u0026 AI Engine\",\"service_dashboard\":\"Customer Dashboard\",\"service_chat\":\"Chat Widget \u0026 SDK\",\"service_cdn\":\"Asset Delivery (CDN)\",\"uptime_label\":\"Uptime\",\"health_label\":\"Health\",\"days_ago\":\"{count} days ago\",\"today\":\"Today\",\"operational\":\"Operational\",\"degraded\":\"Degraded performance\",\"outage\":\"Service outage\",\"maintenance\":\"Maintenance in progress\",\"history_90_days\":\"90 Day History\",\"incident_history\":\"Incident History\",\"no_incidents\":\"No incidents reported during this period.\",\"back_to_home\":\"Back to Home\"},\"guides\":{\"title\":\"User Guides \u0026 Tutorials | Master Reponse.ai Step-by-Step\",\"description\":\"Learn how to get the most out of Reponse.ai with our detailed guides. From setting up your first AI agent to advanced optimization of your advertising campaigns, we support you through every stage of your growth.\",\"empty\":\"No guides published yet.\",\"backToList\":\"Back to Guides\"},\"topics\":{\"title\":\"Topics \u0026 Themes | SEO, Ad Clicks, and Conversion Growth Strategy\",\"description\":\"Explore our content organized by theme. Whether you're interested in turning ad clicks into sales, qualified lead generation, or conversational AI, quickly find the resources that match your business goals.\",\"backToList\":\"Back to Topics\"},\"refund\":{\"title\":\"Refund Policy\",\"meta_title\":\"Refund Policy | Reponse\",\"meta_description\":\"Our refund policy and terms for Reponse.ai subscriptions via Paddle.\",\"breadcrumb\":\"Refund Policy\"},\"preview\":{\"test_email_sent\":\"Test email sent!\",\"send_test\":\"Send test\"},\"marketing\":{\"customer\":\"Customer\",\"anonymous_visitor\":\"Anonymous visitor\",\"status\":\"Status\",\"status_open\":\"In progress\",\"status_abandoned\":\"Abandoned\",\"status_recovered\":\"Recovered\",\"status_expired\":\"Expired\",\"value\":\"Value\",\"updated_at\":\"Updated\",\"hub_title\":\"Marketing Hub \u0026 Automations\",\"sync\":\"Sync\",\"cart_recovery\":\"Cart recovery\",\"cart_recovery_description\":\"Track the AI Agent's effectiveness on converting your orphan carts.\",\"recovered_revenue\":\"Recovered Revenue\",\"generated_by_agent\":\"Automatically generated by the Agent\",\"saved_carts\":\"Saved carts\",\"qualified_abandonments\":\"Out of {count} qualified abandonments\",\"lost_revenue\":\"Lost revenue\",\"awaiting_followup\":\"Awaiting follow-up\",\"no_carts\":\"No active carts\",\"no_carts_description\":\"Install the SDK on your store to surface carts in real time.\",\"post_purchase_sequences\":\"Post-Purchase Sequences (Coming Soon)\",\"post_purchase_description\":\"Configure your automated cross-sell and upsell flows.\",\"module_under_construction\":\"Module under construction\"},\"dashboard\":{\"invalid_form\":\"Please fill in all required fields with valid values.\",\"title\":\"Dashboard\",\"untitled_product\":\"Untitled product\",\"integration_snippet\":\"Integration Snippet\",\"integration_title\":\"Widget Integration\",\"integration_desc\":\"Copy this code and paste it into the 'head' tag of your website to install Reponse globally on all pages.\",\"integration_smart_defaults\":\"🪄 Magic check: The widget is automatically hidden on sensitive pages (checkout, admin...).\",\"new_conversation\":\"New Assistant\",\"showcase_button\":\"Live Preview\",\"email_preview\":\"Email Preview\",\"tab_products\":\"Products\",\"tab_conversations\":\"Assistants\",\"tab_leads\":\"Conversations\",\"tab_customers\":\"Customers\",\"tab_orders\":\"Orders\",\"tab_discounts\":\"Discounts\",\"tab_analytics\":\"Analytics\",\"table_traffic\":\"Traffic\",\"table_conversion\":\"Conv.\",\"table_last_activity\":\"Last Activity\",\"table_views\":\"views\",\"table_started\":\"started\",\"table_leads\":\"leads\",\"table_rate\":\"rate\",\"table_lead\":\"Lead\",\"table_created\":\"Created\",\"table_source\":\"Source\",\"table_progression\":\"Journey\",\"filter_all_conversations\":\"All Assistants\",\"view_analytics\":\"View Analytics\",\"metric_leads\":\"Leads\",\"metric_ctr\":\"Visit Rate\",\"total_leads\":\"Total Leads\",\"total_visits\":\"Product Visits\",\"analytics_chart_title\":\"Performance Evolution\",\"analytics_chart_desc\":\"Analyze the evolution of your key metrics over time.\",\"metric_engagement_rate\":\"Engagement Rate\",\"metric_lead_rate\":\"Lead Rate\",\"metric_avg_time\":\"Avg. Time\",\"metric_messages\":\"Messages\",\"metric_views_tooltip\":\"Total times the widget was displayed on your site.\",\"metric_started_tooltip\":\"Conversations where the user sent at least one message.\",\"metric_engagement_rate_tooltip\":\"Percentage of visitors who started a conversation.\\nFormula: (Started / Views)\",\"metric_messages_tooltip\":\"Total volume of messages exchanged between visitors and the AI.\",\"metric_leads_tooltip\":\"Contacts captured (email or phone) during conversations.\",\"metric_lead_rate_tooltip\":\"Percentage of started conversations that resulted in a contact.\\nFormula: (Leads / Started)\",\"metric_ctr_tooltip\":\"Proportion of sessions resulting in a product visit.\\nCalculation: (Visits / Started)\",\"metric_avg_time_tooltip\":\"Average time elapsed between the first message and lead capture.\",\"tooltip_total_sales\":\"Revenue generated through AI interactions.\",\"tooltip_traffic_visits\":\"Total number of views of the Reponse interface.\",\"tooltip_conversion_rate\":\"Share of views that resulted in an order.\",\"tooltip_total_orders\":\"Total number of completed orders.\",\"tooltip_aov\":\"Average order value on Reponse orders.\",\"tooltip_active_sessions\":\"Number of sessions where AI was engaged.\",\"tooltip_metric_messages\":\"Total number of messages sent and received.\",\"tooltip_metric_leads\":\"Contacts (email/SMS) captured via AI.\",\"tooltip_metric_ctr\":\"Share of sessions that resulted in a product click.\",\"all_campaigns\":\"All Campaigns\",\"timeframe\":{\"label\":\"Timeframe\",\"today\":\"Today\",\"yesterday\":\"Yesterday\",\"last_7_days\":\"Last 7 days\",\"last_30_days\":\"Last 30 days\",\"last_90_days\":\"Last 90 days\",\"month_to_date\":\"Month to date\",\"last_month\":\"Last month\",\"all_time\":\"All time\",\"custom\":\"Custom\"},\"incentives_title\":\"Commercial Offers\",\"incentives_form\":{\"enable_discount\":\"Enable Discount\",\"type\":\"Type\",\"type_percentage\":\"Percentage (%)\",\"type_fixed\":\"Fixed Amount (€)\",\"value\":\"Value\",\"code_optional\":\"Promo Code (Optional)\",\"conditions\":\"Usage Conditions\",\"for_ai\":\"For AI\",\"conditions_placeholder\":\"e.g. New customers only, minimum $50 purchase...\",\"conditions_hint\":\"The AI will use these conditions to know when to propose this offer.\"},\"discount_codes\":{\"title\":\"Discount Codes\",\"description\":\"Manage your discount codes and track their usage\",\"new_code\":\"New Code\",\"create_soon\":\"Code creation coming soon\",\"list_title\":\"Code List\",\"no_codes_title\":\"No discount codes yet\",\"no_codes_description\":\"Create your first discount code to make it available in conversations\",\"create_first_code\":\"Create Discount Code\",\"edit_code\":\"Edit Code\",\"create_code\":\"New code\",\"edit_description\":\"Edit an existing discount code\",\"create_description\":\"Create a new discount code\",\"table_code\":\"Code\",\"table_name\":\"Name\",\"table_value\":\"Value\",\"table_end_at\":\"End Date\",\"table_conditions\":\"Conditions\",\"table_usage\":\"Usage\",\"table_status\":\"Status\",\"value\":\"Value\",\"uses\":\"Uses\",\"min_amount\":\"Min. amount\",\"created\":\"Created\",\"starts\":\"Starts\",\"expires\":\"Expires\",\"copy_code\":\"Copy code\",\"code_copied\":\"Code copied\",\"copy_error\":\"Copy error\",\"edit\":\"Edit\",\"activate\":\"Activate\",\"deactivate\":\"Deactivate\",\"delete\":\"Delete\",\"delete_confirm\":\"Are you sure you want to delete the code \\\"{code}\\\"?\",\"code_activated\":\"Code activated\",\"code_deactivated\":\"Code deactivated\",\"code_deleted\":\"Code deleted\",\"code_created\":\"Code created successfully\",\"code_updated\":\"Code updated successfully\",\"code_saved\":\"Code saved\",\"save_error\":\"Save error\",\"toggle_soon\":\"Toggle coming soon\",\"toggle_error\":\"Error toggling code status\",\"delete_error\":\"Error deleting code\",\"status_active\":\"Active\",\"status_inactive\":\"Inactive\",\"status_expired\":\"Expired\",\"status_not_started\":\"Not started\",\"status_limit_reached\":\"Limit reached\",\"validation\":{\"code_required\":\"Code is required\",\"code_exists\":\"This discount code already exists\"},\"form\":{\"code\":\"Code\",\"code_placeholder\":\"PROMO2024\",\"code_hint\":\"Will be automatically converted to uppercase\",\"type\":\"Discount Type\",\"type_percentage\":\"Percentage (%)\",\"type_fixed\":\"Fixed Amount (€)\",\"discount\":\"Discount\",\"discount_hint\":\"Percentage (0-100%)\",\"fixed_hint\":\"Fixed amount in euros\",\"starts_at\":\"Start Date\",\"expires_at\":\"End Date\",\"expires_at_hint\":\"Optional - If empty, no expiration\",\"conditions\":\"Conditions\",\"conditions_placeholder\":\"e.g. Min 50€ purchase\",\"conditions_hint\":\"Display text visible to customer\",\"type_free_shipping\":\"Free shipping\",\"type_bxgy\":\"Buy X get Y\",\"discount_class\":\"Discount class\",\"discount_class_code\":\"Promo code\",\"discount_class_code_desc\":\"Customer enters a code\",\"discount_class_automatic\":\"Automatic\",\"discount_class_automatic_desc\":\"Applied automatically\",\"bxgy_section\":\"Buy X Get Y\",\"bxgy_buy_product\":\"Product to buy\",\"bxgy_buy_quantity\":\"Quantity to buy\",\"bxgy_get_product\":\"Free product\",\"bxgy_get_quantity\":\"Free quantity\",\"bxgy_select_product\":\"Select a product\",\"conditions_section\":\"Usage conditions\",\"min_order_amount\":\"Minimum order amount (€)\",\"min_quantity\":\"Minimum item quantity\",\"limits_section\":\"Usage limits\",\"usage_limit_total\":\"Total usage limit\",\"usage_limit_per_customer\":\"Uses per customer\",\"unlimited_placeholder\":\"Unlimited\",\"eligibility_section\":\"Customer eligibility\",\"customer_eligibility_all\":\"All customers\",\"customer_eligibility_segments\":\"Specific segments\",\"customer_eligibility_specific\":\"Specific customers\",\"customer_segment_ids\":\"Segment IDs (comma-separated)\",\"customer_segment_ids_placeholder\":\"segment-1, segment-2\",\"validation\":{\"code_required\":\"Code is required\",\"code_exists\":\"This discount code already exists\",\"discount_required\":\"Discount must be greater than 0\",\"discount_max\":\"Discount cannot exceed 100%\"}}},\"empty_conversations_title\":\"No assistants yet\",\"empty_conversations_desc\":\"Create your first AI assistant to start capturing leads.\",\"create_conversation\":\"Create Assistant\",\"leads_count\":\"{count} Leads\",\"export_csv\":\"Export CSV\",\"table_email\":\"Email\",\"table_campaign\":\"Campaign\",\"table_score\":\"Score\",\"score_low\":\"Low\",\"score_medium\":\"Medium\",\"score_high\":\"High\",\"table_status\":\"Status\",\"ai_status\":\"AI Status\",\"product_updated\":\"Product updated\",\"table_time\":\"Time\",\"avg_time_to_lead\":\"Average Time to Lead\",\"price\":\"Price\",\"id\":\"ID\",\"category\":\"Category\",\"synced_shopify\":\"Product Catalog\",\"synced_shopify_official\":\"Automatically synced with Shopify\",\"synced_shopify_public\":\"Synced via URL\",\"sync_now\":\"Refresh Catalog\",\"syncing\":\"Syncing...\",\"sync_success\":\"Catalog refreshed! {count} products updated.\",\"sync_error\":\"Refresh failed.\",\"sync_product_button\":\"Sync Shopify\",\"sync_product_button_title\":\"Re-sync this product's data from Shopify (variants, inventory, description)\",\"sync_product_success\":\"Product synced successfully.\",\"sync_product_not_found\":\"Product not found on Shopify — it may have been deleted or unpublished.\",\"sync_phase_fetching\":\"Connecting to Shopify...\",\"sync_phase_currency\":\"Found {count} products. Detecting currency...\",\"sync_phase_analyzing\":\"Analyzing product changes...\",\"sync_phase_ai_discovery\":\"AI discovery for {count} items...\",\"sync_phase_repairing\":\"Enriching {count} product descriptions...\",\"sync_phase_persisting\":\"Saving products...\",\"sync_phase_collections\":\"Syncing collections...\",\"sync_phase_rag\":\"Indexing {count} products...\",\"sync_skip_non_ecommerce\":\"No Shopify catalog detected at this URL.\",\"sync_skip_no_products\":\"No products found at this URL.\",\"inherit\":\"Inherit\",\"low_stock_threshold\":\"Low-stock threshold\",\"low_stock_threshold_hint\":\"Overrides the product/workspace threshold for this variant. Empty inherits.\",\"low_stock_threshold_product_hint\":\"Overrides the workspace default for this product. Empty inherits.\",\"low_stock_threshold_updated\":\"Low-stock threshold updated\",\"low_stock_threshold_update_error\":\"Failed to update low-stock threshold\",\"table_product\":\"Product\",\"table_collection\":\"Collection\",\"table_inventory\":\"Inventory\",\"table_variants\":\"Variants\",\"table_actions\":\"Actions\",\"status_active\":\"Active\",\"status_draft\":\"Draft\",\"copy_link\":\"Copy Link\",\"open_conversation\":\"Open Conversation\",\"edit_name\":\"Edit Name\",\"duplicate\":\"Duplicate\",\"duplicate_success\":\"Assistant duplicated\",\"delete\":\"Delete\",\"export_options\":\"Export Options\",\"time_period\":\"Time Period\",\"last_7_days\":\"Last 7 Days\",\"last_30_days\":\"Last 30 Days\",\"all_time\":\"All Time\",\"campaign_origin\":\"Campaign Origin\",\"download_csv\":\"Download CSV\",\"delete_confirmation\":\"This action cannot be undone.\",\"unknown_list\":\"Unknown List\",\"in_stock\":\"in stock\",\"no_leads_yet\":\"No leads captured yet.\",\"no_products_yet\":\"No products found yet.\",\"lead_badge_new\":\"New Lead\",\"lead_badge_qualified\":\"Qualified\",\"lead_drawer_qualification_title\":\"Qualification\",\"lead_drawer_answers_json\":\"Answers (JSON)\",\"lead_drawer_no_qualification\":\"No qualification data.\",\"lead_drawer_klaviyo_export_preview\":\"Klaviyo export (preview)\",\"lead_drawer_no_exportable_fields\":\"No exportable fields (missing qualification or disabled).\",\"lead_drawer_safe_prefix\":\"Safe:\",\"lead_drawer_safe_summary\":\"summary\",\"lead_drawer_safe_json\":\"json\",\"lead_drawer_whitelist\":\"Whitelist\",\"lead_drawer_title_fallback\":\"Lead\",\"lead_drawer_title_buyer\":\"Buyer\",\"lead_drawer_lead_title\":\"Lead\",\"lead_drawer_captured\":\"Captured\",\"lead_drawer_status\":\"Status\",\"lead_drawer_incentive\":\"Incentive\",\"sync_data\":\"Sync Data\",\"view_on_store\":\"View on Store\",\"sales_channel\":\"Sales Channel\",\"sales_channel_desc\":\"This product is eligible for the Reponse sales channel. It will be synchronized automatically.\",\"product_context\":\"Context\",\"enrich_data\":\"Enrich your product data for more accurate recommendations.\",\"generate_ai\":\"Generate with AI\",\"generating\":\"Generating...\",\"description\":\"Description\",\"no_description\":\"No description found\",\"missing_description_desc\":\"The description is missing from Shopify. Generate one to help the AI understand this product.\",\"product_tags\":\"Product Tags\",\"no_tags\":\"No tags found\",\"metafields\":\"Metafields\",\"metafields_add\":\"Add\",\"metafields_empty\":\"No metafields yet. Add custom attributes to enrich your product data.\",\"metafields_count\":\"{count}/{max} metafields\",\"metafields_delete_confirm\":\"Delete this metafield?\",\"metafields_saved\":\"Metafield saved\",\"metafields_deleted\":\"Metafield deleted\",\"metafields_synced\":\"Synced from Shopify\",\"metafields_readonly\":\"Read-only\",\"metafields_invalid_value\":\"Invalid value for this type\",\"metafields_key_placeholder\":\"key_name\",\"metafields_value_placeholder\":\"Value\",\"metafields_limit_reached\":\"Limit reached ({max})\",\"no_category\":\"No category set\",\"no_collection\":\"No collection set\",\"variants_count\":\"{count} Variants\",\"go_back\":\"Go back to dashboard\",\"product_not_found\":\"Product not found\",\"loading_product\":\"Loading product...\",\"chat_config_title\":\"Chat Configuration (AI Generated)\",\"opening_message\":\"Opening Message\",\"suggested_replies\":\"Suggested Replies\",\"no_chat_config\":\"No chat configuration generated yet.\",\"no_opening_message\":\"No opening message.\",\"no_chips\":\"No chips generated.\",\"regenerate\":\"Regenerate\",\"regenerate_confirm\":\"Regenerating will overwrite existing content. Continue?\",\"ai_success\":\"Product enriched with AI!\",\"ai_suggest\":\"Suggest with AI\",\"ai_error\":\"Failed to generate context.\",\"marketing_settings_save_success\":\"Marketing settings saved!\",\"marketing_settings_save_error\":\"Failed to save marketing settings\",\"url_synced_to_resources\":\"Product URL added to knowledge sources.\",\"report_title\":\"Ingestion Report\",\"report_source\":\"Source\",\"report_status\":\"Status\",\"report_processed_at\":\"Processed At\",\"report_success\":\"Success\",\"report_content_analysis\":\"AI Content Analysis\",\"report_full_content\":\"Extracted Content\",\"report_key_facts\":\"Key Facts\",\"report_missing_refresh\":\"Report not found. Please refresh the source.\",\"sources_saved_error\":\"Failed to save sources.\",\"sources_saved_success\":\"Sources updated successfully.\",\"test_train_button\":\"Test \u0026 Train\",\"preview_title\":\"Live Chat Preview\",\"preview_subtitle\":\"Test your bot's behavior and knowledge.\",\"training_mode\":\"Training Mode\",\"fomo_title\":\"Stock \u0026 Scarcity (FOMO)\",\"fomo_workspace_override_active\":\"Shop scarcity override is active. Chat follows shop settings; product settings are overridden.\",\"fomo_enabled\":\"Enable scarcity\",\"fomo_enabled_on\":\"Scarcity enabled\",\"fomo_type\":\"Mode\",\"fomo_type_real\":\"Real stock\",\"fomo_type_artificial\":\"Artificial stock\",\"fomo_threshold\":\"Threshold\",\"fomo_message_template\":\"Message template\",\"fomo_message_template_placeholder\":\"I recommend acting fast, we only have {stock} units left.\",\"fomo_message_template_hint\":\"Use {stock} as a placeholder for the stock number.\",\"variants_title\":\"Product Variants\",\"no_variants\":\"No variants found\",\"loading_variants\":\"Loading variants...\",\"available\":\"Available\",\"unavailable\":\"Unavailable\",\"shopify_id\":\"Shopify ID\",\"all_variants_loaded\":\"All variants loaded\",\"training\":{\"knowledge_base\":\"Knowledge Base\",\"live_sync\":\"LiveSync\",\"learned_just_now\":\"Learned Just Now\",\"fact_learned_desc\":\"I noted that \u003cstrong\u003e{topic}\u003c/strong\u003e is \u003cstrong\u003e{value}\u003c/strong\u003e.\",\"pending\":\"Pending\",\"active\":\"Active\",\"rejected\":\"Rejected\",\"delete_confirm\":\"Are you sure? The AI will instantly forget this information.\",\"fact_deleted\":\"Fact deleted\",\"fact_updated\":\"Fact updated\",\"fact_marked_active\":\"Fact approved\",\"fact_marked_rejected\":\"Fact rejected\",\"no_facts\":\"No knowledge recorded yet.\",\"kb_updated\":\"Knowledge base updated\",\"update_error\":\"Failed to update\"},\"ecommerce_performance\":\"E-commerce Performance\",\"total_sales\":\"Total Sales\",\"traffic_visits\":\"Traffic\",\"conversion_rate\":\"Conversion Rate\",\"total_orders\":\"Total Orders\",\"avg_order_value\":\"Avg Order Value\",\"agentic_performance\":\"Agentic Performance\",\"active_sessions\":\"Active Sessions\",\"messages_per_session\":\"Messages per Session\",\"leads_optin\":\"Leads (Opt-in)\",\"ctr\":\"Click-through Rate\",\"conversion_funnel\":\"Conversion Funnel\",\"purchase_flow_dropoff\":\"Purchase flow and drop-off\",\"product_views\":\"Product Views\",\"adds_to_cart\":\"Adds to Cart\",\"completed_orders\":\"Completed Orders\",\"top_products\":\"Top Products\",\"performance_by_item\":\"Performance by item\",\"view_all\":\"View all\",\"no_product_data\":\"No product data\",\"generated_by_reponse\":\"Generated by Reponse.ai\",\"traffic_sources\":\"Traffic Sources\",\"sales_attribution\":\"Sales attribution\",\"no_source_data\":\"No source data\",\"agent_quality\":\"Agent Quality\",\"conversation_metrics\":\"Conversation metrics\",\"auto_resolution\":\"Auto-Resolution\",\"recovered_carts\":\"Recovered Carts\",\"without_human_touch\":\"Without human touch\",\"sales_saved_by_ai\":\"Sales saved by AI\",\"support_section_title\":\"Support\",\"kpi_open_tickets\":\"Open tickets\",\"kpi_resolution_time\":\"Resolution time\",\"kpi_ai_auto_resolution\":\"AI auto-resolution\",\"kpi_csat\":\"Customer satisfaction\",\"product_sales_empty_state\":\"Your product sales will appear here once connected.\",\"source_direct_organic\":\"Direct / Organic\",\"source_meta_ads\":\"Meta Ads (Facebook/IG)\",\"source_google_ads\":\"Google Ads / Search\",\"source_others\":\"Others / Unassigned\",\"analytics_simplified_view\":\"Simplified view\",\"analytics_full_view\":\"Full view\",\"analytics_gross_margin\":\"Gross Margin\",\"analytics_gross_margin_tooltip\":\"Average gross margin for the period\",\"analytics_margin_good\":\"Good\",\"analytics_margin_average\":\"Average\",\"analytics_margin_low\":\"Low\",\"analytics_profit\":\"Profit\",\"analytics_profit_tooltip\":\"Gross profit = Revenue − cost of goods\",\"analytics_cart_recovery\":\"Cart Recovery\",\"analytics_recovered_revenue\":\"Recovered Revenue\",\"analytics_recovered_revenue_tooltip\":\"Automatically generated by the Agent\",\"analytics_saved_carts\":\"Saved Carts\",\"analytics_saved_carts_tooltip\":\"Out of {total} qualified abandonments\",\"analytics_lost_revenue\":\"Lost Revenue\",\"analytics_lost_revenue_tooltip\":\"Pending recovery\",\"analytics_promotions\":\"Promotions\",\"analytics_promo_active_codes\":\"Active Codes\",\"analytics_promo_active_codes_tooltip\":\"Number of active discount codes out of total created\",\"analytics_promo_usages\":\"Usages\",\"analytics_promo_usages_tooltip\":\"Total discount code usages over the period\",\"analytics_promo_total_savings\":\"Total Savings\",\"analytics_promo_total_savings_tooltip\":\"Total discount amount over the period\",\"analytics_promo_avg_discount\":\"Avg. Discount\",\"analytics_promo_avg_discount_tooltip\":\"Average discount per code use\",\"analytics_promo_top_codes\":\"Top codes\",\"analytics_promo_usages_label\":\"uses\",\"analytics_auto_exchange\":\"Auto-Exchange\",\"analytics_auto_exchange_count\":\"Auto-approved exchanges\",\"analytics_auto_exchange_count_tooltip\":\"Exchanges automatically approved by AI because the item was below the threshold.\",\"analytics_auto_exchange_savings\":\"Return costs avoided\",\"analytics_auto_exchange_savings_tooltip\":\"Savings from avoiding reverse logistics (return label + processing + restocking).\",\"analytics_auto_exchange_rate\":\"Auto-approval rate\",\"analytics_auto_exchange_rate_tooltip\":\"Percentage of exchanges handled automatically without human intervention.\",\"analytics_reviews_title\":\"Customer Reviews\",\"analytics_reviews_avg_rating\":\"Average Rating\",\"analytics_reviews_avg_rating_tooltip\":\"Average rating of published reviews\",\"analytics_reviews_total\":\"Total Reviews\",\"analytics_reviews_total_tooltip\":\"Published / total received\",\"analytics_reviews_response_rate\":\"Response Rate\",\"analytics_reviews_response_rate_tooltip\":\"Percentage of published reviews that received a response\",\"analytics_reviews_pending\":\"Pending Moderation\",\"analytics_reviews_pending_tooltip\":\"Flagged reviews pending moderation\",\"analytics_reviews_rating_dist\":\"Rating Distribution\",\"analytics_reviews_volume\":\"Review Volume\",\"analytics_reviews_empty_title\":\"No reviews yet\",\"analytics_reviews_empty_desc\":\"Stats will appear here once you receive your first customer review.\",\"analytics_email_empty_title\":\"No emails sent\",\"analytics_email_empty_desc\":\"Stats will appear here after your first transactional email is sent.\",\"saved\":\"Saved\",\"product_deleted\":\"Product deleted\",\"fetching_supplier_catalog\":\"Fetching supplier catalog...\",\"manage_inventory_details\":\"Manage inventory in product details\",\"manage_inventory_location\":\"Manage inventory per location\",\"inventory_per_location\":\"Inventory per location\",\"no_locations_configured\":\"No locations configured.\",\"status_archived\":\"Archived\",\"filter\":\"Filter\",\"filter_by_status\":\"Filter by status\",\"filter_by_stock\":\"Filter by stock\",\"filter_by_type\":\"Filter by type\",\"filter_by_tag\":\"Filter by tag\",\"filter_by_collection\":\"Filter by collection\",\"filter_by_category\":\"Filter by category\",\"clear_filters\":\"Clear filters\",\"search_tags\":\"Search…\",\"manage_tags\":\"Manage Tags\",\"manage_categories\":\"Manage Categories\",\"manage_collections\":\"Manage Collections\",\"create_collection_placeholder\":\"New collection name…\",\"search_collections\":\"Search collections…\",\"no_collections_yet\":\"No collections yet\",\"no_collections_match\":\"No collections match your search\",\"collections_will_appear\":\"Create a collection above to get started\",\"try_different_search\":\"Try a different search term\",\"delete_collection_title\":\"Delete collection\",\"delete_collection_desc\":\"This will remove the collection and unlink all its products. This action cannot be undone.\",\"bulk_assign_category\":\"Assign category\",\"bulk_add_to_collection\":\"Add to collection\",\"bulk_add_tag\":\"Add tag\",\"category_updated\":\"Category updated\",\"collection_updated\":\"Collection updated\",\"tag_added\":\"Tag added\",\"no_categories_yet\":\"No categories\",\"sync_supplier\":\"Sync Supplier\",\"create_pack\":\"Create pack\",\"add_product\":\"Add product\",\"variant\":\"Variant\",\"subscription\":\"Subscription\",\"subscription_updated\":\"Subscription updated\",\"interval_updated\":\"Interval updated\",\"interval_day\":\"Day\",\"interval_week\":\"Week\",\"interval_month\":\"Month\",\"interval_year\":\"Year\",\"delete_product_title\":\"Delete this product?\",\"delete_product_confirm\":\"Are you sure you want to delete this product? If it's a synced product (Shopify, etc.), it will just be archived for AI and hidden. This action won't delete the product on your actual store.\",\"product_published\":\"Product published!\",\"publish\":\"Publish\",\"click_to_edit\":\"Click to edit\",\"new_product\":\"New product\",\"options_variants\":\"Options \u0026 Variants\",\"manage_sizes_colors\":\"Manage sizes, colors and inventory\",\"managed_by_shopify\":\"Managed by Shopify\",\"matrix_generator\":\"Matrix Generator\",\"generate_matrix\":\"Generate matrix\",\"matrix_generator_desc\":\"Easily generate all option combinations (e.g. Size, Color) for your variants.\",\"edit\":\"Edit\",\"describe_product_placeholder\":\"Describe your product here...\",\"html_tip\":\"Tip: You can use basic HTML ('\u003cp\u003e', '\u003cstrong\u003e', '\u003cul\u003e') for structure.\",\"add_description\":\"Add description\",\"description_saved\":\"Description saved!\",\"organization_visibility\":\"Informations\",\"collection_name_placeholder\":\"Name...\",\"fomo_override_tooltip\":\"A scarcity setting is active at workspace level. Product setting is overridden.\",\"fomo_artificial_tooltip\":\"The scarcity message is generated automatically by the AI during the conversation (with a dynamic number ≤ 10).\",\"fomo_urgency_label\":\"AI Urgency message\",\"fomo_urgency_placeholder\":\"Stock is almost gone...\",\"bundles\":\"Bundles\",\"view_bundle\":\"View bundle\",\"in_stock_filter\":\"In stock\",\"out_of_stock\":\"Out of stock\",\"unknown_product\":\"Unknown product\",\"variants_count_label\":\"variants\",\"no_variants_empty\":\"No variants\",\"no_variants_empty_desc\":\"No variants found for these criteria.\",\"sku_updated\":\"SKU updated\",\"price_updated\":\"Price updated\",\"stock_updated\":\"Stock updated\",\"messages_count\":\"Messages\",\"first_message\":\"First message\",\"macros\":\"Macros\",\"macros_search\":\"Search macros…\",\"macros_empty\":\"No macros configured\",\"macros_page_title\":\"Canned responses\",\"macros_page_desc\":\"Create reusable response templates to save time.\",\"macro_title\":\"Title\",\"macro_body\":\"Content\",\"macro_shortcut\":\"Shortcut\",\"macro_category\":\"Category\",\"macro_created\":\"Macro created\",\"macro_updated\":\"Macro updated\",\"macro_deleted\":\"Macro deleted\",\"create_macro\":\"New macro\",\"csat_question\":\"How was your experience?\",\"csat_thanks\":\"Thank you for your feedback!\",\"csat_already_responded\":\"You have already responded.\",\"sla_breached\":\"SLA breached\",\"ticket_tags\":\"Tags\",\"create_collection\":\"Create collection\",\"collection_created\":\"Collection created\",\"no_collections\":\"No collections\",\"no_collections_desc\":\"Create your first collection to organize products.\",\"title_column\":\"Title\",\"products_column\":\"Products\",\"products_count\":\"products\",\"status_column\":\"Status\",\"change_status\":\"Change status\",\"status_active_label\":\"Active\",\"status_draft_label\":\"Draft\",\"status_updated\":\"Status updated\",\"bulk_delete_products_title\":\"Are you sure you want to delete these products?\",\"bulk_delete_products_desc\":\"This action cannot be undone. {count} product(s) will be deleted.\",\"bulk_delete_variants_title\":\"Are you sure you want to delete these variants?\",\"bulk_delete_variants_desc\":\"This action cannot be undone. {count} variant(s) will be deleted.\",\"bulk_delete_collections_title\":\"Are you sure you want to delete these collections?\",\"bulk_delete_collections_desc\":\"This action cannot be undone. {count} collection(s) will be deleted.\",\"variants_deleted\":\"{count} variants deleted\",\"collections_deleted\":\"{count} collections deleted\",\"products_deleted\":\"{count} products deleted\",\"delete_error\":\"Delete error\",\"edit_price\":\"Edit price\",\"edit_stock\":\"Edit stock\",\"variant_image_title\":\"Variant image\",\"variant_image_select\":\"Select an image\",\"variant_image_none\":\"No image\",\"variant_image_clear\":\"Clear\",\"variant_image_add_first\":\"Add images to your product first.\",\"variant_image_updated\":\"Variant image updated\",\"variant_image_error\":\"Update failed\",\"variant_default\":\"Main variant\",\"variant_title_updated\":\"Variant name updated\",\"knowledge_title\":\"Knowledge Base\",\"knowledge_subtitle\":\"Documents and URLs to enrich AI context\",\"doc_section_title\":\"Documents\",\"doc_drop_title\":\"Drop a file here or click to browse\",\"doc_drop_subtitle\":\"PDF, TXT, MD — 10 MB max\",\"doc_uploaded\":\"{name} uploaded successfully\",\"doc_upload_error\":\"Upload failed\",\"doc_deleted\":\"Document deleted\",\"doc_delete_error\":\"Failed to delete document\",\"doc_status_pending\":\"Pending\",\"doc_status_processing\":\"Extracting...\",\"doc_status_ready\":\"Ready\",\"doc_status_error\":\"Error\",\"url_section_title\":\"External URLs\",\"category_placeholder\":\"E.g. Electronics \u003e Networking\",\"add_tag_placeholder\":\"Add a tag...\",\"vendor\":\"Brand / Vendor\",\"vendor_placeholder\":\"Vendor name\",\"vendor_updated\":\"Vendor updated\",\"no_vendor\":\"No vendor\",\"auto_classify_button\":\"AI Classify\",\"auto_classify_tooltip\":\"Auto-generate category and tags using AI\",\"auto_classify_success\":\"Category and tags generated by AI\",\"auto_classify_error\":\"Classification failed\",\"seo_title_label\":\"SEO\",\"seo_subtitle\":\"Search engine optimization for this product\",\"seo_meta_title\":\"Meta title\",\"seo_meta_title_placeholder\":\"Enter SEO title\",\"seo_meta_description\":\"Meta description\",\"seo_meta_description_placeholder\":\"Enter SEO description\",\"seo_helper_text\":\"These fields are used by search engines. Leave blank to use the product title and description.\",\"seo_save_success\":\"SEO fields saved\",\"seo_save_error\":\"Error saving SEO fields\",\"cost_price\":\"Cost\",\"cost_updated\":\"Cost updated\",\"margin\":\"Margin\",\"margin_tooltip\":\"Margin = (Price - Cost) / Price × 100\",\"confirm_delete_title\":\"Confirm deletion\",\"confirm_delete_cancel\":\"Cancel\",\"confirm_delete_action\":\"Delete\",\"confirm_delete_contacts\":\"Are you sure you want to delete these contacts?\",\"confirm_delete_orders\":\"Are you sure you want to delete these orders?\",\"payment_status_updated\":\"Payment status updated\",\"fulfillment_status_updated\":\"Fulfillment status updated\",\"orders_deleted\":\"Orders deleted\",\"new_ticket_received\":\"New ticket received\",\"new_note_received\":\"New reply on ticket\",\"loyalty_title\":\"Loyalty\",\"loyalty_description\":\"Loyalty program and referral\",\"loyalty_program\":\"Program\",\"loyalty_tiers_rules\":\"Tiers \u0026 Rules\",\"loyalty_referral\":\"Referral\",\"loyalty_points_name\":\"Points name\",\"loyalty_ratio\":\"Point value\",\"loyalty_expiry\":\"Expiration\",\"loyalty_welcome_bonus\":\"Welcome bonus\",\"loyalty_activate\":\"Activate program\",\"loyalty_tier_classique\":\"Classic\",\"loyalty_tier_premium\":\"Premium\",\"loyalty_tier_vip\":\"VIP\",\"loyalty_earn_order\":\"Purchase\",\"loyalty_earn_signup\":\"Sign up\",\"loyalty_earn_review\":\"Product review\",\"loyalty_earn_birthday\":\"Birthday\",\"loyalty_earn_referral\":\"Referral\",\"loyalty_earn_social\":\"Social share\",\"loyalty_referral_give\":\"Your friend gets\",\"loyalty_referral_get\":\"You earn\",\"loyalty_kpi_points_issued\":\"Points issued\",\"loyalty_kpi_redemption_rate\":\"Redemption rate\",\"loyalty_kpi_referrals\":\"Referrals converted\",\"loyalty_kpi_revenue\":\"Program revenue\",\"loyalty_notifications\":\"Notifications\",\"loyalty_channel_email\":\"Email\",\"loyalty_channel_inapp\":\"In-app\",\"loyalty_channel_chat\":\"Chat\",\"loyalty_never\":\"Never\",\"loyalty_3months\":\"3 months\",\"loyalty_6months\":\"6 months\",\"loyalty_12months\":\"12 months\",\"loyalty_save\":\"Save\",\"loyalty_leaderboard\":\"Top customers\",\"loyalty_modify\":\"Edit\",\"loyalty_add_tier\":\"Add tier\",\"loyalty_add_tier_desc\":\"Configure this new tier, then save the program to publish it.\",\"loyalty_tier_added\":\"Tier added. Save the program to publish it.\",\"loyalty_tier_name\":\"Tier name\",\"loyalty_delete_tier\":\"Delete\",\"loyalty_deleting_tier\":\"Deleting...\",\"loyalty_delete_tier_confirm\":\"Delete this tier? Assigned customers will have no tier until their next recalculation.\",\"loyalty_delete_tier_min_error\":\"Keep at least one loyalty tier.\",\"loyalty_tier_deleted\":\"Tier deleted\",\"loyalty_tier_delete_error\":\"Error deleting tier\",\"loyalty_tier_order\":\"Display order\",\"loyalty_move_tier_left\":\"Move left\",\"loyalty_move_tier_right\":\"Move right\",\"loyalty_min_points\":\"Minimum points\",\"loyalty_multiplier\":\"Multiplier\",\"loyalty_perks\":\"Perks\",\"loyalty_color\":\"Color\",\"loyalty_earning_rules\":\"Earning rules\",\"loyalty_tiers\":\"Loyalty tiers\",\"loyalty_referral_enabled\":\"Enable referral\",\"loyalty_reward_type\":\"Reward type\",\"loyalty_reward_value\":\"Value\",\"loyalty_points\":\"Points\",\"loyalty_discount\":\"Discount\",\"loyalty_store_credit\":\"Store credit\",\"loyalty_recent_referrals\":\"Recent referrals\",\"loyalty_referrer\":\"Referrer\",\"loyalty_referee\":\"Referee\",\"loyalty_status\":\"Status\",\"loyalty_date\":\"Date\",\"loyalty_conversion_rate\":\"Conversion rate\",\"loyalty_top_referrers\":\"Top referrers\",\"loyalty_status_pending\":\"Pending\",\"loyalty_status_converted\":\"Converted\",\"loyalty_status_expired\":\"Expired\",\"loyalty_max_per_customer\":\"Max per customer\",\"loyalty_per_euro\":\"per euro spent\",\"loyalty_fixed\":\"fixed\",\"loyalty_program_inactive\":\"Program inactive\",\"loyalty_program_active\":\"Program active\",\"loyalty_kpi_period\":\"Last 30 days\",\"loyalty_kpi_redemption_desc\":\"redeemed / issued × 100\",\"loyalty_kpi_referrals_desc\":\"status = converted\",\"loyalty_kpi_revenue_desc\":\"estimate\",\"loyalty_event_points_earned\":\"Points earned\",\"loyalty_event_tier_reached\":\"Tier reached\",\"loyalty_event_referral_converted\":\"Referral converted\",\"loyalty_event_points_expiring_soon\":\"Points expiring soon\",\"loyalty_event_welcome_bonus\":\"Welcome bonus\",\"loyalty_perk_free_shipping\":\"Free shipping\",\"loyalty_perk_early_access\":\"Early access\",\"loyalty_perk_birthday_bonus\":\"Birthday bonus\",\"loyalty_perk_private_sales\":\"Private sales\",\"loyalty_perk_personal_advisor\":\"Personal advisor\",\"loyalty_perk_exclusive_events\":\"Exclusive events\",\"loyalty_perk_standard\":\"Standard\",\"loyalty_perk_priority_support\":\"Priority support\",\"loyalty_perk_exclusive_gifts\":\"Exclusive gifts\",\"loyalty_no_referrals\":\"No referrals\",\"loyalty_no_referrals_desc\":\"Referrals will appear here.\",\"loyalty_add_perk_placeholder\":\"Add a perk...\",\"loyalty_demo_data\":\"Demo data\",\"loyalty_inactive_title\":\"Loyalty program inactive\",\"loyalty_inactive_desc\":\"Activate the program to retain customers and boost sales.\",\"loyalty_activate_cta\":\"Activate program\",\"welcome_title\":\"Welcome to Reponse\",\"welcome_subtitle\":\"Follow these steps to set up your store and start converting.\",\"welcome_checklist_title\":\"Your progress\",\"welcome_step_account\":\"Create your account\",\"welcome_step_shopify\":\"Connect your Shopify store\",\"welcome_step_ai\":\"Configure your AI agent\",\"welcome_step_loyalty\":\"Activate the loyalty program\",\"welcome_step_campaign\":\"Launch your first campaign\",\"welcome_quicklinks_title\":\"Quick access\",\"welcome_link_orders\":\"Orders\",\"welcome_link_orders_desc\":\"Track and manage your orders in real time.\",\"welcome_link_products\":\"Products\",\"welcome_link_products_desc\":\"Manage your catalog and enrich product listings.\",\"welcome_link_analytics\":\"Analytics\",\"welcome_link_analytics_desc\":\"Analyze your performance and conversions.\",\"welcome_link_support\":\"Support\",\"welcome_link_support_desc\":\"View and respond to your customer tickets.\",\"welcome_tips_title\":\"Tips to get started\",\"welcome_tip1_title\":\"Import your products\",\"welcome_tip1_desc\":\"Connect your Shopify store to automatically sync your catalog.\",\"welcome_tip2_title\":\"Customize your agent\",\"welcome_tip2_desc\":\"Adjust the tone, role, and knowledge of your AI assistant.\",\"welcome_tip3_title\":\"Launch your first campaign\",\"welcome_tip3_desc\":\"Create a sales assistant and link it to your ads to convert.\",\"new_store_step_brand\":\"Brand\",\"new_store_step_category\":\"Category\",\"new_store_step_country\":\"Country\",\"new_store_step_website\":\"Website\",\"new_store_brand_title\":\"What's your brand name?\",\"new_store_brand_desc\":\"The name your customers will see.\",\"new_store_brand_placeholder\":\"e.g. My Store\",\"new_store_category_title\":\"What do you sell?\",\"new_store_category_desc\":\"Helps the AI adapt to your industry.\",\"new_store_country_title\":\"Where are you based?\",\"new_store_country_desc\":\"Auto-configures currency and taxes.\",\"new_store_website_title\":\"Do you have a website?\",\"new_store_website_desc\":\"The AI will scan your site to extract your catalog, logo, and brand DNA.\",\"new_store_website_skip\":\"I don't have a website yet →\",\"new_store_back\":\"Back\",\"new_store_previous_step\":\"Previous step\",\"new_store_continue\":\"Continue\",\"new_store_create\":\"Create store\",\"new_store_creating\":\"Creating…\",\"new_store_success\":\"{name} created successfully!\",\"new_store_error\":\"Failed to create store\",\"new_store_generic_error\":\"An error occurred\",\"new_store_default_market\":\"Domestic Market\",\"new_store_cat_fashion\":\"Fashion \u0026 Accessories\",\"new_store_cat_beauty\":\"Beauty \u0026 Cosmetics\",\"new_store_cat_food\":\"Food \u0026 Beverages\",\"new_store_cat_home\":\"Home \u0026 Decor\",\"new_store_cat_tech\":\"Tech \u0026 Electronics\",\"new_store_cat_health\":\"Health \u0026 Fitness\",\"new_store_cat_kids\":\"Kids \u0026 Baby\",\"new_store_cat_pets\":\"Pets\",\"new_store_cat_digital\":\"Digital Products\",\"new_store_cat_services\":\"Services\",\"new_store_cat_other\":\"Other\",\"setup_checklist_title\":\"Set up your store\",\"setup_checklist_completed\":\"completed\",\"setup_checklist_dismiss\":\"Dismiss\",\"setup_add_product\":\"Add a product\",\"setup_connect_website\":\"Connect your website\",\"setup_connect_website_desc\":\"Let the AI learn from your site content.\",\"setup_add_product_desc\":\"Create your first product to sell.\",\"setup_customize_agent\":\"Customize AI agent\",\"setup_customize_agent_desc\":\"Set up your assistant's personality.\",\"setup_test_chat\":\"Test the chat\",\"setup_test_chat_desc\":\"Send a test message to your agent.\",\"setup_branding\":\"Set up branding\",\"setup_branding_desc\":\"Logo, colors, and visual identity.\",\"setup_payments\":\"Set up payments\",\"setup_payments_desc\":\"Connect a payment method for customers.\",\"google_product_category\":\"Product Category\",\"google_category_desc\":\"Used for Google Shopping, Meta Catalog and SEO structured data.\",\"tab_commerce\":\"Commerce\",\"tab_agents_support\":\"Agents \u0026 Support\",\"tab_marketing\":\"Marketing\",\"coming_soon_title\":\"{feature} coming soon\",\"coming_soon_description\":\"We are finalizing this section.\",\"breadcrumb\":{\"home\":\"Home\",\"detail\":\"Detail\",\"products\":\"Products\",\"product\":\"Product\",\"collections\":\"Collections\",\"variants\":\"Variants\",\"orders\":\"Orders\",\"customers\":\"Customers\",\"discounts\":\"Discounts\",\"conversations\":\"Conversations\",\"analytics\":\"Analytics\",\"sources\":\"Sources\",\"ai\":\"AI Agents\",\"widget\":\"Chat\",\"integrations\":\"Integrations\",\"api_keys\":\"API Keys\",\"settings\":\"Settings\",\"billing\":\"Billing\",\"assistant\":\"Assistant\",\"loyalty\":\"Loyalty\",\"support\":\"Support\",\"inventory\":\"Inventory\",\"marketing\":\"Marketing\",\"channels\":\"Channels\",\"emails\":\"Emails\"},\"journey\":{\"engage\":\"Engaged\",\"qualify\":\"Qualified\",\"intent\":\"Product clicked\",\"lead\":\"Lead captured\",\"convert\":\"Purchase\"},\"market_updated\":\"Market updated\",\"market_created\":\"Market successfully created\",\"market_deleted\":\"Market deleted\",\"market_name_label\":\"Market name\",\"market_countries_label\":\"Countries assigned to this market\",\"market_countries_hint\":\"These countries will be automatically assigned to this market at checkout.\",\"market_currency_label\":\"Base currency\",\"market_currency_conflict_warning\":\"The selected countries use different currencies ({currencies}). Customers will see prices in the base currency only.\",\"market_locale_label\":\"Language (Fallback)\",\"market_locale_default\":\"en-US\",\"market_prices_include_tax_label\":\"Prices shown tax-included\",\"market_prices_include_tax_hint\":\"Enable for Europe (VAT included). Disable for the US (Sales Tax added at checkout).\",\"market_tax_auto_exclusive\":\"Sales tax is added at checkout for US/CA markets. This setting is locked.\",\"market_tax_auto_inclusive\":\"VAT/Tax is included in displayed prices for this market. This setting is locked.\",\"market_tax_mixed_warning\":\"This market mixes tax-inclusive and tax-exclusive countries. We recommend splitting into separate markets.\",\"market_fulfillment_label\":\"Shipping routing (Optional)\",\"market_fulfillment_inherited\":\"Inherited from Workspace (Default)\",\"market_fulfillment_manual\":\"Manual Warehouse (Direct Sale)\",\"market_fulfillment_shopify\":\"Shopify Proxy (Dropshipping)\",\"market_fulfillment_supplier\":\"Supplier API (Dropshipping)\",\"market_fulfillment_hint\":\"Automatically routes orders from this market to a specific supplier.\",\"market_custom_domain_label\":\"Custom Domain (Optional)\",\"market_tier_3\":\"Tier 3\",\"market_custom_domain_hint\":\"Overrides the workspace's main domain. Leave empty to use subfolder routing (e.g. mybrand.com/en/).\",\"market_shipping_title\":\"Shipping pricing (Direct Sale)\",\"market_shipping_flat_rate\":\"Flat fee (e.g. 5.90)\",\"market_shipping_free_threshold\":\"Free shipping threshold (Optional)\",\"market_shipping_free_hint\":\"If the order amount reaches the threshold, shipping automatically switches to \\\"Free Shipping\\\".\",\"market_dropshipping_notice\":\"Dropshipping is enabled. \u003cstrong\u003eFree Standard Shipping\u003c/strong\u003e will be forced at checkout to optimize conversion. Actual costs will be managed with the supplier in the back office.\",\"market_shipping_moved_notice\":\"Shipping zones and rates are configured in Settings → Delivery Profiles, shared across markets.\",\"domain_strategy_inherited\":\"Inherit from primary\",\"domain_strategy_inherited_hint\":\"This market uses the primary domain. No DNS configuration needed.\",\"domain_strategy_dedicated\":\"Dedicated domain\",\"domain_strategy_dedicated_hint\":\"Use a separate domain (e.g. mybrand.fr). Requires DNS configuration.\",\"domain_strategy_subdomain\":\"Subdomain\",\"domain_strategy_subdomain_hint\":\"Use a subdomain (e.g. fr.mybrand.com). Requires a CNAME record.\",\"coming_soon\":\"Coming soon\",\"market_save_changes\":\"Save changes\",\"market_create\":\"Create market\",\"markets_taxes_title\":\"Markets \u0026 Taxes\",\"markets_taxes_description\":\"Manage your shipping zones, local currencies, and tax rules.\",\"new_market\":\"New market\",\"your_markets\":\"Your Markets\",\"no_markets\":\"No markets configured.\",\"market_countries_count\":\"countries\",\"market_tax_included\":\"Tax-included (TTC)\",\"market_tax_excluded\":\"Tax-excluded (HT)\",\"market_default_locale\":\"Default language (Fallback)\",\"market_fulfillment\":\"Fulfillment provider\",\"market_fulfillment_global\":\"Global (Inherited)\",\"market_dedicated_domain\":\"Dedicated domain\",\"market_domain_verified\":\"Verified\",\"market_domain_pending\":\"Pending verification\",\"market_inherited\":\"Inherited\",\"market_status\":\"Status\",\"market_active\":\"Active\",\"market_inactive\":\"Inactive\",\"edit_market\":\"Edit market\",\"create_new_market\":\"Create a new market\",\"market_form\":\"Market form\",\"market_form_description\":\"Configure a shipping zone with its own currency and tax rules.\",\"market_details\":\"Details\",\"market_delete_confirm\":\"Delete this market?\"},\"promotionSheet\":{\"markets\":\"Markets\",\"marketsHint\":\"Leave empty to apply to all markets.\",\"editTitle\":\"Edit promotion\",\"createTitle\":\"Create promotion\",\"editDescription\":\"Edit the settings of the existing promotion\",\"createDescription\":\"Fill out the form to create a new promotion\",\"promotionType\":\"Promotion type\",\"standardDescription\":\"Classic discount applied to cart or items\",\"buygetDescription\":\"Customers buy a minimum quantity to unlock a discount\",\"automatic\":\"Automatic\",\"codePlaceholder\":\"e.g. SUMMER25\",\"generate\":\"Generate\",\"automaticHint\":\"This promotion will be applied automatically — no code needed.\",\"codeRequired\":\"Code is required\",\"applicationMethod\":\"Application method\",\"discountType\":\"Discount type\",\"percentage\":\"Percentage\",\"fixedAmount\":\"Fixed amount\",\"target\":\"Target\",\"order\":\"Order\",\"items\":\"Items\",\"shipping\":\"Shipping\",\"perItem\":\"Per item\",\"spread\":\"Spread\",\"once\":\"Once\",\"value\":\"Value\",\"valueExceeds100\":\"Value cannot exceed 100%\",\"valueRequired\":\"Value is required and must be \u003e 0\",\"minBuyQuantity\":\"Min. buy quantity\",\"freeItems\":\"Free items\",\"limits\":\"Limits\",\"usageLimit\":\"Usage limit\",\"unlimited\":\"Unlimited\",\"maxItemsToDiscount\":\"Max items to discount\",\"schedule\":\"Schedule\",\"startDate\":\"Start date\",\"endDate\":\"End date\",\"endDateHint\":\"Leave empty for an open-ended promotion.\",\"rules\":\"Rules\",\"attr_subtotal\":\"Order subtotal\",\"attr_product_id\":\"Specific product\",\"attr_variant_id\":\"Specific variant\",\"op_gt\":\"Greater than\",\"op_lt\":\"Less than\",\"op_eq\":\"Equal to\",\"op_in\":\"Is one of\",\"op_ne\":\"Is not\",\"valuesPlaceholder\":\"val1, val2\",\"addRule\":\"Add rule\",\"cancel\":\"Cancel\",\"saving\":\"Saving…\",\"creating\":\"Creating…\",\"save\":\"Save\",\"create\":\"Create\"},\"invite\":{\"error_no_token\":\"Invalid invitation link. No token provided.\",\"error_verify_failed\":\"Failed to verify invitation\",\"error_accept_failed\":\"Failed to accept invitation\",\"error_unknown\":\"An unknown error occurred\",\"error_title\":\"Invitation Error\",\"invalid_link\":\"Invalid Link\",\"link_broken\":\"This invitation link appears to be broken.\",\"verifying\":\"Verifying invitation...\",\"go_home\":\"Go Home\",\"join_workspace\":\"Join {name}\",\"invited_to_collaborate\":\"You have been invited to collaborate on Reponse.\",\"workspace_label\":\"Shop\",\"email_label\":\"Invited Email\",\"login_required\":\"Please log in or sign up to accept this invitation.\",\"login_button\":\"Log In / Sign Up\",\"signup_required\":\"To join the team, you need to create an account with the email \",\"signup_button\":\"Create an account or log in\",\"logged_in_as\":\"Logged in as\",\"email_mismatch_warning\":\"Warning: You are logged in with a different email than the one invited. You can still join, but you will be using your current account.\",\"joining\":\"Joining...\",\"join_button\":\"Join Shop\"},\"auth\":{\"welcome_title\":\"Sign In to Your AI Agent Shop\",\"welcome_subtitle\":\"Sign in to continue to your shop\",\"check_email_title\":\"Check your inbox\",\"check_email_desc\":\"We sent a magic link to {email}. Click the link to sign in instantly.\",\"use_different_email\":\"Use a different email\",\"email_label\":\"Email\",\"email_placeholder\":\"name@company.com\",\"submit_button\":\"Sign in with Magic Link\",\"sending_button\":\"Sending Link...\",\"no_password\":\"No password required\",\"footer_copyright\":\"© {year} Reponse AI\",\"gmail_redirect_title\":\"Redirecting to Gmail...\",\"open_gmail_button\":\"Open Gmail\",\"cancel_redirect\":\"Cancel redirection\",\"gmail_detected\":\"Gmail account detected\",\"not_invited_title\":\"Limited Access\",\"not_invited_desc\":\"Reponse is currently in closed beta, accessible by invitation only. We've added your email {email} to our priority waitlist. You'll be among the first to know when we open the doors!\",\"waitlist_success_button\":\"Got it!\"},\"onboarding\":{\"step1_title\":\"Let's start!\",\"step1_subtitle\":\"Enter your professional website to configure your brand shop.\",\"step1_placeholder\":\"your-store.com\",\"step1_confirm_title\":\"Your shop is ready\",\"step1_confirm_subtitle\":\"We've detected these details, feel free to edit them.\",\"step1_brand_placeholder\":\"Your brand name\",\"step1_website_placeholder\":\"https://your-site.com\",\"step1_error_generic\":\"Please use a professional email for the best experience.\",\"step1_error_disposable\":\"This email is not allowed.\",\"step1_logo\":\"Logo\",\"step1_logo_change\":\"Change\",\"step2_title\":\"Analysis\",\"step2_subtitle\":\"Exploring your ecosystem...\",\"step2_placeholder\":\"https://example.com\",\"step2_empty\":\"Press enter to analyze a URL\",\"step3_identity_title\":\"Brand Identity\",\"step3_identity_subtitle\":\"We've got you figured out. Your identity is clearly \u003ctraits\u003e\u003c/traits\u003e.\",\"step3_role_title\":\"What is their role?\",\"step3_role_custom\":\"Custom role...\",\"step3_role_placeholder\":\"e.g. Hydration Expert, Consultant...\",\"step4_title\":\"Invite your team\",\"step4_subtitle\":\"Who else should be in {name}?\",\"step4_placeholder\":\"colleague@company.com\",\"step4_empty\":\"Press enter to invite a member\",\"discover_button\":\"Analyze\",\"discovered_sources_title\":\"Detected sources\",\"import_selected_button\":\"Add selected sources\",\"step5_role_title\":\"Role\",\"step5_role_subtitle\":\"Define {name}'s designation within your store.\"},\"onboardingCard\":{\"scanLabel0\":\"Analyzing knowledge sources...\",\"scanLabel1\":\"Content discovery in progress...\",\"scanLabel2\":\"Indexing product catalog...\",\"scanLabel3\":\"Extracting Brand DNA...\",\"idleTitle\":\"Analyzing your brand\",\"idleStatus\":\"Waiting for connection\",\"successTitle\":\"DNA SYNCED\",\"successStatus\":\"Extraction complete\"}},\"now\":\"$undefined\",\"timeZone\":\"UTC\",\"children\":[\"$L2b\",\"$L2c\",\"$L2d\",\"$L2e\",\"$L2f\"]}]\n"])</script><script>self.__next_f.push([1,"2b:[\"$\",\"$L30\",null,{}]\n2c:[\"$\",\"$L31\",null,{\"src\":\"https://www.googletagmanager.com/gtag/js?id=G-KLKW09VEPQ\",\"strategy\":\"afterInteractive\"}]\n2d:[\"$\",\"$L31\",null,{\"id\":\"gtag-init\",\"strategy\":\"afterInteractive\",\"dangerouslySetInnerHTML\":{\"__html\":\"\\n window.dataLayer = window.dataLayer || [];\\n function gtag(){dataLayer.push(arguments);}\\n \\n // Set default consent state before GTM loads\\n var initialConsent = 'denied';\\n try {\\n if (localStorage.getItem('cookie_consent') === 'accepted') {\\n initialConsent = 'granted';\\n }\\n } catch(e) {}\\n \\n gtag('consent', 'default', {\\n 'analytics_storage': initialConsent,\\n 'ad_storage': initialConsent,\\n 'ad_user_data': initialConsent,\\n 'ad_personalization': initialConsent,\\n 'wait_for_update': 500\\n });\\n\\n gtag('js', new Date());\\n gtag('config', 'G-KLKW09VEPQ');\\n \"}}]\n32:Ta5f,"])</script><script>self.__next_f.push([1,"\n window.initCal = function() {\n if (window.Cal) return;\n (function (C, A, L) { \n let p = function (a, ar) { a.q.push(ar); }; \n let d = C.document; \n C.Cal = C.Cal || function () { \n let cal = C.Cal; \n let ar = arguments; \n if (!cal.loaded) { \n cal.ns = {}; \n cal.q = cal.q || []; \n d.head.appendChild(d.createElement(\"script\")).src = A; \n cal.loaded = true; \n } \n if (ar[0] === L) { \n const api = function () { p(api, arguments); }; \n const namespace = ar[1]; \n api.q = api.q || []; \n if(typeof namespace === \"string\"){\n cal.ns[namespace] = cal.ns[namespace] || api;\n p(cal.ns[namespace], ar);\n p(cal, [\"initNamespace\", namespace]);\n } else p(cal, ar); \n return;\n } \n p(cal, ar); \n }; \n })(window, \"https://app.cal.com/embed/embed.js\", \"init\");\n \n \n Cal(\"init\", \"reponse.ai-platform-demo-30-minutes\", {origin:\"https://app.cal.com\"});\n Cal.ns[\"reponse.ai-platform-demo-30-minutes\"](\"ui\", {\n \"theme\":\"light\",\n \"cssVarsPerTheme\":{\"light\":{\"cal-brand\":\"#000000\"},\"dark\":{\"cal-brand\":\"#FFFFFF\"}},\n \"hideEventTypeDetails\":false,\n \"layout\":\"month_view\"\n });\n \n\n // Auto-open logic\n const params = new URLSearchParams(window.location.search);\n const shouldOpen = params.has('ref') || params.has('utm_source') || params.has('booking') || params.has('demo') || params.has('cal');\n if (shouldOpen) {\n const isFr = window.location.pathname.split('/').includes('fr');\n const eventSlug = isFr ? \"reponse-demo-de-la-plateforme-30-minutes\" : \"reponse.ai-platform-demo-30-minutes\";\n setTimeout(() =\u003e {\n if (window.Cal \u0026\u0026 window.Cal.ns \u0026\u0026 window.Cal.ns[eventSlug]) {\n window.Cal.ns[eventSlug](\"ui\", {\"layout\":\"month_view\"});\n }\n }, 800);\n }\n };\n "])</script><script>self.__next_f.push([1,"2e:[\"$\",\"$L31\",null,{\"id\":\"cal-lazy-init\",\"strategy\":\"afterInteractive\",\"dangerouslySetInnerHTML\":{\"__html\":\"$32\"}}]\n"])</script><script>self.__next_f.push([1,"2f:[\"$\",\"$L33\",null,{\"children\":[[\"$\",\"$8\",null,{\"children\":[\"$\",\"$L34\",null,{\"attribute\":\"class\",\"defaultTheme\":\"light\",\"enableSystem\":true,\"children\":[\"$\",\"$L35\",null,{\"children\":[\"$\",\"$L36\",null,{\"children\":[[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@graph\\\":[{\\\"@type\\\":\\\"Organization\\\",\\\"@id\\\":\\\"https://reponse.ai/#organization\\\",\\\"name\\\":\\\"Reponse.ai\\\",\\\"url\\\":\\\"https://reponse.ai\\\",\\\"logo\\\":{\\\"@type\\\":\\\"ImageObject\\\",\\\"url\\\":\\\"https://reponse.ai/icon.svg\\\"},\\\"description\\\":\\\"AI-powered post-click optimization platform for paid traffic conversion\\\",\\\"sameAs\\\":[\\\"https://www.linkedin.com/company/reponse-ai\\\"],\\\"contactPoint\\\":{\\\"@type\\\":\\\"ContactPoint\\\",\\\"email\\\":\\\"hello@reponse.ai\\\",\\\"contactType\\\":\\\"customer service\\\",\\\"availableLanguage\\\":[\\\"en\\\",\\\"fr\\\"]}},{\\\"@type\\\":\\\"WebSite\\\",\\\"@id\\\":\\\"https://reponse.ai/#website\\\",\\\"url\\\":\\\"https://reponse.ai\\\",\\\"name\\\":\\\"Reponse.ai\\\",\\\"publisher\\\":{\\\"@id\\\":\\\"https://reponse.ai/#organization\\\"},\\\"inLanguage\\\":\\\"en-US\\\"},{\\\"@type\\\":\\\"SoftwareApplication\\\",\\\"name\\\":\\\"Reponse.ai\\\",\\\"applicationCategory\\\":\\\"BusinessApplication\\\",\\\"operatingSystem\\\":\\\"Web\\\",\\\"offers\\\":{\\\"@type\\\":\\\"Offer\\\",\\\"price\\\":\\\"0\\\",\\\"priceCurrency\\\":\\\"USD\\\"},\\\"aggregateRating\\\":{\\\"@type\\\":\\\"AggregateRating\\\",\\\"ratingValue\\\":\\\"4.8\\\",\\\"reviewCount\\\":\\\"127\\\"},\\\"description\\\":\\\"AI chat that converts ad clicks into purchases\\\"}]}\"}}],[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"$L37\",null,{}],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}],[\"$\",\"$L38\",null,{}]]}]}]}]}],[\"$\",\"$L39\",null,{\"position\":\"bottom-center\"}]]}]\n"])</script><script>self.__next_f.push([1,"9:null\n"])</script><script>self.__next_f.push([1,"e:[[\"$\",\"title\",\"0\",{\"children\":\"Storefront Starter | Reponse\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"The Next.js storefront starter.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"manifest\",\"href\":\"/manifest.json\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"meta\",\"3\",{\"name\":\"generator\",\"content\":\"Reponse.ai - Conversational AI agent for lead generation and conversion rate optimization\"}],[\"$\",\"meta\",\"4\",{\"name\":\"robots\",\"content\":\"index, follow, max-video-preview:-1, max-image-preview:large, max-snippet:-1\"}],[\"$\",\"link\",\"5\",{\"rel\":\"canonical\",\"href\":\"https://reponse.ai/docs/storefront-starter\"}],[\"$\",\"link\",\"6\",{\"rel\":\"alternate\",\"hrefLang\":\"en\",\"href\":\"https://reponse.ai/docs/storefront-starter\"}],[\"$\",\"link\",\"7\",{\"rel\":\"alternate\",\"hrefLang\":\"fr\",\"href\":\"https://reponse.ai/fr/docs/storefront-starter\"}],[\"$\",\"link\",\"8\",{\"rel\":\"alternate\",\"hrefLang\":\"x-default\",\"href\":\"https://reponse.ai/docs/storefront-starter\"}],[\"$\",\"meta\",\"9\",{\"name\":\"format-detection\",\"content\":\"telephone=no\"}],[\"$\",\"meta\",\"10\",{\"name\":\"msvalidate.01\",\"content\":\"BD0B74C1049480CE1A86DE703FB2FA2F\"}],[\"$\",\"meta\",\"11\",{\"name\":\"mobile-web-app-capable\",\"content\":\"yes\"}],[\"$\",\"meta\",\"12\",{\"name\":\"apple-mobile-web-app-title\",\"content\":\"Reponse\"}],[\"$\",\"meta\",\"13\",{\"name\":\"apple-mobile-web-app-status-bar-style\",\"content\":\"default\"}],[\"$\",\"meta\",\"14\",{\"property\":\"og:title\",\"content\":\"Storefront Starter\"}],[\"$\",\"meta\",\"15\",{\"property\":\"og:description\",\"content\":\"The Next.js storefront starter.\"}],[\"$\",\"meta\",\"16\",{\"property\":\"og:url\",\"content\":\"https://reponse.ai/docs/storefront-starter\"}],[\"$\",\"meta\",\"17\",{\"property\":\"og:site_name\",\"content\":\"Reponse\"}],[\"$\",\"meta\",\"18\",{\"property\":\"og:locale\",\"content\":\"en_US\"}],[\"$\",\"meta\",\"19\",{\"property\":\"og:image\",\"content\":\"https://reponse.ai/docs/storefront-starter/opengraph-image\"}],[\"$\",\"meta\",\"20\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"21\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"22\",{\"property\":\"og:image:alt\",\"content\":\"Storefront Starter\"}],[\"$\",\"meta\",\"23\",{\"property\":\"og:type\",\"content\":\"article\"}],[\"$\",\"meta\",\"24\",{\"property\":\"article:modified_time\",\"content\":\"2026-08-19T14:21:41.529Z\"}],[\"$\",\"meta\",\"25\",{\"property\":\"article:author\",\"content\":\"Reponse\"}],[\"$\",\"meta\",\"26\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"27\",{\"name\":\"twitter:title\",\"content\":\"Storefront Starter\"}],[\"$\",\"meta\",\"28\",{\"name\":\"twitter:description\",\"content\":\"The Next.js storefront starter.\"}],[\"$\",\"meta\",\"29\",{\"name\":\"twitter:image\",\"content\":\"https://reponse.ai/docs/storefront-starter/opengraph-image\"}],[\"$\",\"link\",\"30\",{\"rel\":\"icon\",\"href\":\"/icon.svg\"}],[\"$\",\"link\",\"31\",{\"rel\":\"apple-touch-icon\",\"href\":\"/icon.svg\"}],[\"$\",\"$L3a\",\"32\",{}]]\n"])</script></body></html>