Skip to main content
The Email feature allows you to turn any email address into a ChatbotX inbox. Incoming emails will be displayed as conversations, and your team can reply directly from ChatbotX using an SMTP connection to send notifications, order confirmations, documents, or automated email sequences.
Important note on Email Deliverability:
To ensure your emails are not marked as Spam and achieve the highest delivery rate, make sure you have configured domain authentication (SPF, DKIM, and DMARC) in your sending domain’s DNS manager before using it in a production environment.
If you do not have a dedicated SMTP provider yet, see the Emails configuration guide for recommended providers and connection string examples.
Below is a guide from basic to advanced for setting up and using the Email sending feature in ChatbotX.

Step 1: Get SMTP credentials from your provider

Depending on the Email service provider you are using, you will need the following basic information to connect with ChatbotX:
  • SMTP Host/Server
  • SMTP Port (Usually 465 for SSL or 587 for TLS)
  • SMTP Username (Usually your email address)
  • SMTP Password (App Password or API Key, not your main account login password)
Overview of popular SMTP Email service providers
Please expand (click) on your corresponding Email provider below to see how to get an App Password or SMTP Key.
1

Enable 2-Step Verification

Log in to your Google account, go to the Security section, and make sure you have turned on 2-Step Verification.
2

Create an App Password

Still in the Security section, find the App passwords section.
3

Get the password

Enter an app name (e.g., ChatbotX SMTP) and click Create. Google will provide you with a 16-letter string. This is your SMTP Password.
4

Connection parameters

  • Host: smtp.gmail.com
  • Port: 465 (SSL) or 587 (TLS)
  • Username: Your Gmail address.
See the official documentation for more details: Sign in with App Passwords - Google Account Help
1

Access security settings

Log in to your Microsoft account, go to Security > Advanced Security Options.
2

Create an App Password

Ensure Two-step verification is turned on. Then scroll down to the App passwords section and click Create a new app password.
3

Get the password

Save the newly created password. This is your SMTP Password.
4

Connection parameters

  • Host: smtp-mail.outlook.com (or smtp.office365.com for business accounts)
  • Port: 587 (TLS)
  • Username: Your Outlook/Office 365 email address.
See the official documentation for more details: Manage app passwords - Microsoft Support
1

Create an API Key

Log in to SendGrid, go to Settings > API Keys, and click Create API Key.
2

Assign permissions

Select Restricted Access, grant Mail Send > Full Access, and proceed to create.
3

Get the information

Copy the API Key string starting with SG.. This will be your SMTP Password.
4

Connection parameters

  • Host: smtp.sendgrid.net
  • Port: 465 (SSL) or 587 (TLS)
  • Username: apikey (Write exactly “apikey”, not your email).
See the official documentation for more details: Sending Email with SMTP - Twilio SendGrid Docs
1

Access SMTP Settings

In the AWS console, open the Amazon SES service, and navigate to SMTP Settings.
2

Create SMTP credentials

Click Create My SMTP Credentials. The system will create a new IAM user with permissions to send emails.
3

Get Username and Password

Download or immediately copy the provided SMTP Username and SMTP Password on the final screen.
4

Connection parameters

  • Host: (Depends on your Region, e.g., email-smtp.us-east-1.amazonaws.com)
  • Port: 465 or 587
  • Username: The newly created SMTP Username string.
  • Password: The newly created SMTP Password string.
See the official documentation for more details: Obtaining SMTP credentials - Amazon SES Developer Guide
1

Access SMTP & API

Log in to Brevo, click on your account name in the top right corner > SMTP & API.
2

Generate a new SMTP key

Switch to the SMTP tab, and click Generate a new SMTP key.
3

Get the password

Name the key and copy the newly generated key string.
4

Connection parameters

  • Host: smtp-relay.brevo.com
  • Port: 587
  • Username: Your Brevo login email.
  • Password: The newly created SMTP key string.
See the official documentation for more details: Set up Brevo SMTP - Brevo Help Center

Step 2: Create an Email Channel

1

Add a new Email channel

In ChatbotX, go to Settings → Channels → click Add SMTP.
Add a new email channel
2

Choose a Provider

Find and select your Email service provider from the dropdown list (e.g., Google (Gmail), Outlook, SendGrid, Amazon SES,…).
Choose SMTP provider
3

Enter SMTP connection details

Fill in the SMTP credentials obtained in Step 1. The fields include:
Enter SMTP connection details
FieldDescription
HostThe provider’s SMTP server (e.g., smtp.gmail.com)
PortThe SMTP connection port (usually 587 or 465)
UsernameSMTP login name (usually the email address)
PasswordApp Password or SMTP Key (not the main login password)
From AddressThe email address that will appear as the sender when customers receive the email (e.g., noreply@yourdomain.com)
4

