Marketo SMS Integration: Webinar Reminders

This post will walk you through your Marketo SMS integration with Telnyx and how you can use SMS notifications in smart campaigns to thank people for registering for a webinar and then later remind them to attend.

This post will walk you through your Marketo SMS integration with Telnyx and how you can use SMS notifications in smart campaigns to thank people for registering for a webinar and then later remind them to attend.

Before we dive into upgrading your webinar program take a look at these prerequisite posts that will help you understand the benefits of using Telnyx as well as how to set up your Marketo SMS integration with Telnyx:

Marketo SMS Integration & Compliance

SMS Opt-In Compliance Standards

In order to stay in compliance with carrier and CTIA standards, the Call to Action (CTA) where you are asking people to enter their phone number for SMS notifications must include:

  • Msg&data rates may apply
  • Message frequency e.g. message frequency varies, message frequency is recurring. X msgs/month, etc
  • Send HELP for help
  • Send STOP to cancel
  • Link to your privacy policy
Marketo SMS integration opt-in form
Webinar registration form with SMS opt-in

NB. In the image above the link to the privacy policy is not visible. This is because the privacy policy is in the footer of every page on the Telnyx site so this is sufficient to meet compliance.

SMS Opt-In Registration Form Setup

I would recommend enabling visibility rules for the phone number field and the rich text beneath it so that these two elements only appear when the “I want to receive SMS reminders for this webinar” checkbox is checked.

Visibility rules for the phone number field in the webinar registration form
Visibility rules for the phone number field

Additionally two other recommendations I would make are:

  • Do not use the same phone field that sales use to communicate with customers. Create a separate phone field for marketing notifications only and ensure that sales people do not have access to this field.
  • Implement a validation rule on the phone number field and help text to ensure that people enter their number in international format without any separators between the numbers e.g. +15743269203. If the number is not in this format then attempted SMS to this number will fail.
  • Create a new “SMS Subscription – Webinar Reminders” checkbox field to keep track of whether webinar registrants have opted in to SMS notifications.

N.B. The biggest headache I had when rolling out webinar SMS notifications for the first time was having to manually correct numbers entered in the incorrect format and then resend the message. I HIGHLY recommend implementing a validation rule on the phone number fields.

If you have collected phone numbers for marketing purposes before setting up a validation rule on the number field then check out the “Data Normalization Requirements” section in the Marketo Data Enrichment with Telnx Number Lookup post for tips on how to re-format your numbers.

Send Webinar Registration Confirmation SMS

Send SMS Webhook Configuration

As described in the Marketo Text Messaging with the Telnyx SMS API post, a webhook is used to make a request to the Telnyx SMS API to send an SMS. In the payload of this webhook, the {{campaign.description}} token is used to pull in the description of the smart campaign calling the webhook and use this as the SMS body.

Marketo SMS Integration using a webhook to send SMS with the Telnyx API
Marketo Webhook to Send SMS

Using the {{campaign.description}} token means that we can use a single webhook for sending SMS while being able to easily modify the contents of the SMS from smart campaign to smart campaign.

N.B. It is important to include the inverted commas around the text in the smart campaign description so that the payload of the webhook is in JSON format for the SMS to send successfully.

Marketo SMS integration smart campaign used to send a confirmation SMS upon registration
Smart campaign used to send a confirmation SMS upon registration
Marketo SMS integration smart campaign flow action to send an SMS using a webhook
Smart campaign flow action to send an SMS using a webhook

Send SMS Criteria Smart List

Before sending the SMS it is important to check that the person has opted into webinar reminders and that they meet any other criteria that you may require i.e. they are not one of your competitors. This is achieved by defining these rules in the “Send Text Criteria” smart list and then using this in the conditional logic choice within the “Call Webhook” flow action (see image above).

Marketo SMS integration smart list defining the criteria necessary for someone to receive an SMS
Smart list defining the criteria necessary for someone to receive an SMS

This “Call Webhook” action can now be added to the usual smart campaign that you trigger whenever someone completes the registration form and can work in tandem with any emails you send to confirm the registration.

Send Webinar Attendance Reminder SMS

