Search Results for 'wordpress'

Found 143 results

📌 Other topics

How to Use Your Coupon Code on Chatwoot?

Introduction This guide will walk you through the process of applying coupon codes in Chatwoot to access discounted services. Step-by-Step Instructions 1. Access Settings: Click the "Settings" option in the left navigation bar 2. Open Billing: Navigate to the "Billing" section by scrolling down 3. Access Billing Portal: Select "Go to billing portal" 4. Add Code: Click the "Add promotional code" button 5. Enter Code: Input your coupon code in the provided field 6. Complete: Click "Apply" followed by "Submit" to activate the discount After Applying the Coupon Once successfully applied, you should see: - The discount reflected in your total amount - A confirmation message of successful application - The updated pricing in your billing details

⚙️ How To

How to Remove the Free Usage Limit Exceeded Message in Chatwoot

Chatwoot offers a generous Hacker Plan (free tier) for all users. However, this free plan includes specific limitations to ensure fair usage across all accounts. Free Plan Limitations The Hacker Plan includes the following restrictions: - Maximum of 2 agents per account - 1 inbox only - specifically the Live Website Chat inbox - No access to other inbox types such as WhatsApp, Facebook Messenger, API, or Email inboxes - No access to PRO features like Captain AI, advanced roles, and other premium functionality What triggers the usage limit message? If you exceed any of these limitations, your account will display a "free usage limit exceeded" message, restricting access to certain features. Two Ways to Remove the Message You have two options to resolve the usage limit exceeded message: 1. Upgrade to a paid plan (recommended for growing teams) 2. Manually remove PRO features to comply with free plan limits Option 1: Upgrade Your Account to a Paid Plan Step 1: Access Billing - Click the "Open Billing" button within the free usage exceeded message - This will redirect you to your billing page Step 2: Open Billing Portal - On the billing page, click "Go to Billing Portal" Step 3: Update Subscription - In the billing portal, click "Update Subscription" Step 4: Select Your Plan - Choose a paid plan that meets your needs Step 5: Complete Payment - Click "Continue" to proceed - Fill in your billing information accurately - Complete the purchase process Verification Once your paid plan is active, the free usage limitation message will be removed automatically. You can then return to your Chatwoot dashboard and confirm that all features are now accessible. Option 2: Manually Remove PRO Features If you prefer to stay on the free plan, follow these steps to remove features that exceed the Hacker Plan limits. Remove Extra Inboxes Step 1: Access Inbox Settings - Navigate to Settings in your left sidebar - Click on Inbox Settings Step 2: Review Your Inboxes Check your current inbox configuration: - Ensure you have only 1 inbox - Verify the inbox type is Live Website Chat Step 3: Remove Extra Inboxes - Identify any additional inboxes beyond the first one - Click the trash icon next to each extra inbox name - Confirm the deletion when prompted Remove Extra Agents Step 4: Access Agent Settings - Navigate to Settings in your left sidebar - Click on Agent Settings Step 5: Review and Remove Extra Agents - Check if you have more than 2 agents in your account - Identify which agents to remove (keep the most essential ones) - Click the trash icon next to each extra agent's name - Confirm the removal when prompted Verification After removing extra inboxes and agents, the free usage limitation message should disappear. Return to your Chatwoot dashboard and verify that you can access all free-tier features. Success! Your account should now be compliant with the free plan limitations, and you can continue using Chatwoot without restrictions.

🚀 Chatwoot 101

Lesson 2: Dashboard Basics