Connect

Click Connect to finish the SMTP configuration setup.

Step 3: Request permission (Opt-In) and Collect Customer Email

Before you can send Emails to customers via ChatbotX Flow, you must have two elements: Storing their Email address and the Customer has agreed to receive emails (Email Opt-In).
1

Collect Email using Get User Data

Use the Get User Data block in the flow to ask for the customer’s email address. In the Reply Format section, select the Email format and save the result to an Output Custom Field (e.g., email field).
Get User Data block
2

Mark Email Opt-in

After the customer provides their email, you need to create an Action block.
  • Click the + sign and select Perform Action.
  • Click the newly created Action block, select Email Actions.
  • Select Opt In Email. This status is mandatory for the system to allow sending emails later.
Email Opt-in

Step 4: Set up automated Email sending in Flow

Once customers have agreed to receive emails, you can automatically send emails anywhere in the Flow.
1

Add the Send Mail node

In the Flow workspace, click the + button to open the node menu. Select Send Mail from the list.
Send Mail node in the Flow node menu
2

Choose the sending channel and topic

In the Send Mail configuration panel, choose the SMTP Channel that should send this email. If you have connected more than one SMTP channel, select the sender that matches this Flow.You can also choose a Topic ID. An Email Topic helps you track email performance and run actions based on how contacts interact with your emails.
3

Fill in the email details

Complete the main fields in the Send Mail panel:
  • From: The sender email address. You can use a fixed address or a variable such as {{email}} if your Flow needs a dynamic sender.
  • To: By default, the system will send to the current user’s email (if provided). You can also set it to send internal notification emails to your team.
  • Subject: The subject of the email. You can use variables (e.g., {{first_name}}) to personalize the subject.
  • Preheader: The short preview text that appears in many inboxes under the subject line.
send_mail_configuration_panel
4

Compose the email content

Build the email body with the editor inside the Send Mail panel. You can add Heading, Text, Image, Button, Line, Spacing, and Code blocks.Use variables from the contact profile or Custom Fields to personalize the message, such as order details, customer name, or support ticket information.
compose_the_email_content
5

Test and Publish

Click your Flow’s Publish button. Try interacting with the bot to verify whether the system has successfully sent the email to your inbox.

Manage Email Topics in Flows

Email Topics help you group emails sent from Flows and track how contacts interact with them. Use topics when you want to compare email performance across campaigns, order updates, onboarding messages, or internal notifications. You can manage Email Topics from the Flows menu.
Email Topics tab in the Flows menu
1

Open Flows

In the left sidebar, click Flows.
2

Open Email Topics

In the Flows page, select the Email Topics tab.
3

Add a topic

Click Add to create a new Email Topic.
4

Name the topic

Enter a clear topic name, such as Order confirmation, Welcome email, or Monthly promotion.
5

Create the topic

Click the create button to save the topic. The topic is then available in the Topic ID field inside the Send Mail node.

Email Topic statistics

The Email Topics page includes a statistics table for each topic.
Email Topics analytics table with Sent Delivered Seen and Clicked columns
ColumnDescription
NameThe Email Topic name
SentThe number of emails sent with this topic
DeliveredThe percentage of emails delivered successfully
SeenThe percentage of emails opened or seen by contacts
ClickedThe percentage of contacts who clicked a link or button in the email

Create a topic from Send Mail

When you configure a Send Mail node, you can select an existing topic in Topic ID. If the topic does not exist yet, click Add New next to the field to create it quickly without leaving the Flow editor.
Add New shortcut next to Topic ID in the Send Mail node

Troubleshooting

If the system cannot send the email successfully, please check some of the following common cases:
  • Cause: Incorrect SMTP Username or Password.
  • Solution: Do not use your main login password. Ensure you have created and used a separate App Password or API Key/SMTP Key as instructed in Step 1.
  • Cause: Incorrect SMTP Port or blocked by a firewall.
  • Solution: Make sure the Port matches the correct encryption standard. For example, Port 465 must use SSL, Port 587 must use TLS. If using Google Workspace, ensure IMAP/SMTP access is not disabled by the administrator.
  • Cause: The customer has not been granted permission (Email Opt-in) in the system.
  • Solution: Check the Audience data to see if the user has an Email and the Opted-in status. Ensure your Flow has a step passing through the Set Email Opt-In Action before reaching Send Mail.
  • Solution: As recommended at the beginning, configure DNS records (SPF, DKIM) for the domain displayed on the sending email (From Email). Avoid sending emails that contain too many images without text, or using “spammy” words.