Skip to content

WhatsApp with Syniverse

In collaboration with Syniverse, PeopleStage can send business-initiated messages directly into a WhatsApp conversation that a user has started. The user must have given consent to receiving communications via WhatsApp.

The integration supports:

  • Once a user-initiated chat has started and the user has opted in, PeopleStage can send commercial business-led messages into the WhatsApp conversation within a 24-hour window.
  • Messages sent at any time using approved templates in business-initiated chats, for opted-in recipients only.

WhatsApp pre-approves messages, which you can personalise using data held in your Apteco system.

You can set up WhatsApp Business API campaigns in PeopleStage as a single-stage single-channel campaign. Alternatively, set them up as part of a multi-stage multi-channel journey. Recipients can opt out at any time, and PeopleStage automatically excludes them. Statistics such as opt-out, seen, and delivered are available in PeopleStage.

Before you begin

This guide assumes you have created the Response Database, set up your FastStats Email Response Gatherer (FERG) folders, and set up your BULK insert folder. Contact your support department if you need more information.

Note

You don't need to create a Response Database if your system includes PeopleStage.

Creative template

You must have admin permissions to access this function and define the WhatsApp creative template in PeopleStage.

You need your WhatsApp Business API template information, including the:

  • Template names
  • Message content for each template
  • List names
  • The number of variables to map in the FastStats system, and their names, for example FirstName

Note

For more information on what a template can include, see the Syniverse developer documentation for the WhatsApp Business API.

To set up your creative template in PeopleStage:

  1. Open the Creative Template Editor: File > Administration > Creative Template Editor.
  2. Select New Creative Template.

    Creative Template Editor

  3. Select WhatsApp.

    New WhatsApp Template

  4. Enter the approved template name in the Name field.

  5. Enter the approved creative message in the content area.
  6. Use double curly brackets and the variable number to add a variable placeholder, for example {{1}}.
  7. Select Save.

    WhatsApp Template

Channel configuration in PeopleStage

Note

Values shown may be examples only: options differ for each broadcaster.

A system administrator must create the WhatsApp for Business API channel. Once configured, it's available in the deliveries area of the Library.

Syniverse Channel

Basic settings

Name Description
Channel Name (required) Enter a name for the channel (e.g. WhatsApp Syniverse)
Allow In Transactional Broadcasts Never
Produce output for tests Not used

Broadcaster settings

Name Description
Broadcaster (required) Select Syniverse from the dropdown
Email Variable Not used
Variable Description Override Not used
Mobile Number Variable (required) Select the mobile number variable from the dropdown
Variable Description Override Optional
Reply Email Address The reply email address used for the message
Reply Mobile Number (required) The mobile number that receives notifications when you use the channel. Must include the + number format. The integration doesn't work without this number
Number of Retries 0 (zero)
Response File Key Type Email
Message Content Type (required) PeopleStage WhatsApp Template

File settings

File Settings

Leave the default settings on this tab.

Parameter settings

Parameter Settings