In Lesson 1 you sent your first reply. That's enough to support one customer. To support fifty without losing your mind, you need to know your way around the dashboard. This lesson is the map. What you'll learn - The four regions of the Chatwoot dashboard and what each one is for - How to find any conversation fast — by status, assignee, inbox, label, or text - The four conversation statuses and when to use each - The difference between Mine, Unassigned, All, Mentions, and Unattended views - How to set your availability and manage notifications - The keyboard shortcuts that pay for themselves on day one You'll need: Your inbox from Lesson 1 and at least one test conversation in it. (Send yourself two or three messages from the widget so the dashboard isn't empty.) The four regions of the dashboard Almost every screen in Chatwoot is laid out the same way. Once this clicks, the rest of the product becomes obvious. 1. Navigation rail (far left) Vertical strip of icons. Top to bottom: Inbox, Conversations, Captain (if AI is enabled), Contacts, Reports, Campaigns, Help Center, and Settings. This is how you switch pages — everything else changes based on where you are here. 2. Conversation list (middle-left) A scrollable list of conversations with filters and tabs at the top. This is where you live during a shift. 3. Conversation view (center) The actual messages plus the reply box. Tabs at the top let you switch between Reply, Private Note, and (where supported) Email mode for outbound messages. 4. Context panel (right) Everything you might need to know about the customer — contact details, previous conversations, custom attributes, conversation actions (assign, label, team, status), and any dashboard apps you've added. Tip: You can collapse the right panel. Useful on small screens or when you're focused purely on the message thread. The conversation list, in detail This is the panel you'll spend the most time scanning. Three things to learn: Tabs at the top: who owns what Tab Shows Mine Conversations assigned to you Unassigned Conversations no agent has picked up yet All Every conversation in the inbox(es) you can see Most teams build their day around Mine (work the queue you own) and Unassigned (grab the next one when Mine is empty). Status filter: where in the lifecycle Right under the tabs, switch between: - Open — the customer is waiting on a reply - Pending — bot or AI is handling it, not yet ready for a human - Snoozed — set aside until a date/time or until the customer replies - Resolved — done Two more views you should know about - Mentions — conversations where a teammate @-mentioned you in a private note. Treat this like email — check it daily. - Unattended — assigned conversations that still haven't gotten a first reply. This is where managers find dropped balls. Both live in the navigation as separate views, not under the Mine/Unassigned/All tabs. Filters, folders, and search Quick filters (left sidebar) Below the Conversations entry in the nav, you'll find a tree: - Inboxes — filter by a specific channel (just Email, just Website, etc.) - Labels — filter by a label you've applied (bug-report, vip, etc.) - Teams — filter by the team handling the conversation - Folders — filters you've saved Folders Anytime you build a useful filter, click Save filter as folder and give it a name. It appears under Folders for one-click access. Examples worth saving on day one: - VIP customers waiting — label vip + status Open - Stuck in pending — status Pending + last activity > 1 day - My snoozed — assignee Me + status Snoozed Search The search bar at the top of the dashboard searches across conversations, messages, contacts, and articles. Conversation statuses, and when to use which You'll set conversation status many times a day. Pick the right one and your queue stays honest. Status Use it when… What it does Open The customer is actively waiting Default state — visible in everyone's queue Pending Captain or a bot is handling, and the conversation isn't ready for an agent Hides from agent default views Snoozed You're waiting on the customer or internal team Auto-reopens on customer reply or timer Resolved The issue is handled Drops out of Open; can reopen automatically if the customer replies Rule of thumb: if you wouldn't want to see this conversation again today, snooze it. The Open queue is for things that need attention now. Your status: Online, Busy, Offline Bottom left of the dashboard, click your avatar to set: - Online — you're available; auto-assignment sends you new work - Busy — you're around but heads-down; the system avoids assigning new conversations to you - Offline — you're done for the day; new work goes to others Your status is also visible to teammates, so they know when to ping you. Auto-offline: Chatwoot will mark you offline automatically if you close the tab or go idle, so you won't accidentally hold conversations after logging off. My Inbox My inbox in the navigation shows in-app notifications: new assignments, mentions, conversation creations, and SLA alerts. Click any item to jump straight to the conversation. Notifications You also have four notification channels you can configure from Profile Settings → Notifications: - Audio — alert sound on the dashboard - Email — for things you'd want to see from your inbox - Push — browser push, even when the dashboard isn't open A common starting point: enable Push for Conversation assigned to me and Mention, leave audio on, skip the rest until they prove useful. Mini-exercise (3 minutes) Try these in order. They cement everything above: 1. Send yourself two new test messages from the widget so the queue isn't empty. 2. From the dashboard, open the second one and assign it to yourself. 3. Apply a label called practice. 4. Snooze it until tomorrow morning. 5. Click into Mine, then Snoozed — your conversation should be there. 6. Build a filter: status = Open, label = practice. Save it as a folder called Practice queue. If everything in that list felt natural, you're ready to actually run a shift. Common questions Why don't I see all my team's conversations? You only see inboxes you've been added to. If a conversation is missing, you may not be a member of that inbox — ask an admin. My queue feels overwhelming. What do I work first? Default order: Mentions → Unattended → Mine (Open) → Unassigned. Mentions and unattended are signals that something is off; Mine is your committed work; Unassigned is "new fuel" once the first three are clear. A conversation I resolved came back. Did I do something wrong? No — that's by design. If a customer replies after you resolve, Chatwoot reopens the conversation automatically so it doesn't get lost. Feeling confident about the dashboard? That probably took 5 minutes! Let us understand all the core features next. Go to Lesson 3A now.

