WhatsApp chatbots: things we wish we knew before building
In this case study, we elaborate on the mortierbrigade holiday campaign we worked on and how we built a WhatsApp chatbot. Moreover, we share four things we wish we knew before we started building the bot.
Baudouin, the king of betting
The holiday campaign
When mortierbrigade pitched their case to stop people from drinking and driving during the holidays, our eyes started to sparkle immediately. Their idea: someone who urges you not to drive under the influence by sending you messages on WhatsApp.
Enter Baudouin, the king of betting. In a 90-second online spot, Baudouin proclaims his love for end-of-year festivities. Bad weather conditions combined with countless drinking parties increase the risk of traffic accidents. Because of these accidents, he gets more money in his pockets. Why? Because he bets on traffic accidents.
The Baudouin WhatsApp bot
In addition to the YouTube spots, posters, social media campaigns, and so on (find out everything mortierbrigade did here), our job was to make Baudouin come to life. And how to do that better than to make him text people via WhatsApp? During December, he sent tips, videos, gifs, and messages to people who subscribed to remind them not to drive under the influence. Curious? Here’s a part of the conversation:
Building a WhatsApp chatbot
To build the Baudouin bot, we worked with WhatsApp Business API. As it was the first time we worked with this, we made good use of the existing documentation. Fortunately, it was very comprehensive and easy to understand. At least, if you knew where to look. 😄
To help you bypass the struggles we had, we listed the things we wish we knew in advance. Let’s dive in.
To buy a virtual number, or not to buy?
We started the project by buying a virtual number via Twilio. However, after trying several times, we didn’t manage to get the connection with Facebook working, which was very frustrating. Only to find out later that Twilio blocks communication from outside your region, which explains why we couldn’t even receive a Facebook verification code on the number. Eventually, we headed to the nearest physical telecom store and bought a SIM card. Sometimes it can be that simple.
Customer care window
The main reason why companies use WhatsApp is to quickly and easily meet the needs of the customer: answering questions, keeping them informed about promotions, and helping with order deliveries, for instance. To ensure that companies do not abuse the fact that they have such an easy way of contacting customers, WhatsApp has taken a lot of measures. One of these measures is the customer care window.
Every time a user sends a message to a business account, a customer care window opens. This is a 24-hour period during which a customer can respond to a user to help them with their questions. During these 24 hours, the company can do whatever it wants and send as many messages as it wants. Once this period ends, the company cannot reach the user any longer, or at least not until the customer contacts you again.
For the Baudouin campaign, however, we had to be able to send messages to users at any time. To solve this problem, we used Message templates. These are messages that WhatsApp has to approve. You submit your copy (and videos) and wait for WhatsApp to approve your message. Once this has happened, you can send the message to your users outside the customer care window.
Fun fact: according to WhatsApp, the Dutch language has no accents. Every time we wanted to put an ‘é’ in our text, the message was rejected because “the given text did not match the language we said the message was in”.
WhatsApp business application
WhatsApp has two apps: the regular Whatsapp application, which allows anyone to send messages, and a business application. The latter is meant for businesses that want to use WhatsApp to contact customers, run marketing campaigns, and so on.
Of course, our first choice was to create a business account for the Baudouin campaign. However, we did not succeed in linking this account to a Facebook page. We found out that when you want to link a WhatsApp business account with a Facebook page, the account must not exist already. When linking them, you have to create a new WhatsApp business account, with a number that is not already linked to another business account. In the end, we had to delete the WhatsApp business account we created through the app before we could continue.
To make things even more confusing, after we linked our WhatsApp business account to the Facebook page, we could not log in with this account through the business app. Always the same message: 'This business account already exists'. Fortunately, you don’t even need the app. Once you link your WhatsApp account to your Facebook page, you can set everything up through the WhatsApp manager on Facebook.
Verified Facebook Manager
To link a WhatsApp business account to a Facebook page, it must be a verified page. This means that, among other things, you have to submit a business license, a certificate of incorporation, or proof of registration with the tax authorities/VAT, after which they have to approve your submission. Luckily, this approval does not take long, at most a few days, but collecting these documents can be a hassle, especially when you are communicating in the name of a public company like Brussels Mobility. That’s why, in addition to our strict deadline, we decided to proceed with our own account.
Business account vs. Official business account
While working on the chatbot, we had a clear image in our heads. The user would be able to chat with Baudouin, and his account would look like he is a real person, with a profile picture and his name in the header of the chat.
This is where we found out about the concept of an official business account. You can recognize an official business account by the green checkmark that appears behind the name of the company in the header. In addition, you can always see the company’s name, even if you haven’t added it as a contact. With a regular business account, the name does not appear automatically, only the phone number does.
But uh-oh, here’s the catch: any company can create a WhatsApp business account, but not just any company can get an official business account. Official accounts are only for companies with a big following and a lot of media presence. In other words, we could not get an official business account for Baudouin and get his name in the header above the chat in such a short period.
This wasn’t ideal, but it wasn’t insurmountable either. We just made sure that when people actively looked at his profile, they could see his name there. Or so we thought... Because that brought us to the next struggle.
Not every display name is possible
WhatsApp has strict rules for display names of business accounts (the name that can be seen when someone views your profile). According to the rules, the name must have a direct link to the company to which the account is linked. By default, it’s just the company name - in our case, Craftworkz NV.
Of course, this wasn't what we wanted. We wanted Baudouin’s name to be displayed there. So, our long search for a suitable name commenced: Baudouin, Baudouin by Bruxelles Mobilité, Baudouin by Bruxelles Mobilité and Craftworkz, Baudouin Craftworkz. Time after time, our name was rejected. “No direct relationship with the company.” Even after several emails explaining the project, the name was not approved. In the end, we had to settle for ‘Baudouin by Craftworkz’.
Forget about support
During our search for an appropriate name, we often tried to reach WhatsApp’s support. We always had to do this through detours, because we couldn't get in through the official way. All possible tutorials, guides, and links always brought us to a 404 page. You would expect a multimillion company to have decent support, but apparently, this can be disappointing. 😉
Even though we had a few struggles, we eventually launched the Baudouin bot right in time for the holidays. Did you get a message from him? Let us know! And if you have any questions about WhatsApp chatbots, let us know here. ⚡️