Most messengers (Telegram, Viber, Skype, Slack) do not allow bots to initiate correspondence. The user has to be the first to write in order for you to get permission to send him/her messages. With WhatsApp, however, things are different.
Many companies continue to work in WhatsApp through regular user WhatsApp accounts using services that provide an unofficial WhatsApp API, through which you can, among other things, be the first to start chatting with any user.
When using the WhatsApp Business API, you can initiate correspondence with users only if you have received their permission to send messages in advance, and it is the template message agreed with WhatsApp that is sent first. You can get permission from the user in any way (through a form, during a call, etc.) and keep it with you.
Depending on the service where you have WhatsApp Business connected, you can initiate correspondence either with an agreed WhatsApp template message (Twilio) or any text message (1msg). When initiating correspondence works either way if you send the agreed template as the first message, but be sure to only send messages to users who are expecting a message from you, otherwise users will report spam and your WhatsApp Business will be blocked.
When you connect your WhatsApp Business API provider (1msg or Twilio) to Deskie, you will also be able to start WhatsApp chats directly from Deskie.
How to initiate a correspondence in WhatsApp
Creating cases in WhatsApp is no different from creating cases by email or phone calls, the main thing on the page for creating a case is to choose a user profile by the Whatsapp channel.
Before starting the chat (creating the case), it is not checked whether there is a WhatsApp account associated with the specified phone number or not, so the case is created anyway. If the WhatsApp account cannot be found, Deskie will display an error warning as part of the case created after the message has been sent.
1. In the agent's account, click on the plus icon in the upper right corner to create a new case:
2. Create a WhatsApp channel user. This can be done using two methods.
Method 1
Click on the link "add new user", in the form that opens, fill in the "Full name" field and indicate the phone number that is linked to WhatsApp, exactly in the "WhatsApp" field.
Important
The phone number must be indicated in the international format, starting with "+", for example "+399268656205".
You do not need to fill in the "Phone" field additionally, because when you create a profile by the WhatsApp channel, a user profile for the "Calls" channel is also automatically created.
Method 2
Specify the phone number in the "Recipient" field straight away and select the profile via the "WhatsApp" channel in the drop-down list:
When you simply enter a phone number in the "User" field, a user profile is created without a name. If you wish, you can either edit the created user profile by clicking the appropriate link in the info panel to the right, or leave the profile as it is and when you receive the first response from the user, it will automatically pull up the name specified in his WhatsApp profile.
However, if the agent independently indicates the name in the user profile, it will no longer change to what the user has in WhatsApp.
3. If you have several integrations with WhatsApp connected, you can also choose which one you want to send a message from in the "Send from" field:
At the same time, as when creating email cases, we will remember the integration selected in this field and will automatically used when creating a new case via the WhatsApp channel.
4. Fill in the "Subject" and "Content" fields and click "Create" to send the message to the user. If a message is sent to a non-existent account, the agent will receive an appropriate error.
Initiating WhatsApp correspondence via API
To initiate correspondence not only in the agent's account, we added the "user_whatsapp_phone" parameter to the methods for creating a user and for creating a case.
If you will have several WhatsApp integrations connected, then when creating cases through the API you will also be able to specify which phone number to send a message from in the "whatsapp_account" parameter.