âť“ Help Center

Recommend categories and articles

By default, your help center home page shows the first few categories and your most-viewed articles. If you want to highlight specific content instead, you can choose exactly what appears. For each locale, you can recommend up to 3 categories and 6 articles, and arrange them in any order. Set recommended content 1. Go to Help Center → Locales. 2. Click the ⋯ menu for the locale and select Select recommended content. 3. Under Recommended categories, click Add another... and choose a category. Use the search box if needed. 4. Under Recommended articles, add the articles you want to feature. 5. Drag and drop categories or articles to change their order. 6. Click Save recommendations. Recommendations are saved per locale, so each locale can feature different content. What visitors see Your recommended categories appear on the help center home page instead of the default category list. Recommended articles replace the Popular articles section with Recommended articles. Good to know - If you don't add any recommendations, the help center uses the default content. - Categories and articles work independently. You can recommend either one or both. - Only published articles are shown. Draft or deleted articles are skipped automatically. - Recommended categories are shown even if they don't contain any published articles. - Recommendations are available for every locale, including drafts.

🔥 Captain

Updating robots.txt to Allow Chatwoot Assistant to Crawl Your Website

This guide has moved. The latest steps are in Add documents to Captain's knowledge.

Whatsapp

Move a Quick setup inbox to manual setup

Reconnect an inbox created with Quick setup so it uses your own Meta app instead. Your inbox, conversations and settings stay as they are. When you would do this Chatwoot shows a Manual setup recommended banner on the inbox when Meta restrictions on the shared Quick setup app could affect it. Connecting through your own Meta app protects the inbox from those restrictions. Plan & access - Available on Chatwoot Cloud to administrators only. See Pricing & Plans. - Available when the Manual setup recommended banner appears in the inbox settings. The banner is not a setting you can switch on: it appears for Quick setup (Embedded Signup) WhatsApp Cloud inboxes once your account has been given access, the number is not using Coexistence, and the connection has no authorization error. Contact support to have your inbox assessed. - Not for Coexistence numbers. If your number is also used in the WhatsApp Business app, contact support before doing anything. What changes and what stays Stays the same Is updated Conversations, contacts, collaborators, routing, business hours, CSAT and bot settings, and the customer-facing phone number WhatsApp Business Account ID, Phone Number ID and access token The webhook for your own Meta app is not set up automatically. Contact support before you start, so the webhook is set up for your Meta app before you move the inbox. After the move, test it as described in Check it worked. Before you start Contact support first. Support helps you set up the webhook for your own Meta app. Do not start the move until support confirms the webhook is ready. Get your Meta app, Phone Number ID, WhatsApp Business Account ID and permanent access token ready. Follow the manual setup guide up to Verify details. Your token must include whatsapp_business_messaging. Add whatsapp_business_management too, or templates will not sync. Move the inbox 1. Go to Settings › Inboxes and open the WhatsApp inbox. 2. On the Manual setup recommended banner, click Start manual migration. 3. Before you start: read what will be kept and updated, then continue. 4. Business details: enter the WABA ID and Phone Number ID. The Display phone number is shown for reference and cannot change. 5. Access token: paste your permanent access token. 6. Review migration: check the details and click Reconnect WhatsApp inbox. Chatwoot checks your token, account and number with Meta before changing anything. If a check fails, the inbox keeps its current connection. Check it worked - A new customer message arrives in the inbox - A reply from Chatwoot arrives on the customer's phone - You can send a template - Sync Templates in the Configuration tab brings in your templates

