Search Results for 'wordpress'
Found 143 results
CSAT surveys on WhatsApp
Ask customers to rate your support when a conversation is resolved, even after the 24-hour window has closed. Chatwoot creates the WhatsApp template for you, submits it to Meta and sends it once it is approved. Plan & access - Every plan that includes WhatsApp (Startups and above, and the free trial). Works with WhatsApp Cloud API and Twilio inboxes. See Pricing & Plans. - Administrators set it up. Set it up 1. Go to Settings › Inboxes, open your WhatsApp inbox and go to the CSAT tab. 2. Turn on Enable CSAT. 3. Fill in the Message, the Button text and the Language. The preview shows how it will look in WhatsApp. 4. Save. Chatwoot creates the template and sends it to Meta for review. 5. Wait for the status to show Approved by WhatsApp. Optional: if your account has Captain, click Check utility fit to see whether Meta is likely to treat your message as Utility, with a suggested rewrite. It is guidance, not a guarantee. Without Captain, the button does not appear. Optional: choose which conversations get a survey using label rules. In the same CSAT tab, under Survey rule, choose contains or does not contain and select one or more labels. With contains, the survey is sent only if the conversation has at least one of those labels. With does not contain, it is sent only if the conversation has none of them. See How to enable CSAT surveys?. Test it: resolve a test conversation with your own number. You should receive the survey with a button that opens the rating page. Template statuses Status Meaning Pending WhatsApp approval Meta is reviewing the template Approved by WhatsApp Surveys are sent automatically when conversations are resolved Meta rejected the template Meta declined it. Change the message and save to resubmit. What to expect - One survey per conversation. - Until the template is approved, the survey goes out as a regular message only while the 24-hour window is open. If the window has closed, no survey is sent, and the conversation shows CSAT survey not sent due to outgoing message restrictions. - Chatwoot does not edit the existing template. When you change the message, button text or language, Chatwoot asks you to confirm (Create new template), deletes the current template and submits a new one for approval. Until Meta approves it, surveys follow the rule above. If saving fails, save again, because the previous template may already be deleted. Good practice - Keep the message short and friendly, with clear button text such as "Rate now". - Use label rules so only meaningful conversations get a survey. - Change the template rarely. Each change pauses template surveys until Meta approves the new one. See ratings in How to read CSAT Reports?.
💬 Website live chatHow to install live chat on a Webflow website?
If your website is created with Webflow and you want to talk to your Webflow website visitors in real-time, you can add the Chatwoot live chat widget to your website. Follow the steps described below. Step 1. Create a website inbox in Chatwoot Please refer to this guide for detailed instructions on setting a website inbox in Chatwoot. Step 2. Install the generated script in Webflow Login to your Webflow account and select your website. Select Settings. Go to Custom Code -> Footer Code. Paste the script in the "Footer Code". Save the changes. Step 3. Publish the changes Click on Publish -> Select the website -> Publish to selected domains. Step 4. Verify Visit your website and see if the widget appears on the website.
📌 Other topicsHow to hard-reload on most browsers
A hard reload forces your browser to bypass its cache and fetch the latest version of a webpage from the server. This is useful when you're experiencing issues due to outdated cached files. Here's how to do it on different browsers: Chrome Hard Reload - Windows/Linux: Press Ctrl + F5 - Mac: Press Cmd + Shift + R Hard Reload with Cache Disabled - Open DevTools (F12 or Cmd + Option + I), right-click the reload button, then choose "Empty Cache and Hard Reload." Firefox Hard Reload - Windows: Press Ctrl + F5 or Shift + F5 - Mac: Press Cmd + Shift + R Hard Reload with Cache Disabled - Open DevTools (F12), click the settings (gear) icon, check "Disable Cache", then reload. Edge Hard Reload - Press Ctrl + F5 Hard Reload with Cache Disabled - Open DevTools (F12), right-click the reload button for "Empty Cache and Hard Reload" (or enable "Disable Cache" in the network tab), then reload. Safari (Mac) - Press Cmd + Option + R
❓ Help CenterEmbedding videos in Help Center
Chatwoot's Help Center supports automatic embedding of videos from multiple platforms. When you paste supported video URLs on their own lines (surrounded by empty lines), they will be automatically converted to embedded video players. Supported Video Platforms Platform URL Format How to Get the URL YouTube https://www.youtube.com/watch?v=VIDEO_ID or https://youtu.be/VIDEO_ID Copy URL from browser address bar or use "Share" button Vimeo https://vimeo.com/VIDEO_ID Copy URL from browser address bar or use "Share" button Loom https://loom.com/share/VIDEO_ID Use "Share" button after recording or from video library Wistia https://SUBDOMAIN.wistia.com/medias/VIDEO_ID Copy URL from browser or use "Share & Embed" option Arcade https://app.arcade.software/share/VIDEO_ID Use "Share" button from your demo library Bunny CDN https://iframe.mediadelivery.net/play/LIBRARY_ID/VIDEO_ID Get iframe URL from Bunny CDN dashboard Direct MP4 Any URL ending in .mp4 Use direct link to MP4 file from any hosting service Important Requirements 1. Empty Lines: Video URLs must be surrounded by empty lines (blank lines above and below) 2. Standalone Links: The URL must be on its own line, not embedded in other text 3. Must be a Link: The URL must be formatted as a clickable link in markdown (not plain text) 4. Exact Format: URLs must match the exact patterns shown above The video embedding system automatically detects these patterns and replaces the URLs with responsive video players that work across all devices.
🔥 CaptainInstall tools from the Captain Tools Catalog
The Tools Catalog has ready-made custom tools for services such as Stripe, Cal.com and Attio. You install the tools for a service and enter your credentials. Captain can then use those tools in conversations. Your credentials stay encrypted in your Chatwoot account. The Tools Catalog is available on the same plans as custom tools. Only administrators can install tools from it. Install tools for a service 1. Go to Captain > Tools. 2. Use the switcher at the top to choose the assistant. 3. Click Tools Catalog. 4. Click a service. The side panel shows its tools, the settings they need and how to get your credentials. 5. Click Install. 6. Enter your credentials and settings. 7. Click Install. You can also install from the Captain Tools website. Open a service, click Install in Chatwoot, and choose the assistant. Manage installed tools Each installed tool shows under Captain > Tools. You can turn each tool on or off. You cannot edit the tool. Some tools read the data of one customer, such as invoices in Stripe. Before these tools run, the customer must verify their email. Administrators can turn this on or off for each tool. See "Protect customer data" in Set up custom tools for Captain. Installed tools belong to one assistant. To use them on a different assistant, switch to that assistant and install them again. Install only the tools that an assistant needs. If tools for two services do similar things, the assistant can choose the wrong one. Update installed tools When a new version of a service's tools is available, the catalog shows Update available. If you deleted one of the tools, the catalog shows Reinstall. Both actions keep the on or off setting of each tool. You must enter your secrets again. Build your own To add tools for a service that you use, see Publish your tools.
📌 Other topicsLanguages supported in Chatwoot
Chatwoot natively supports 30+ different languages. This guide will illustrate how to enable a particular language to work with your dashboard and live chat widget. Supported languages Mentioned below are the languages supported in Chatwoot and the corresponding shortcodes (derived from ISO 639 language codes). (ar) العربية Català (ca) čeština (cs) dansk (da) Deutsch (de) ελληνικά (el) English (en) Español (es) فارسی (fa) suomi, suomen kieli (fi) Français (fr) magyar nyelv (hu) Bahasa Indonesia (id) Italiano (it) 日本語 (ja) 한국어 (ko) latviešu valoda (lv) മലയാളം (ml) Nederlands (nl) norsk (no) język polski (pl) Português (pt) Português Brasileiro (pt-BR) Română (ro) русский (ru) slovenčina (sk) Svenska (sv) தமிழ் (ta) ภาษาไทย (th) Türkçe (tr) українська мова (uk) Tiếng Việt (vi) 中文 (zh-CN) 中文 (台湾) (zh-TW) How to update language in the live-chat widget? As outlined in the SDK setup guide, you can configure the locale for the live-chat widget either by passing it in the chatwootSettings or by calling the setLocale method. To specify the locale, use the shortcodes provided above. This will ensure that the widget is displayed in the desired language. // Pass via window.chatwootSettings window.chatwootSettings = { locale: 'pt_BR', // .. rest of the settings } // Using setLocale method window.$chatwoot.setLocale('pt_BR') How to update your dashboard’s language? Only administrators can update the dashboard language. Go to Settings → Account Settings. You will be able to see the Site Language setting available in the options. Select the language of your choice from the corresponding dropdown menu. Click on the Update Settings button on the top-right corner of your screen. Changing the site language would change the default language for all agents/administrators in the system. Currently, Chatwoot does not support language selection at the agent level. Also, note that this language would be used as the fallback language for the live chat widget.
📌 Other topicsHow to enable push notifications in your browser
Google Chrome: 1. Click the three-dot menu in the top-right corner and select Settings. 2. Navigate to Privacy and security > Site Settings > Notifications. 3. To ensure notifications can be enabled, check Sites can ask to send notifications. 4. To manage specific sites, use the Add button under Allow or Block to enter the site’s URL. Alternatively, click the padlock icon in the address bar while on a site, select Site settings, and adjust the Notifications permission. Mozilla Firefox: 1. Click the menu button (three horizontal lines) and select Settings. 2. Go to Privacy & Security. 3. Under Permissions, find Notifications and click Settings. 4. Here, you can manage permissions for each site or un-check Block new requests asking to allow notifications to ensure the prompts are shown. Safari (macOS): 1. Click Safari in the top menu and select Preferences. 2. Go to the Websites tab and select Notifications. 3. Here, you can allow or deny notification permissions for each listed website. Ensure that Allow websites to ask for permissions is enabled. Microsoft Edge: 1. Click the three-dot menu in the top-right corner and select Settings. 2. Navigate to Cookies and site permissions > Notifications. 3. To block all notifications, toggle off Ask before sending. 4. To manage specific sites, use the Add button under Allow or Block to enter the site’s URL. Alternatively, click the padlock icon in the address bar while on a site, select Permissions for this site, and adjust the Notifications setting. In case you want more detailed documentation the following are the links to docs on how to enable push notifications for popular browsers. 1. Chrome or chrome based browsers like Brave and Edge 2. Safari 3. Firefox
❓ Help CenterHide your help center or articles from search engines
By default, Google and other search engines can list your help center pages in their results. You can now keep a single article, or your whole help center, out of search results. Visitors can still open and use it as before. This is useful for pages that people should reach from your product or support conversations rather than from Google, such as internal guides, beta features or duplicate content. Hide a single article 1. Go to Help Center → Articles and open the article. 2. Click More properties. 3. Turn off Show in search results. The change saves automatically. The article stays published and visible in your help center. Only search engines skip it. Each translation of an article has its own setting, so turn it off for every language you want to hide. Hide your whole help center 1. Go to Help Center → Settings. 2. Open the SEO tab. 3. Turn off Show in search results. While your help center is hidden, every article's switch is turned off and can't be changed, with a note pointing back to Settings → SEO. Turn the help center setting back on to manage articles one by one again. What happens when a page is hidden - It's removed from your help center's sitemap, the list of pages that search engines read. - Search engines are told not to list the page. - Visitors see no change. Links, categories and help center search all work as before. Good to know - It isn't instant. Pages already in search results disappear the next time search engines check your help center, which can take a few days or weeks. If you need a page gone urgently, request removal in the search engine's own tools, such as Google Search Console. - It doesn't make pages private. Anyone with the link can still open a hidden page. To take an article down completely, move it back to draft or archive it. - You can turn it back on at any time. Pages become eligible for search results again the next time search engines check your help center.
🚀 Chatwoot 101Lesson 3 (b): Working with Customer Context
Lesson 3(a) was about what you do inside a conversation. This lesson is about what you know about the person on the other end and how to use that knowledge to give better, faster, more personal support. The shift in mindset: stop thinking of each conversation as an isolated message thread. Start thinking of it as the latest entry in a long relationship with a specific human being, one who has a name, a history, an account, and a set of facts you should know before you reply. What you'll learn - How to read a contact record at a glance - How to use a customer's previous conversations to answer faster - What custom attributes are and how they make replies smarter - How to take action on dozens of conversations at once with bulk actions - How to turn complex filters into one-click saved folders and segments - How to find anything — fast — using global search You'll need: A few test conversations from the same contact (send 2-3 messages from the widget so you have history to play with). 1. The contact record — your customer's profile Every person who messages you becomes a contact. The contact record is the one place where everything you know about that person lives. What the contact record contains Section What's in it Identity Name, email, phone, profile photo, locale Company Organization the contact belongs to (for B2B teams) Conversations Every conversation they've ever had with you, across all channels Custom Attributes Any custom data you track about this contact Notes Free-form notes about the customer (separate from conversation private notes) Two minutes that change every reply Before you reply to anything non-trivial, glance at three things in the contact panel: 1. Their name — use it in the reply. 2. Previous conversations — if they wrote in last week, you should know what about. 3. Custom attributes — plan, signup date, account ID. The "boring" facts are usually the ones that change your answer. Tip: "I see you wrote in last Tuesday about the same export bug — let me check on the fix" is the difference between a generic support reply and one that feels like you actually care. 2. Previous conversations — the history that already exists Inside any conversation, the right sidebar has a Previous Conversations section. It lists every prior thread with this contact, regardless of channel. Why this matters Customers don't think in conversation IDs. They think "I told you about this last month." If you can pull up that thread in one click, you save them the frustration of re-explaining and you save yourself the trouble of asking. How to use it well - Skim, don't read. Look at the resolved threads' subject lines and labels. You're looking for patterns (this customer always asks about exports) more than specifics. Use Captain to summarize previous thread to make it easier. - Look at recent labels. If the last three conversations are labeled billing, today's "quick question" probably isn't. - Open the most recent one in a new tab if you need full context — keep your current conversation open in the original tab. 3. Custom Attributes — the data your replies depend on A custom attribute is a field you define on contacts or conversations to track something specific to your business. Standard contact fields (name, email, phone) are universal. Custom attributes are the things only your business cares about: subscription plan, signup date, MRR, last login, account ID, customer tier. Two flavors - Contact custom attributes — facts about the person (e.g. Plan, Signup Date, Lifetime Value). - Conversation custom attributes — facts about the conversation (e.g. Order Number, Bug Severity, Refund Amount). Setting one up 1. Go to Settings → Custom Attributes → Add Custom Attribute. 2. Choose Applies To: Contact or Conversation. 3. Pick a type: Text, Number, Link, Date, List (dropdown), or Checkbox. 4. Name it and add a description. Save. The new attribute now appears in the right sidebar of every contact or conversation, ready to be filled in. How custom attributes make you faster - They populate canned response variables — {{contact.custom_attribute.plan}} in a template auto-fills the customer's plan. - They power filters — "show me all open conversations from Enterprise plan customers." - They drive automation rules — "auto-assign Enterprise customers to the senior team." *Where the data comes from: for SaaS, you'll usually populate custom attributes via the *identify API when a logged-in user opens the chat widget. Attributes you fill in by hand also stick. 4. Bulk Actions — handling many conversations at once Some days the queue is fine. Other days you come back from lunch to forty new conversations from the same outage. Bulk actions are how you process them at scale. How to trigger bulk mode In the conversation list, hover over a conversation and a checkbox appears on the left. Tick one and a selection bar shows up at the top. Tick more, or hit Select all, to act on the whole batch. What you can do in bulk - Assign agent or team - Add or remove labels - Change status (resolve, snooze, reopen) 5. Saved filters — folders and contact segments You met Folders briefly in Lesson 2. Now we'll go deeper, and meet their cousin: Contact Segments. Folders (for conversations) A folder is a saved conversation filter. It always reflects current data, open the folder and you see the latest matches, not a frozen snapshot. Build one: 1. Click Conversations → Custom view → New filter. 2. Add conditions: status, assignee, inbox, labels, custom attributes, dates, etc. Combine them with AND / OR. 3. Click Save filter and give it a name. It now lives under Custom Folders in the left rail, one click away. Contact Segments A contact segment is the same idea, applied to your contacts directory. "All contacts on the Enterprise plan who have written in this month" becomes a one-click view you can revisit any time. Build one: 1. Go to Contacts → All Contacts → Filter. 2. Add conditions on standard fields and custom attributes. 3. Click Save filter as segment. Folders compound. The folders you save in week one will still be saving you time in year two. Build them as you go. 6. Global search Click on search input on the navigation from anywhere in the dashboard to focus the global search bar. It searches across: - Conversations — by message text, subject, or ID - Contacts — by name, email, phone, identifier - Articles — your Help Center content When to use search vs. filters - Search when you remember a specific phrase, name, or number. "Did Sarah mention the export bug?" - Filters/folders when you want to see a category of conversations. "All open billing tickets." If you're typing the same search query more than twice a week, that's a filter waiting to be saved as a folder. Mini-exercise (6 minutes) 1. Create a contact custom attribute called Plan (List type, options: Free, Pro, Enterprise). 2. On your test contact, set Plan = Pro. 3. Update your /hi canned response from Lesson 3(a) to include {{contact.custom_attribute.plan}} somewhere — e.g. "Hi {{contact.name}}, thanks for reaching out about your {{contact.custom_attribute.plan}} plan." 4. Trigger /hi in a conversation. The plan should auto-fill. 5. Build a filter: Status = Open AND Plan = Pro. Save it as a folder named Pro queue. 6. Send yourself two more test messages, tick their checkboxes in the queue, and bulk-apply a label practice. If all six worked, you've graduated from "I can use Chatwoot" to "I can run a shift in Chatwoot." Common questions A contact has duplicate entries — same person, two records. Why? Usually they wrote in from two different channels (e.g. email and website chat) before the system could match them. Open one record and use Merge contact to combine them. Conversation history from both is preserved. Can I edit standard contact fields? Yes. Click any field in the contact panel and edit inline. Changes save immediately. Can i use custom attributes in filters? Yes, they appear as filter options for both conversations and contacts. They're also exposed in canned response variables. Are bulk actions in conversations reversible? The action itself cannot be reversed, but the outcome is reversible. You can re-assign, remove a label that was added etc, but the history of the previous action remains in the activity messages. Why do I see different contacts in different inboxes? You don't. Contacts are account-wide. But conversations are scoped to inboxes. If you can see only some inboxes, you'll see only some of that contact's conversations. Ask an admin if you think you're missing inbox access. What's next You've now mastered the core agent toolkit, from layout (Lesson 2) to in-conversation tools (3a) to customer context (3b). In Lesson 4, we'll zoom out from individual conversations to the systems that handle volume: automations, SLAs, business hours, and the routing rules that make sure the right conversation reaches the right agent before you even have to think about it.
🔥 CaptainControl who Captain replies to and when
Discover You can choose which customers the assistant replies to (Audience) and when (Schedule). Conversations the assistant does not pick up stay Open for your team. Audience and Schedule belong to the assistant, so they apply to every inbox it is connected to. Plan & access: Startups, Business or Enterprise : Pricing & Plans. Administrators change these settings. Set up & try Before you start - An assistant connected to an inbox. See Set up a Captain assistant and connect your inboxes. - For a schedule, business hours turned on for that inbox, in the inbox's own settings. See Business Hours and Auto-Responder. - For audience rules on your own data, the contact custom attributes you want to use. See Understanding Contacts. Choose the audience 1. Go to Captain > Assistants, open the assistant, and go to Settings > Audience. 2. Choose: - Everyone: the assistant replies in every conversation in its inboxes. This is the default. - Specific audience: the assistant replies only to customers who match your conditions. 3. For a specific audience, add conditions. Each has an attribute, an operator and a value. - Contact attributes: Name, Email, Phone, Identifier, Country, City, Company, Created at, Last activity, Blocked, Labels. - Conversation attributes: Logged-in user, Browser language. Browser language comes from the website widget only, so it does not work for WhatsApp, Telegram, SMS or other channels. Labels means contact labels, not conversation labels. Logged-in user means the visitor was verified with identity validation (HMAC) in your website widget. - Your contact custom attributes. - The operators you can pick depend on the attribute. For example, Name offers only equal and not equal, Email also offers contains (use it to target a domain such as @acme.com), and dates offer greater than, less than and days before. 4. Choose whether customers must match all conditions or any of them. You can group conditions, for example "Plan is Pro AND (Country is US OR Country is Canada)". You can nest groups one level deep: a group can contain sub-groups, but a sub-group cannot contain another group. 5. Save. Choose the schedule 1. In the same Settings, open Schedule. 2. Choose Anytime (default), During business hours, or Outside business hours. 3. Save. Both rules must pass: the assistant replies only when the customer is in the audience and it is inside the schedule. Test it 1. Start a new conversation as a customer who matches, inside the schedule. The assistant replies. 2. Start one as a customer who does not match. It goes to your team with no assistant reply. Get value - Common setups: assistant only outside business hours; assistant only for logged-in website users; assistant for everyone except customers with a "VIP" label. - The rules are checked when a conversation starts or a resolved one reopens, not on every message. Once the assistant is in a conversation it stays until the conversation is resolved or handed off. Changes apply to new and reopened conversations only. - Text matching ignores case. Phone numbers match with or without the leading +. A checkbox attribute that was never set counts as unchecked. - The schedule follows the inbox's business hours and their time zone. If the time zone is wrong, the assistant can be off for most of your customers' day, with no warning. - These rules decide when the assistant joins on its own. An agent can still hand any conversation to the assistant from the assignee dropdown, and that ignores audience and schedule. See Set up a Captain assistant and connect your inboxes. Troubleshoot Symptom Likely cause What to do Assistant replies to someone you excluded The contact's details changed after the conversation started Expected. The rule applies from the next new or reopened conversation. Open the contact and check its attributes in the sidebar. Captain checks the values the contact had when the conversation started. Assistant is in a conversation it should have skipped An agent assigned the conversation to the assistant Expected. Manual assignment ignores audience and schedule Schedule has no effect Business hours are off for that inbox. Inboxes without business hours count as always covered Turn on business hours in the inbox settings Your attribute is not in the list It is a conversation custom attribute. Only contact custom attributes work Use a contact attribute instead. Create it in Settings › Custom attributes and choose Contact . Cannot save the audience A condition has no value (highlighted in red), or Specific audience has no conditions Complete or remove the condition. Is present and Is not present (date attributes only) need no value. Assistant is silent for everyone Audience or schedule excludes them Check both settings, then Troubleshoot Captain