Live chat · Widget / Chatbox
A Crisp & Intercom alternative →

Live chat your merchants actually enjoy.

One script tag. A branded widget that feels like it was built for your app. Online states that show real agent faces. Auto-translate in 25+ languages. Every chat tied to a real merchant record, with their plan, MRR, and install date right in the sidebar.

Free for your first app  ·  Import from Crisp in one click

Branded widget, online state

One line. Zero dependencies.

Paste a single <script> tag and set window.Convot = { app_id }. The widget loads inside a sandboxed iframe, it can never break your host page, fight your z-index, or leak your styles. Smart sizing goes from a 60px launcher to a full 440×760 panel and back.

  • Single tag embed, CORS-allowed for *.myshopify.com
  • Sandboxed iframe, can't break host-page layout
  • Pre-load command queue replays buffered SDK calls
<!-- Add Convot to any Shopify storefront -->
<script>
  window.Convot = { app_id: "app_3f9c2a8d" };
</script>
<script async src="https://cdn.convot.io/w.js"></script>

Match your brand exactly, no CSS required.

Pick your brand color from a hex input or eight presets. Choose a layout theme (Colorized, Minimal, or Classic), a color mode (Light, Dark, or Match system), and a chat background texture. Drop your logo in the launcher bubble. The widget looks like it shipped with your app.

  • Brand color, layout theme, color mode, and texture by toggle
  • Your logo in the launcher bubble
  • Section toggles: Help, Messages, Changelog, Roadmap, Scheduling
Chatbox appearance settings, brand color, sections, layout

Real agent faces. Honest ETAs when you're out.

The widget home shows a branded hero, live online status, and a stack of real agent avatars when the team is available. A 3-minute grace period absorbs brief blips, merchants never see you flicker offline. When the team is genuinely away, visitors get a real "back in ~4h" estimate, not a generic "unavailable."

  • 3-minute grace period, brief blips don't flip the status
  • Back-online ETA from your business hours, shown as a short pill
  • Instant away auto-reply sets expectations without going silent
Widget home, online state, agent faces, away ETA

Talk to any merchant, in any language.

Convot auto-detects the visitor's language and translates every message server-side, no JS in the widget, no latency in the browser. Your team replies in English; the merchant reads it in Spanish, Japanese, or 25+ other languages. One click shows the original, and you can correct the detected language any time.

  • Auto-detect + translate in 25+ languages, cached per message
  • Outgoing auto-translate, reply in your language, deliver in theirs
  • Per-bubble "show original" toggle, manual language override
A merchant conversation with auto language detection

Screenshots, recordings, and files, in the chat.

Merchants attach JPG, PNG, GIF, WebP, MP4, MOV, up to 25 MB, with a caption, right inside the widget. No "please email us that file." When you reply while the widget is closed, a non-intrusive message preview toast pops above the launcher so merchants come back without you forcing the chat open.

  • Images, video, and documents up to 25 MB, drag or pick
  • Click-to-zoom lightbox for images in-thread
  • Message preview toast re-engages without auto-opening the widget
An image attachment in a conversation thread

Every chat tied to a verified merchant identity.

Use Convot.identify({...}) to pass the merchant's shop domain, and sign it with your per-app HMAC secret. Enable require_identity_verification mode and unverified sessions get a 403, no impersonation, no anonymous noise. Blocked countries, IPs, and pages are enforced server-side, never sent to the browser.

  • HMAC-SHA256 identity verification, cryptographically proven merchants
  • Server-side IP, country, and page restrictions, never leaks to browser
  • Hide on mobile, hide when all-away, force-email-gate, by toggle
# Your server, sign the merchant's shop domain
hash = OpenSSL::HMAC.hexdigest(
  "sha256", app.identity_secret, shop_domain
)

// The browser, identify, cryptographically verified
Convot.identify({
  shop: "lumen-skincare.myshopify.com",
  user_hash: hash,
});
Revenue intelligence

Every chat comes with the merchant's MRR, churn risk, and LTV.

The moment a chat starts, Convot pulls the merchant's Shopify Partner data into the sidebar: plan name, gross MRR, LTV, install age, and lifecycle events. Your team knows what they're worth before saying hello. When someone uninstalls, the conversation reopens automatically so you can win them back.

See revenue intelligence →
Plan Pro, $79/mo
Gross MRR $2,370
Churn risk High
LTV $8,400
Install age 14 months
Get started

Ship a merchant-ready chat widget today.

Free for your first app. One script tag. Works in any Shopify embedded app.