One quirk of Marketo webhooks is that they can only be called from trigger based smart campaigns. So if you want to be able to use a scheduled batch campaign to send SMS reminders you need to get creative!

The solution to this issue is to create a requestable smart campaign that can be called from the scheduled batch campaign.

Requestable” Send SMS Smart Campaign

Similar to the previous send SMS smart campaign, the SMS body is contained in the campaign description and a “Call Webook” action is used to send the SMS when the “Campaign is Requested” trigger activates.

The SMS body also contains the {{member.webinar url}} token, which will populate each SMS with the unique join link for the webinar registrant thereby allowing people to join from their phones if they desire.

Now the send SMS smart campaign is triggered activated, as desired, and will be able to call a webhook meaning we can request this campaign from any other batch campaigns in Marketo.

Requestable smart campaign to send SMS
Requestable smart campaign to send SMS
Requestable campaign "Campaign is Requested" trigger
Requestable campaign “Campaign is Requested” trigger
Requestable campaign action to send an SMS via webhook
Requestable campaign action to send an SMS via webhook

Triggering Webhook from Scheduled Batch Campaign

The scheduled batch campaign for webinar registrants will request the “requestable” Send SMS smart campaign to send a reminder SMS if the registrants are a member of the “Send Text Criteria” smart list discussed above.

Scheduled batch campaign for webinar registrants
Scheduled batch campaign for webinar registrants
Request campaign flow action
Request Campaign” flow action

Alert & Resend for Failed SMS Delivery

The last part of your Marketo SMS integration involves setting up alerting for when an SMS delivery webhook fails.

There are a number of reasons why this could happen. The simplest reason being that the registrant entered their phone number incorrectly or if you do not have a validation rule set up on the field then the phone number does not adhere to the required format i.e. +E164 e.g. (+15743269203).

Whenever the Send SMS webhook fails we are going to create an email alert that will send the person’s information to your email address so you can review the reason why the webhook failed, fix the issue, and re-send the failed SMS.

N.B. You can also automatically unsubscribe these people from SMS notifications in the event that an attempted SMS to their number fails. If you have your form validation rules implemented correctly then it is worth implementing this unsubscribe action.

However, if you do not have form validation rules set up or the rules are not bulletproof then I would refrain from automatically unsubscribing people. Instead, I would recommend doing a manual review of the number to make sure it is in the correct international format for the country the person is in.

If the number is in the correct format then the number is a dud and the person can be unsubscribed. If the format is incorrect then correct the format and resend the message.

Alert Email and Smart Campaign

Making the alert email is straightforward and you can include any pertinent information that will help you diagnose the problem e.g. their phone number field value. At the bare minimum, make sure to include the {{SP_Send_Alert_Info}} token, which will automatically populate your email with a link to the person’s Marketo activity log and their Salesforce record (if they have one).

Alert email details populated by the {{SP_Send_Alert_Info}} token
Alert email details populated by the {{SP_Send_Alert_Info}} token

Once you have the email alert set up then you can create a smart campaign that is triggered whenever the webhook response is not successful to send you this alert.

Send SMS webhook failure alert trigger
Send SMS webhook failure alert trigger
Send SMS webhook failure alert action
Send SMS webhook failure alert action

Manually Resend Failed SMS

Once you have fixed the issue that caused the Send SMS webhook to fail then you need to be able to re-send the SMS to that person. This can be achieved in the same way as detailed in the “Send Webinar Attendance Reminder SMS” section above.

The only changes you will need to make are to use an “Email Address” filter in the smart list to include the emails of anyone who you received the failure alert email for and to change the campaign description of the “requestable” campaign to be the original message that failed to send.

Marketo SMS Integration Follow-Ups

Now that you have completed your Marketo SMS integration and are well acquainted with Telnyx and what it can do for you, take a look at the posts below to learn how to:

Also, if you haven’t done so already sign up for a free Telnyx account and get $20 in credit using the promo code TYRON-W4KX. This should be more than enough to purchase a few numbers and get started sending some SMS!


Automating with APIs, Python, Zapier, and Google Scripts 

Former engineer turned marketing operations lead who loves to get down and dirty with the Marketo API, Python, Zapier, and Google Scripts.

Post a comment