⚡ Apps and Integrations

How to use webhooks?

Webhooks are HTTP callbacks that are set up for each account. These are triggered when actions such as creating a message occur in Chatwoot. Multiple webhooks can be created for a single account. How to add a webhook? Step 1. Go to Settings → Integrations → Webhooks. Click on the "Configure" button. Step 2. Click on the "Add new webhook" button. A modal will open up. Here, input the URL to which the POST request should be sent. Next, you need to select the events you want to subscribe. This option would allow you to only listen to the relevant events in Chatwoot. Chatwoot will send a POST request with the following payload to the configured URLs for various updates in your account. A sample webhook payload { "event": "message_created", // The name of the event "id": "1", // Message ID "content": "Hi", // Content of the message "created_at": "2020-03-03 13:05:57 UTC", // Time at which the message was sent "message_type": "incoming", // This will have a type incoming, outgoing or template. The user from the widget sends incoming messages, and the agent sends outgoing messages to the user. "content_type": "enum", // This is an enum, it can be input_select, cards, form or text. The message_type will be template if content_type is one og these. Default value is text "content_attributes": {} // This will an object, different values are defined below "source_id": "", // This would the external id if the inbox is a Twitter or Facebook integration. "sender": { // This would provide the details of the agent who sent this message "id": "1", "name": "Agent", "email": "agent@example.com" }, "contact": { // This would provide the details of the user who sent this message "id": "1", "name": "contact-name" }, "conversation": { // This would provide the details of the conversation "display_id": "1", // This is the ID of the conversation which you can see in the dashboard. "additional_attributes": { "browser": { "device_name": "Macbook", "browser_name": "Chrome", "platform_name": "Macintosh", "browser_version": "80.0.3987.122", "platform_version": "10.15.2" }, "referer": "<http://www.chatwoot.com>", "initiated_at": "Tue Mar 03 2020 18:37:38 GMT-0700 (Mountain Standard Time)" } }, "account": { // This would provide the details of the account "id": "1", "name": "Chatwoot", } } Supported webhook events in Chatwoot Chatwoot publishes various events to the configured webhook endpoints. If you want to configure a webhook, refer to the guide here. Each event has its payload structure based on the type of model they are acting on. The following section describes the main objects we use in Chatwoot and their attributes. Objects An event payload may include any of the following objects. The various types of objects supported by Chatwoot are listed below. Account { "id": "integer", "name": "string" } Inbox { "id": "integer", "name": "string" } Contact { "id": "integer", "name": "string", "avatar": "string", "type": "contact", "account": { // <...Account Object> } } User { "id": "integer", "name": "string", "email": "string", "type": "user" } Conversation { "additional_attributes": { "browser": { "device_name": "string", "browser_name": "string", "platform_name": "string", "browser_version": "string", "platform_version": "string" }, "referer": "string", "initiated_at": { "timestamp": "iso-datetime" } }, "can_reply": "boolean", "channel": "string", "id": "integer", "inbox_id": "integer", "contact_inbox": { "id": "integer", "contact_id": "integer", "inbox_id": "integer", "source_id": "string", "created_at": "datetime", "updated_at": "datetime", "hmac_verified": "boolean" }, "messages": ["Array of message objects"], "meta": { "sender": { // Contact Object }, "assignee": { // User Object } }, "status": "string", "unread_count": "integer", "agent_last_seen_at": "unix-timestamp", "contact_last_seen_at": "unix-timestamp", "timestamp": "unix-timestamp", "account_id": "integer" } Message { "id": "integer", "content": "string", "message_type": "integer", "created_at": "unix-timestamp", "private": "boolean", "source_id": "string / null", "content_type": "string", "content_attributes": "object", "sender": { "type": "string - contact/user" // User or Contact Object }, "account": { // Account Object }, "conversation": { // Conversation Object }, "inbox": { // Inbox Object } } A sample webhook payload { "event": "event_name" // Attributes related to the event } Webhook Events Chatwoot supports the following webhook events. You can subscribe to them while configuring a webhook in the dashboard or using the API. conversation_created This event will be triggered when a new conversation is created in the account. The payload for the event is as follows. { "event": "conversation_created" // <...Conversation Attributes> } conversation_updated This event will be triggered when there is a change in any of the attributes in the conversation. { "event": "conversation_updated", "changed_attributes": [ { "<attribute_name>": { "current_value": "", "previous_value": "" } } ] // <...Conversation Attributes> } conversation_status_changed This event will be triggered when the status of the conversation is changed. Note: If you are using agent bot APIs instead of webhooks, this event is not supported yet. { "event": "conversation_status_changed" // <...Conversation Attributes> } message_created This event will be triggered when a message is created in a conversation. The payload for the event is as follows. { "event": "message_created" // <...Message Attributes> } message_updated This event will be triggered when a message is updated in a conversation. The payload for the event is as follows. { "event": "message_updated" // <...Message Attributes> } webwidget_triggered This event will be triggered when the end user opens the live-chat widget. { "event": "webwidget_triggered", "id": "", "contact": { // <...Contact Object> }, "inbox": { // <...Inbox Object> }, "account": { // <...Account Object> }, "current_conversation": { // <...Conversation Object> }, "source_id": "string", "event_info": { "initiated_at": { "timestamp": "date-string" }, "referer": "string", "widget_language": "string", "browser_language": "string", "browser": { "browser_name": "string", "browser_version": "string", "device_name": "string", "platform_name": "string", "platform_version": "string" } } } conversation_typing_on This event is triggered when an agent starts typing in a conversation. It could be either a private note or a message to the customer. You can use the is_private flag to distinguish between the two. { "event": "conversation_typing_on", "conversation": { ...<Conversation Object> }, "user": { ... <User / AgentBot / Captain Object> }, "is_private": true } conversation_typing_off This event is triggered when an agent stops typing or when they leave the conversation window. { "event": "conversation_typing_off", "conversation": { ...<Conversation Object> }, "user": { ... <User / AgentBot / Captain Object> }, "is_private": true } Verifying webhooks Chatwoot signs every outgoing webhook request so your server can verify that the payload was sent by Chatwoot and has not been tampered with. The secret is shown to you once the webhook is created, and you can view it again on the webhook edit form. Every webhook request sends the following headers, which can be used to compute the HMAC signature of the payload - X-Chatwoot-Signature: HMAC-SHA256 signature prefixed with sha256= - X-Chatwoot-Timestamp: Unix timestamp (seconds) when the request was signed - X-Chatwoot-Delivery: Unique delivery ID for the webhook event (when available) The signature is computed as: sha256=HMAC-SHA256(webhook_secret, "{timestamp}.{raw_body}") Where: - webhook_secret is the secret associated with the webhook - timestamp is the value of the X-Chatwoot-Timestamp header - raw_body is the raw JSON request body (not parsed/re-serialized) Verification Steps 1. Extract X-Chatwoot-Signature and X-Chatwoot-Timestamp from the request headers 2. Read the raw request body as bytes (do not parse and re-serialize) 3. Compute the expected signature: sha256=HMAC-SHA256(secret, "{timestamp}.{raw_body}") 4. Compare the computed signature with the received signature using a constant-time comparison 5. Optionally, reject requests where the timestamp is too old to prevent replay attacks Examples Ruby def verify_signature(raw_body, timestamp, received_signature, secret) expected = "sha256=#{OpenSSL::HMAC.hexdigest('SHA256', secret, "#{timestamp}.#{raw_body}")}" ActiveSupport::SecurityUtils.secure_compare(expected, received_signature) end Python import hmac import hashlib def verify_signature(raw_body: bytes, timestamp: str, received_signature: str, secret: str) -> bool: message = f"{timestamp}.".encode() + raw_body expected = "sha256=" + hmac.new(secret.encode(), message, hashlib.sha256).hexdigest() return hmac.compare_digest(expected, received_signature) Node.js const crypto = require("crypto"); function verifySignature(rawBody, timestamp, receivedSignature, secret) { const message = `${timestamp}.${rawBody}`; const expected = "sha256=" + crypto.createHmac("sha256", secret).update(message).digest("hex"); return crypto.timingSafeEqual( Buffer.from(expected), Buffer.from(receivedSignature) ); } Go import ( "crypto/hmac" "crypto/sha256" "encoding/hex" "fmt" ) func verifySignature(rawBody []byte, timestamp, receivedSignature, secret string) bool { mac := hmac.New(sha256.New, []byte(secret)) mac.Write([]byte(fmt.Sprintf("%s.%s", timestamp, rawBody))) expected := "sha256=" + hex.EncodeToString(mac.Sum(nil)) return hmac.Equal([]byte(expected), []byte(receivedSignature)) } Important Notes - Always use the raw request body for verification. Parsing the JSON and re-serializing it may change key ordering, whitespace, or unicode escaping, which will produce a different signature. - Always use constant-time comparison (e.g., hmac.compare_digest, crypto.timingSafeEqual, ActiveSupport::SecurityUtils.secure_compare) to prevent timing attacks. - Consider rejecting requests with timestamps older than 5 minutes to mitigate replay attacks.

đź’¬ Website live chat

Website live chat settings explained

This document will help you fully set up your website live chat. It explains how to create and use the additional settings for a desired website inbox. Compatibility and requirements​ The web dashboard and the live chat widget work with most modern web browsers. Here are the supported browser versions: - Mozilla Firefox: v52 onwards - Google Chrome: v57 onwards - Chromium: v57 onwards - Apple Safari: v14.1 onwards - Microsoft Edge: v16 onwards Here are the supported mobile OS versions for the Chatwoot mobile app: - Android: v5.0 onwards - iOS: v11.0 onwards How to create a website channel on Chatwoot? Step 1. Go to the Inboxes page. Go to Settings → Inboxes → "Add Inbox" button. Step 2. Click on the "Website" icon. Step 3. Enter your website name, URL, and other details as described below. The available fields are explained below. 1. Website name Enter your website's name. For e.g., Example Inc. 2. Website domain Enter your website's URL. For e.g., www.example.com 3. Widget color Click the pallet and select a color for your website live chat widget. 4. Welcome heading Write a greeting message for your customers. For e.g., Hello there 👋 5. Welcome tagline For e.g.,We are here to help you with your questions. Ask us anything, or share your feedback. 6. Enable/disable channel greeting Enable to Send Greeting message when customer starts conversation 7. Channel greeting message Give a greeting to start the conversation. For e.g., Hi. How can we help you? Once all details are entered, click the “Create Inbox” Button. Step 4. "Add agents" to your website inbox. The conversations will be routed to agents only if they are associated with the inbox. Even if you are an Administrator, you need to add yourself as an agent to the Inbox to see the Inbox on your screen. Select the Agents from the drop-down and click on Add agents. If agents have not been added, follow the steps to add agents. Step 5. Hooray! You have successfully created a website inbox. Now, add the widget to your website. Copy and paste the code snippet shown on the page to your website and start supporting your customers. You can click on the Copy button to copy and then paste in the root file of your website. If you click the "More settings" Button, you will be taken to the Additional Settings for Inbox. If you click on the "Take me there" button, you will be taken to the newly created Inbox. Step 6. If you want to update the agents with access to the inbox, go to Settings → Inboxes. You will be able to see your website inbox listed there. Click on Settings. You will be able to see the code as well as the list of agents who have access to the inbox. Complete the website inbox setup You already have a functional website inbox. Let's take a look at the additional Inbox settings.​ On your Inboxes screen, click the gear icon to reach the Settings page. You will see the following screen: Settings tab Scroll down to see more settings, where you can set up the various notifications you would like to receive when your website inbox starts functioning. Here are a couple of examples for your understanding: Enable email collect box is enabled by default. This means an automatic message to collect the e-mail id will be displayed once the customer starts a conversation. The customer/end user will receive a prompt to enter an e-mail id. Enable CSAT. Once you enable this, your Customer Satisfaction survey will be launched every time a ticket is resolved. The CSAT results can be viewed later in the Reports section. Click the "Update" button to save the changes you have made. Collaborators tab​ Click on the "Collaborators" tab. Here, you can add Agents to the Inbox or delete Agents already added in the Inbox. You can also enable or disable the automatic assignment of new conversations to the agents added to this inbox. Click on Update to save the changes. Business Hours tab​ Click on the "Business Hours" tab. In this section, you can set the working hours of your team. Check the check box for Enable business availability for this inbox if you have well-defined business hours. Once the box is checked, the a new section will open up, like shown below. You can write your message to be displayed to the customer during OFF business hours. Note: When Captain is enabled on an inbox, the unavailability message is automatically suppressed. Captain will handle conversations directly, even outside business hours. Unavailability message will only be sent if Captain hands off the conversation to a human agent or if Captain is not configured for the inbox. You can also select the available business hours for each day of the week, along with the proper time zone. Click on the Update Business Hour Setting Button. Pre Chat Form tab​ Click on the "Pre Chat Form" tab. With this, you can collect information about your customers as soon as they enter your live chat window/website widget. You can use this to collect name, e-mail address, and more before beginning the chat. The fields as seen are explained below: 1. Enable pre chat form Select Yes or No. Yes, if you want to use the prechat form. No if you're going to keep it disabled. 2. Pre Chat Message Write a message to start a conversation with the customer. For e.g., Hi, We need some information to serve you better. 3. Pre chat form fields Check the needed ones. Imp: "Name," "Email" and "Phone" are the only standard attributes for the pre chat form. The other fields are created through custom attributes. If you need custom fields in your form, create them as custom attributes first. Click the "Update" button. Pre Chat Form is enabled now. Configuration tab​ Click on the “Configuration” tab. You can find the code snippet to be copied to the website here. You can click on the Copy button to copy the code and paste it into the root file of your website. Widget Builder tab​ You can customize your web widget with simple settings given on this page. You will be able to see your changes live.

Whatsapp

Twilio content templates

This guide has moved. Twilio content templates are covered in Templates and the 24-hour window.

📌 Other topics

Which cookies are used by Chatwoot?

Chatwoot uses the following cookies. Chat Widget​ cw_conversation: This cookie lets Chatwoot persist the conversation when the contact navigates through the webpages or revisits the website later. cw_user_{identifier}: This cookie is used to cache the contact details if a contact is identified via the setUser SDK method. Agent Dashboard​ _chatwoot_session: Used by the Chatwoot Super Admin panel to persist the user session. cw_d_session_info: Used by the Agent Dashboard to store the logged-in user's session.