Ecwid App

The Conferbot Ecwid app installs the AI chat widget on an Ecwid storefront. It handles OAuth install, saves your settings to the app's Ecwid public storage, and ships a storefront loader that reads them via Ecwid.getAppPublicConfig() and boots the widget.

See it in action

How it works

Install and runtime flow
merchant installs from the Ecwid App Market
  -> Ecwid redirects to {APP_URL}/auth/callback?code=
  -> code exchanged at my.ecwid.com/api/oauth/token -> access_token + store_id

merchant saves settings (/app -> /app/save)
  -> app writes {botId, embedType, enabled, scriptUrl} to
     PUT app.ecwid.com/api/v3/{storeId}/storage/public

every storefront page load
  -> Ecwid loads {APP_URL}/storefront/loader.js (registered in the dev portal)
  -> loader reads Ecwid.getAppPublicConfig() and boots
     window.ConferbotWidget(botId, embedType, { customData: { platform: "ecwid", storeId } })

The loader boots the standard Conferbot web widget - appearance and behavior stay dashboard-driven.

Requirements

  • An Ecwid store
  • A Conferbot account with a published chatbot, or the built-in demo bot to try it first
  • Self-hosting the app: Node.js, a public HTTPS APP_URL, and app credentials from the Ecwid Developer Portal

Installation

  1. Install the Conferbot app on your store (OAuth flow).
  2. Open the app settings page and paste your Chatbot ID.
  3. On save, the settings are written to the app's public storage; the storefront loader reads them via Ecwid.getAppPublicConfig() and injects the widget.

Running your own instance from source:

  1. Register the app at the Ecwid Developer Portal: set the OAuth redirect to {APP_URL}/auth/callback, request scopes read_store_profile update_store_profile, and add {APP_URL}/storefront/loader.jsas the app's storefront JS (External files).
  2. Copy .env.example to .env with the client ID/secret. APP_URL must be public HTTPS.
  3. npm install && npm start, then install on your dev store from the portal.

Configuration

The only merchant-facing setting is the Chatbot ID - paste the bare ID, the full embed snippet, or a dashboard URL and it is extracted automatically.

💡

No account yet?

The one-click demo bot 691c970890527a0468f9b2c9 works without a Conferbot account, so you can see the widget live before signing up.

What the app passes to the widget

  • customData - platform: "ecwid" and the store ID.

Troubleshooting

💡

Widget blank after install?

Confirm the bot is published, the widget is enabled in the app settings, and the Chatbot ID is the 24-character hex value. The loader reads its config from Ecwid public storage, so it does nothing until you save the settings once. The demo bot 691c970890527a0468f9b2c9 isolates setup problems from bot configuration.

Source

Open source (MIT) on GitHub: Conferbot/conferbot-ecwid. The test suite covers the OAuth/settings/storage journey against a mock Ecwid plus a real-browser e2e where the CDN widget mounts via loader.js.