Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

On this page

Table of Contents
minLevel1
maxLevel2
outlinefalse
stylenone
typelist
printablefalse

📋 What’s about

Info

To create Outbound Campaigns and WhatsApp Templates, you need to request the activation on your license of WhatsApp Connector Outbound Channel.
Otherwise you can’t see WhatsApp Campaign and Templates sections on your menu

You can use WhatsApp Connector to send outbound campaigns and outbound single messages through the use of templates approved by Meta or Kaleyra.
The company can start a certain number of unique conversations (explore Meta's messaging limits here) in a 24-hour time window. Conversation starts when the first WhatsApp template is delivered to the customer, opening a time window of 24 hours.

Let’s see how you can create an outbound WhatsApp campaign.

(blue star) Requirements

Panel
bgColor#EAE6FF
  • On license, you must have Inbound & Outbound plan

  • To create outbound campaigns or to allow agents to send single outbound messages (through templates), you need to use Meta or Kaleyra as providers

  • To use Kaleyra as provider you need to register an account on https://eu.kaleyra.io/ and configure an account on XCALLY following the relative wiki

  • To use Meta as provider, you need to be registered as Facebook Developers on http://developers.facebook.com/, to have a Business Account, to create an App for WhatsApp

  • Moreover on your Facebook Developers account, you can access to WhatsApp Manager > Overview Dashboard > Insights tab to check your messaging limits (explore here official Meta documentation)

(blue star) WhatsApp Templates

To create outbound campaigns it is necessary to use templates, the preconfigured messages containing variables inside.

By clicking on the WhatsApp Templates section, you have to select the created Meta/Kaleyra Provider and Account to view all created templates.

image-20240415-075316.png

Note

Templates must be approved by Meta or Kaleyra to be used for campaigns

Create a template

From WhatsApp Templates you can create a new template (up to a maximum of 250) by inserting:

image-20240410-084659.png
  • Template name

  • Provider (that can be Meta or Kaleyra if you have enabled the license)

  • Account

  • Category that can be:

    • MARKETING (e.g. for promotions, offers, welcome messages, newsletters…)

    • UTILITY (e.g. for Confirmation of an existing transaction, payment notification…)
      Find out more about Template Categorization, by clicking here

Note

Scenario
If campaign sends a marketing template and customer answers, then campaign send a utility template, this last one “replaces” 24h window that was open so it’s not possible to write to customer until he/she replies to utility template, because category has changed

  • Template language

Info

You can explore supported languages for templates at this Meta official link Supported Languages - WhatsApp Business Management API - Documentation - Meta for Developers

  • Enable as Recontact Template:if you switch on this option, you will be able to select it as a Recontact template on the Advanced section, by editing a created template. Facebook manages conversations as time windows within which the agent can write to the contact. Recontact template will be used to contact the customer beyond the expiration of the Customer Service Window
    Scenario
    Agent sends a template at 11 am, customer replies at 12pm, a 24h time window opens and starts from the moment when the agent has sent the template (so from 11am). At the end of these 24 hours, the agent can no longer write WhatsApp messages to the customer, but only send a recontact template already approved by Meta/Kaleyra. This can be for example a general message such as “Hello {{NAME}}, the chat window has expired, please reply to this message if you still need support”.

  • Available to agents: by selecting this option, you allow agents to send specific templates to a single contact. Explore documentation about it at this link

image-20240410-092809.png

Content (max 1024 characters): here you can write text template content (you can use one or more variables if you want).

Info

To insert a variable it is necessary to write at least 3 words, otherwise the system shows the error “This template has too many variable parameters for the message length. Please reduce them or extend the message length”
Moreover you must insert variables in a sequential order (so before variable {{1}} and then variable {{2}} ) otherwise the system shows an error

Find out more about message guidelines and Common Rejection reasons, by clicking here.

Then you can select the different tabs to enable header, footer and/or buttons

image-20240410-093844.png

Enable Header that can be a text, an image, a video or a document.

image-20240410-093928.png

If you choose image/video/document you need to upload relative file (Drag & drop option)

Info
Image: JPG, JPEG, PNG only - Max 5MB
Video: can be 3GP, MP4 only - Max 16MB
Document: PDF only - Max 16MB
image-20240410-094151.png

If you select text you can write text you want, max 60 characters.
Morever it’s possible to include a variable, both with Meta and Kaleyra providers.

image-20240410-094506.png
  • Enable footer text, max 60 characters

  • Enable Buttons: you can activate two tipology of buttons

Warning

It’s not possible to mix buttons typology, e.g. you can’t insert Yes / No / contact us button and if you choose call to action you can’t insert 2 phone numbers, but only 1 phone and 1 link

image-20240410-095334.png

Example of WhatsApp Template with call to action buttons:

Call to Action: you can choose to enable:

  • Call Phone Number to start a call directly, by inserting a Button text and a telephone number to call with a prefix

  • Visit the website, by inserting button text and website url (so the customer will open a browser with the indicated link).
    For this option, to avoid spam, Facebook doesn’t allow the use of short links or variables in url (only variable in query string is permitted)

Info

Consider that by sending a campaign with a call to action, the contacts will remain pending until the set Response Timeout

image-20240410-101734.png

Example of WhatsApp Template with quick reply buttons:

  • Quick Reply: you can create a choice with a max of 3 buttons with text (max 25 characters)
    If the customer clicks on one of the proposed choice, the system sends a message with the relative text button

Info

Consider that by sending a campaign with a quick reply, the contacts can be pending until they don’t answer or can consider closed if they choose an option. Explore the possible scenarios, by clicking here

  • Click on Add WhatsApp Message Template

Info

How to configure lists in WhatsApp templates, by using API

If you want to configure lists in WhatsApp templates, you can use API to send interactive messages: explore Meta Documentation about it
In this case List Messages include a menu of up to 10 options and they offer a simpler and more consistent way for users to make a selection when interacting with a business.
To allow the creation of this type of templates, on whatsapp_messages table, the following columns are present

  • type: ‘button' | 'button_reply' | 'list' | 'list_reply' | 'location' | 'media' | 'template' | 'text'

  • errorMessage: it contains any error message triggered when sending a message


When you create a new template, it remains in Pending Status to be approved by Meta or Kaleyra in more or less 24 hours:

image-20240410-154526.png
Info

As long as a template is pending, it cannot be used

You can see the same information from Meta messages templates at this link entering in your business manager account, where you can see Active Templates and templates in the control

Templates have a quality status: Customers can report business accounts as spam or undesired contact. Facebook registers all answers and if a lot of customers report a template, Facebook downgrades quality.
As long as the template is active (even if low quality) it’s possible to send it, after that, it will be put on pause (so not possible to send it). Find out here guidelines about quality rating and template pausing.

On Kaleyra’s account you can see template status on Channels → WhatsApp → Configurations → Templates

After template creation, you can see the list of created templates with relative category and status:

image-20240410-154718.png
Info

The created template has to comply with certain standards (that you can explore at this link), for example:

  • if it is configured as utility category, text can not contain question marks (because considered as marketing category)

  • a variable inserted in a empty row is not accepted

If you click on the Preview template, a modal will appear with the preview template

image-20240410-083636.png

Moreover you can edit a WhatsApp message template, by clicking on Edit template mapping

image-20240410-155621.png

You can see:

  • template name

  • Chosen category

  • Recontact Template option (switch on/off)

  • Available to agents option (switch on/off)

  • Header content

  • Content

  • Template preview

image-20240410-155700.png

If in the content or header, you have inserted some variables, you can do the relative mapping.
The system populates automatically the list of variables used in the text template. So you can choose which field of the customer's database to insert within the variable (e.g. selecting the first name)

image-20240410-155741.png
Note

If you don't map variables, you can't create campaign with the specific template and you can mapping variable after template approval

✏️ Create a WhatsApp Campaign

You can create a new WhatsApp Campaign, by clicking on WhatsApp Connector → WhatsApp Campaign → + button

image-20240409-151630.pngImage Removedimage-20241015-102949.pngImage Added

  • Insert campaign Name

  • Select Provider (Meta or Kaleyra)

  • Choose Account (Meta/Kaleyra type)

  • Select WhatsApp Templates (you will see only approved templates) and the eye icon shows a template preview

  • Select sending Interval

  • Indicate Response Timeout (expressed in days, minimum 1): specific option for WhatsApp campaigns, indicating time available for the customer to answer the question, to consider this answer valid and part of the campaign itselfto answer the question, to consider this answer valid and part of the campaign itself

  • Hopper history duplicate check: indicate number of past days (1-7) to check for contact duplicates in the hopper history.
    Leaving this value empty will skip the duplicate check

  • Include customers with an active interaction: option to send campaign also to customers in an active conversation with an agent. By default, this option is switched off because for a client it can be unusual to receive a message while already talking to an operator. There may be instances where you want to send it anyway, for example, an information campaign to warn that customer service number is changing, so you may decide to send it to everyone.

  • Close interaction on quick reply response: by enabling this option, if the customer answers with a quick reply, the interaction can be closed directly

  • Start date: you indicate when the campaign must start (day and time). Leaving the field blank, the campaign starts immediately

  • Click on Add WhatsApp Campaign

Info

To know prices for sending conversations depending on template category, it is necessary to consult Meta's documentation at this link, where it is possible to download the file for your currency.
It is important to consider that Meta charges per conversation, not per message. A conversation is defined as the exchange of messages in the 24-hour time window.

After campaign creation, you will see it in the list with status (e.g. RUNNING when it starts)

image-20240410-163816.png

In this section, by default, all the created campaigns are shown and you can filter by account to see the relative campaigns
By clicking on the 3 dots menu you can see these options:

image-20240503-071516.png
Info

To send the campaign, you need to Add a list (created before on Contact Manager → Lists section and contacts must be inserted with prefix without + e.g. 393402211333). You can add the list directly from 3 dots menu → Add List or and by editing the campaign you can click on the green button "Add list"
Campaigns will be sent to Phone Contact field and phone numbers must be inserted with prefix

By editing on Edit WhatsApp campaign, you can see:

image-20240503-072239.pngImage Removed
image-20241015-103217.pngImage Added

  • Settings with campaign information

image-20241015-103310.pngImage Added

  • Hopper with a summary of customers:

    • total number

    • fresh, so contacts are still to be contacted

    • retry, failed contacts to retry sending to

    • pending, so contacts waiting for a response

    • closed, contacts with the completed campaign

  • Pending: contacts in pending status after sending the template message waiting for a response (a contact remains pending until his answer or until end of the campaign)

  • Contacts History with the result of the campaign (you will see contacts with relative answers or failed contacts)

    Image Modified
  • Moreover, on the blue bar you can see two icon:

    • the green one to add a list to send the campaign

    • the red one to reset the list (so to launch the reset of the contacts in the Hopper that will be restored as fresh). Remember that in this case, contacts already managed will receive again the campaign

For failed contacts, it’s possible to enable Retry campaign

Selecting the 3 dots of the menu so you can edit campaign / stop it / Start WhatsApp Retry campaign, if you want to send again messages to failed contacts.

image-20240503-071516.png

It is possible to make several retries up to the duration of the campaign

Info

Some messages are considered by Facebook as a definitive failure (e.g. the contact does not have a WhatsApp account so he can’t be recontact), while other messages are considered as a temporary failure so the campaign can try to send the message again → Errors that allow retry are due to, for example:

  • temporary network problem

  • invalid template (temporary invalidity decided by Meta)

  • temporary authentication error

  • “Contact has an open interaction with another campaign” option (when the other campaign will be closed, you will be able to retry sending desired template).

A running campaign can also be stopped by clicking on the 3 dots in the campaign → Stop WhatsApp Campaign

Campaign interactions

When a campaign starts, the system, as a first check, verifies if there is already a campaign running for that contact (in that case contact remains on pending status until the open interaction is closed so the system can make a new retry).

Going on WhatsApp Accounts → 3 dots menu → Go to Interactions you can see interactions of running campaigns.

First of all if a customer sent an answer, the interaction status is equal to Closed, while if the customer has not yet replied, the interaction results Open

Scenario

You can create a campaign with the question "How would you like to be contacted?" with quick reply buttons Phone call | WhatsApp message | Email

  • If the customer answers within the indicated response timeout, the system registers that he has answered a certain option and closes the conversation related to campaign → status Closed

Moreover, for the Customer Service Window of 24h, system opens an interaction for the agent (becoming an inbound conversation) → status Open and agent can manage the conversation (by reading the sent template message and relative customer’s answer

Info

As long as the customer does not answer to the campaign, it will not be possible to send other messages because the system warns that "no messages can be sent since we are waiting for the customer's response."

  • If answer arrives after timeout expiry, it is not considered valid for the campaign, but the conversation moves on to an agent (becoming an inbound conversation) → first conversation status Closed + open new conversation status Open

  • Conversation passes to agent management even if the customer replies e.g. "Please contact me by Phone call", so he provides a different answer from those proposed, so the contact in the campaign remains in Pending and a Conversation with Open status is managed by the agent

Moreover clicking on 3 dots menu → Spy you can see the conversation with the customer.

🔧 Troubleshooting

  1. If this kind of message appares, it's due to token's expiry.

Check your token and remember to insert a long-lived user access token (discover how on this Meta documentation)

  1. If sending campaign, an error occures you can check contacts:

    • phone numbers must be inserted with prefix

    • numbers should be entered necessarily in Phone field