The Basic Ecommerce Bot Template is based on the Basic Support Bot Template. Its ecommerce-related content is an addition to the essential support content. To access the Template, please navigate to the Codemonkey Platform and select the Basic Ecommerce Bot Template from the "Create new bot" menu at the top of the Bot List page.
The bot will help solve problems related to ecommerce, and by incorporating end user input such as an order ID, it guides the end user to or through a process. Here is an overview of its capabilities:
- Answers ecommerce related FAQs as a smart assistant
- Understands end users' needs with the help of AI
- Links to human support
- Integrates with third-party systems to gain additional information
In this article, we will cover the following:
- Step-by-step walkthrough of building a Basic Ecommerce Bot
- Groups color framings
- KPI tag indications
- Selected Module configurations
- Modules with Generic Cards
- Global Connections configuration
Step-by-step walkthrough of building a Basic Ecommerce Bot
Here, we've provided a step-by-step walkthrough of building a bot from the Basic Ecommerce Bot Template.
Find the <md>Read me before getting started: Building Guide for Basic E-Commerce Bot Template Module. Hover over the Module – a menu will appear. Click on the checkbox on the right side of the menu, titled “Test flow from here”. This article is linked there - please read the other sections below to gain an overview of this Template's features. You can close the chat when you’re finished, then continue to step 2.
On the canvas, find the Module titled <md>Starting Module: Welcome. By double-clicking on it, you open the Module for editing. Change the Bot Messages to your desired greeting, and click “Ok” when you’re done. Get more information on how to edit a Message in a Module.
Save your changes by clicking the Save button in the Navigation bar (Shortcut Ctrl + S / ⌘ Command + S also works).
Now, change the name of the Bot. Next to your Bot Avatar in the Navigation bar, there's currently a placeholder (“Basic E-Commerce Bot Template Clone”). Click in this box, delete the placeholder, then type in your desired name. The name is internal, so it will only be visible to you and your team.
Find the Module titled <md>Information on shipping costs and edit the Bot Message by adding a Generic Card with a link to your organization's homepage. Using Generic Cards will give your links a more engaging look.
Configure the list of topics your Bot should cover in the Module named <md>List of topics or Menu, paying attention to the Suggested Replies you want your customer to see. It is good practice to use numbers in Suggested Replies, but it is of course possible to type in the desired call to action instead. Try deleting some and creating new ones.
Without leaving this Module, go to the Connections tab. Note that the Suggested Replies of step 6 appear here. Click on each of them to create new Connections. Adjust them as needed (learn how to do it). Go through the other Connections as well – you may want to change them based on other Modules you create or delete, which we’ll cover next.
Create any additional Modules you need, or delete those you do not need. There are three different ways to create a new Module:
From the canvas:
- Right-click on the canvas > Statement; or
- Right sidebar menu > Add new Module > Statement
- Within a Module:
When setting up the Go-to Connection > Select Module to go to > Create New Module. Please disregard the “Collector” option while creating new Modules for now. This is a more advanced feature, and we will get back to it during our workshops. Don’t forget to save your changes!
- When setting up the Go-to Connection > Select Module to go to > Create New Module. Please disregard the “Collector” option while creating new Modules for now. This is a more advanced feature, and we will get back to it during our workshops. Don’t forget to save your changes!
- From the canvas:
Notice the colored frames – Groups – of different Modules, and read about KPI tags. Consider the most logical way to categorize your Bot, and apply it using Groups and KPI tags. This will help you navigate your Bot more easily when it becomes more extensive and complicated.
Next, set up Global Connections. These connections evaluate the End user input and send the End user to a corresponding Module, regardless of which Module they are currently in. In other words, the Bot would be able to recognize a specific topic at any point during the conversation.
Then, decide how your Bot should react when it does not understand the End user's input. It is important to ensure a natural progression of the conversation, such as the Bot acknowledging its inability to recognize user intent. This will be handled by the Fallback Flow, which you can see on the left side of your canvas, marked with the "! Fallback" KPI tag. The reason for multiple Fallback Modules in this template is to allow the Bot to address this issue multiple times without just repeating the same message. Try editing these Modules now.
Now individualize your Chatbot in Bot Settings, found in the right sidebar menu. We suggest you also style the Codemonkey Widget to match your organization's brand guidelines.
Be sure to check out our tips about evaluating the mood of the dialogue and advice regarding the Bot’s approach toward Chatbot output and visitor’s input. Configure the “Evaluation after answer given” Flow – it can be recognized by the KPI 5 tag or Exit Group.
- You're now ready to use what you've learned to adjust the rest of your Modules. Consider all of the content your Bot must cover, and begin implementing any necessary changes.
You've now worked through the key elements of the E-Commerce Bot Template - great work! As you continue to customize your Bot, remember that you can always refer back to this guide for assistance.
Groups color framings
On the bot building canvas, you will find several Modules in different color framings. Each color stands for a specific Module category or group. The overview of the color framing can be found on the left sidebar. From here, you can manage the visibility of selected Groups.
The Basic Ecommerce Bot Template includes the following Module Groups related to ecommerce:
- Your order
- Shipping and delivery
- Refund and return
- All about vouchers
- Our opening hours
- Store locator
- Technical issue
You can delete any undesired group by making that group's color visible then deleting all Modules included in that category.
|Color||Module Category (Group)||Explanation|
|Start||Introduction to the bot conversation followed by a CTA that encourages end users to ask a question.|
|Fallback||Modules that are triggered when the bot cannot understand the end user's input. Learn more about Fallback Modules.|
|Exit||This group includes any Module that relates to the end of a specific conversation.|
|Handover||Linking to human support by triggering a transfer to live chat, sending an email notification, or creating a support ticket, among other methods.|
|Send message||Module category that closely relates to Handover. The Modules provide an information collection flow to gather all important input, before sending out a message to your organization's service team.|
You can find all Modules that answer end user questions about an already placed or future order. Consequently, the bot answers are grouped as follows:
|Shipping and delivery||
Find all Modules that relate to shipping and delivery in this group. The bot answers are separated into two categories:
|Refund and return||
All Modules that refer to inquiries about refund requests or return information. The bot answers are separated according to the return time:
Find conversational flows that refer to payment-related end user requests. The bot's answers are grouped depending on the following:
This conversational flow serves to answer end user inquiries about vouchers.
|Our opening hours||Find Modules related to the physical store's opening hours and the click and collect option (collecting an order that has been previously placed online).|
|Store locator||A Module that helps the end user find a store.|
|Technical issue||This group shows conversational flows that serve to understand any technical problems the chatbot visitor might face.|
KPI tag indications
You can find Key Performance Indicator (KPI) tags assigned to specific Modules.
- Webhook KPI tag: Indicates all Modules in which a Webhook must be implemented in Module Connections.
- Start KPI tag: Shows the Starting Module. It is important that the checkbox "Make bot start message" is ticked in this Module's Message tab.
- Handover KPI tag: Points to Modules in which a transfer to a real person happens. This transfer can either be connected to live chat or create a message to be received by human agents.
- Fallback KPI tag: Marks Fallback Modules triggered whenever the bot does not understand the end user's input.
- KPI tag 4: Set for Module categories that contain organization-specific content. You may cluster this content following the Domains you have defined for your bot.
- KPI tag 5: Find out how many visits lead to a feedback rating.
- KPI tag 6: Analyze how many users rated an answer as helpful (positive feedback).
- KPI tag 7: Analyze how many users rated an answer as not helpful (negative feedback).
- KPI tag 8: Have an overview of how many conversations refer to a pre-sales situation the end user was supposedly in. Typically, inquiries about general information on shipping, payment, or specific policies apply to KPI 8.
- KPI tag 9: Have an overview of how many conversations refer to a post-sales situation the end user was supposedly in. Questions tagged with KPI 9 relate, e.g., to a problem with an order, shipping, or payment.
We can now take a closer look at some Module configurations.
Selected Module configurations
To ease your platform navigation, use Ctrl+F (or ⌘ Command+F on a Mac) to look within your bot's canvas for the specific Module titles as listed below.
|Starting Module||Note that in addition to saying hi to chatbot visitors, the Starting Module also sets clear expectations. The bot can, for instance, inform the visitor that simple and short user messages are preferred.|
|Call to action to ask a question||
The chatbot visitor is asked to phrase the request or question. Note that a feature called variation is used here, as the visitor is likely to come back to this Module. By using the variation feature, you give the bot answers a more human touch.
As this Module is also triggered after providing a helpful answer, it is valuable to separate it from the Starting Module.
Note how the end user's input to the question is saved as a value for the Custom Variable searchQuery in the Module's Connection tab. This variable appears three times as the end user might have more than one query.
The module connections are configured as such that the bot would check if a value for searchQuery already exists, and if so, save it as searchQuery2 and searchQuery3 accordingly.
|"Yes" to call to action||Bear in mind that in human conversations, people often confirm what has been said previously. In this case, after the call to action to ask a question, your bot must be ready to interpret a confirmation from the chatbot visitor.|
|"Hello" to call to action||Similar to the Module <md>'Yes' to call to action, prepare your bot to answer a "hi" from the chatbot visitor as a possible response to the welcome message of the chatbot.|
|Fallback and Fallback 2||
Note that the Fallback Modules are not showing a dotted line in between. The reason for the missing line is that Module Fallback 2 is the previous Module's Fallback.
Looking at the Fallback Module's Connections will make this configuration clearer.
|Evaluation after given answer: Was it helpful?||
This Module provides you with insights into the quality of your chatbot's answers.
You may include this Module in the conversational flow after any content-rich bot answer, which is why this Module is a predecessor of the Modules below the Categories. Remember that the Categories contain content specific to your organization.
|"No": Answer was helpful||
You'll likely want to know why a chatbot visitor has rated an answer as unhelpful. Accordingly, you can ask the end user for more feedback, offer a transfer to human support, or leave it up to the end user to exit the chat.
By apologizing and creating easy next action options, you can sustain an engaging user journey and raise the understanding of the chatbot visitor.
Note the line [customVariable key=userName fallback="for that information"] in the bot message.
Here, you use the Custom Variable userName, which you have previously collected in Module <md>Collect name.
If the bot could not collect the end user's name, the fallback "for that information" would apply. For example:
If the end user's name, "Max", is collected:
If no end user name is provided (fallback):
|Do you have another question?||
If an answer was marked as helpful, the user is asked to phrase another question. Whatever their question is, it can be useful to save the input in a variable (as it is currently set to do).
Modules with Generic Cards
Some Modules contain Generic Cards as containers for links to information on your website. You will have to add the card's description, change its call to action (title), and, of course, insert a link with the right URL path. You can also add an image or button if desired. Here is an overview of the Modules that contain Generic Cards:
Group Shipping and Delivery
- <md>Information on shipping providers
- <md>Where do you deliver to?
- <md>Information on shipping costs
Group Refund and Return
- <md>Information on warranty policy
- <md>Information on refund policy
- <md>Information on credit card fees
- <md>Information on payment methods
- <md>How to get a voucher
Group Store locator
- <md>Store locator
Of course, you can decide if you would like to keep the Generic Cards or if you prefer to write the chatbot answer inside the Modules. Always bear in mind how much time you will have in the future to maintain chatbot answers. By linking to content on your website, you gain more flexibility.
Global Connections configuration
If you are in doubt about the general functionality of Global Connections, learn more in this article: Basic insights on Global Module Connections.
Note that in the Support Bot Template, Module Connections are preferred over Global Connections. This means that Global Connections are triggered if no Module Connection applies to the input provided by the specific end user or system (in case of third-party integrations).
The Basic Ecommerce Support Bot will understand the following basic Intents at any point of the conversation if Global Connections are not deactivated:
- "Speak to a Human"
- "Waiting on email" (Group Technical issue)
- "System down" (Group Technical issue)
- "Login issue" (Group Technical issue)
- "Error messages" (Group Technical issue)
Furthermore, all relevant ecommerce-related Intents are activated in Global Connections and connected to the referring Modules.