Parameter Name Parameter Value
Message Type (required) Select a Syniverse messaging channel option: SMS or WhatsApp Business API (WABA)
Access Token (required) The authorised access token for your Syniverse application
Base Url (required) The base address of the Syniverse API (e.g. https://api.syniverse.com)
Base Path (required) The base path for the Syniverse API call (e.g. scg-external-api/api/v1/)
WhatsApp Namespace (required) The WhatsApp namespace for messaging via the WhatsApp Business API
Language Code (required) A valid language code associated with the approved templates
Sender Id (required) The sender address from your Syniverse WhatsApp Business API application
Auto Exclude Opt-Out Automatically exclude recipients who have opted out of receiving messages from the WhatsApp Business number. Default: True. Not required for Syniverse SMS
App Id Application ID of the Syniverse app
Urn Field Name Overrides the Unique Reference Number (URN) field name used in your FastStats system
Communication Key Field Name Overrides the communication key field name used in your FastStats system
File Mapping A pipe-delimited list of fields (these headings overwrite any defined in your output sequence), for example Urn\|FirstName\|LastName\|Company\|Email\|Message\|Discount
Encoding UTF8

Additional variables

Use this section to map FastStats variables to the broadcaster's variable names. For example, you may need to name the Forename variable in FastStats FirstName in the broadcaster so that templates using that variable populate correctly.

Additional Variables

Variable Description
Variable Select to search the FastStats system for the additional variable
Variable Description Override Optional: override the variable header description to match the name in the broadcaster (e.g. Forename → FirstName)
Formatting Default is Unformatted; options are UPPERCASE, lowercase, or TitleCase
Unclassified as blanks How to handle unclassified selector data: use the system setting From Design, or send no content Empty
Append Additional Variables Directly Deselected by default; select to change whether the system appends variables at the End or Beginning of the list

Delivery step

Create a campaign to use with WhatsApp, or add an additional Delivery step to an existing campaign.

  1. Drag the Syniverse WABA channel onto the delivery step.
  2. Select Refresh Channel Message Names to select from the available WABA creative templates.
  3. A separate list name isn't required for this channel.

    WABA Delivery

  4. Select Preview and Test to verify that Syniverse recognises the message name and that the WhatsApp channel is working correctly before publishing.

    Message Template

Note

Test before publishing to confirm the message delivers as expected. PeopleStage can't validate whether the template name specified for a WhatsApp Business API message is correct and approved by WhatsApp (Meta). If you use an incorrectly named or unapproved message name, PeopleStage appears to function normally. However, Syniverse doesn't send the message, and it reports an error.

Once set up and tested, add a campaign schedule and publish the campaign as you would for any other channel in PeopleStage.

WABA Campaign

Response gatherer

You can use the FastStats Email Response Gatherer (FERG) with multiple integrations by using a separate XML and batch file for each integration.

  1. Browse to the directory where you installed the Email Response Gatherer and open EmailResponseConfig.exe.
  2. Enter your Connection String and select Test.
  3. Select Syniverse from the Broadcaster dropdown.
  4. Enter the FTP Username and Password for the WABA API.
  5. Select Add to add all required parameters for the broadcaster.
  6. Use the File menu to save the XML file to the batch and XML file folder.

Response Gatherer

Connection settings

Name Value
Connection String (required) Connection string to the response database for your system
Timeout (secs) Timeout in seconds for connection and query steps; default is 1200
Bulk insert folder (required) Location to store results; SQL Server can BULK COLLECT from this location to optimise processing of high-volume campaigns
PeopleStage Connection String Used for certain broadcasters to retrieve metadata from the PeopleStage database. Not applicable for WhatsApp

Broadcaster parameters

Name Value
Broadcaster (required) Select Syniverse from the dropdown
Username (required) Your FTP/API username, available from Syniverse
Password (required) Your FTP/API password
ACCESSTOKEN (required) Authorised access token of the Syniverse application; unique token provided by Syniverse
BASEURL Base address of the Syniverse API; default is https://api.syniverse.com
BASEPATH Base path for the Syniverse API call; default is scg-external-api/api/v1/
MESSAGEPERIOD Period to check for responses, in days (xD) or months (xM); default is 7D
MESSAGESTARTDATE Enter a start date for response retrieval
MESSAGEENDDATE Enter an end date for response retrieval
OPTOUTKEYWORDS Opt-out keywords defined for recipients to stop receiving WhatsApp messages; comma-delimited if multiple (e.g. STOP, OPTOUT)
AdditionalFields Pipe-delimited list of additional fields to include in the Response Details table (acts as a filter; you can select only fields that are in the extract file). Enter Language for this integration
ConstantFields Pipe-delimited key–value constants separated by # (e.g. Key1#Value1\|Key2#Value2). Enter Broadcaster#Syniverse\|System#Media for this integration
EXECUTIONTAG WABA
EXECUTIONBUFFER Buffer in minutes added to the start of the response window to account for delayed notifications. Use -1 for this integration

Set FERG to run on a scheduled basis, providing it with the broadcaster's communication details in an XML configuration file. Also provide the location to output log files. This example uses Windows Task Scheduler, but any similar scheduler or command-line .cmd file works.