This chatbot can help users check their account balance, card limit, report a card as lost or stolen, and find the office closest to them.
Let's dive into how you can adapt this template for your business!
This template only uses this Airtable database to search for records. Learn how to set up your own Airtable integration here.
Using another service to store your data? You can link any type of database to this bot, as long as it has an API. Read more about our API integrations here.
In the introduction message, you can change the Botbank image to your own business logo. Make sure that the Quick Reply buttons cover your bot's use cases.
This dialog uses a Not Understood Counter to create a better user experience and make the bot feel more natural. Have fun with it so that it matches your bot's persona!
This dialog is where the conversation ends up when a flow is over. For instance, when the user is done checking their account, they will be asked if there is anything else that can be done to help them.
This flow captures two use cases: checking an account balance, and checking a card limit. A spreadsheet for Accounts and another for Cards were created in an Airtable base that was made by using the Airtable App integration.
On the one hand, if users ask to check their card limit, and they get a different response depending on what card type they choose. Card types are defined under the
cardtypecontextual entity in the NLP section. This flow is triggered either by a Quick Reply button or by the
View of the Cards table from the Airtable database used for this template. Learn how to set up your own here.
On the other hand, if users ask to check their account balance, they can choose to check their current account or savings account. Those are defined under the
accounttypecontextual entity. This flow is triggered either by a Quick Reply button or by the
Check.Balanceintent. Once the balance is checked, the user is asked if they want to make a money transfer from that account. This redirects us to the
Transfer moneyflow where a
Is account known?Go-To dialog checks that the
accounttypevariable is already filled before proceeding to the money transfer.
View of the Accounts table from the Airtable database used for this template. Learn how to set up your own here.
In this flow, users can make a one-time money transfer, or create a standing order.
Here, the bot first asks the amount to transfer, from which account, and finally the bank account number of the recipient. These values are stored as:
amount: the amount to be transferred
accounttype: the account from which the money is transferred
IBAN: the recipient's account number
To check that the bank account corresponds to a correct IBAN format, we use a Go-To dialog that verifies if the
IBANexists. To do so, the bot checks that the entered IBAN matches the IBAN Regex pattern. In short, it verifies whether this is a valid IBAN. To see this pattern and adapt it to your needs, you can go in the Entities tab > Match Entities >
To set up a standing order, the bot first asks the user how often the payment should occur. This is stored under the
frequencyvariable. After that, it asks for the the start and end date. To check if the user's input is a valid date, we check if the value matches "date" before saving it as the variables
endDate. Here users can also add a reference in their transfer, stored under the
This flow allows users to report their card as lost or stolen. They are immediately redirected to external links to help block the card, after which they're asked if they want to order a new card. This flow is triggered by either a Quick Reply button or the
To find the nearest office locations, the conversation is steered to the Office locations flow.
You can customize the external links to redirect your users to your website and/or phone number.
In the Action dialog clear address, the bot deleted the variable
user_addressbecause the user wants to correct their address by entering a new one. We need to clear the old variable in order to save a new one.
This flow is triggered when we want to show the user the office that is the closest to them. For the sake of this template, addresses are predefined within the dialog, but you customize yours following the Find Nearest Location Template that uses Google Maps.
View of the Office Locations table from the Airtable database used for this template. Learn how to set up your own here.
In this flow are grouped all dialogs meant to answer random questions like: Which cards do you offer?, How are you?, Who built this?, ... All those dialogs are triggered by intents so that the bot can answer those at any time in the conversation. Make sure that you foresee many of them whilst building your bot so that the conversation flows smoothly!