Marketing and CRM platforms like Infusionsoft have revolutionised the way we interact with our customers. Building marketing campaigns that interact and engage your customers has never been easier to implement and roll out.
The automation behind these platforms means you are more likely to convert new prospects or to stay “front of mind” with your existing customers with very little effort.
This article will show you how you can integrate SMS into your Infusionsoft campaign in a matter of minutes using directSMS’ Infusionsoft plugin.
If you don’t already have a directSMS account, you can sign up for your free trial by completing the registration form opposite.
Once you have an account, you will need to contact the support team in order to enable API access on your account. Once this is done, you are ready to start the interesting work.
Let The Fun Begin
This simple step-by-step procedure will walk you through how to SMS enable your Infusionsoft marketing campaign.
1. Log Onto Infusionsoft
Log into your Infusionsoft account and go to the main navigation menu and select “Campaign Builder” under Marketing.
From here, select the campaign you wish to SMS enable or create a new campaign.
2. Add An SMS Sequence
Campaigns in Infusionsoft are broken into sequences. Each sequence is then comprised of one or more components. Each component performs a specific task. You need to have either create a new sequence or edit a new sequence in order to be able to send an SMS message during the execution of the campaign.
To create a new sequence, go to the Sequence section in the component widget and drag a new sequence on the campaign map. Then double click the sequence to add components within it.
3. Add Components (Steps)
Once you are inside the Sequence, go to the component widget and go to the process section and drag a Send HTTP Post component to the sequence map.
4. Add Parameters
Double click the Send HTTP Post component. From here we will be making an API call that will allow you to send an SMS from your Infusionsoft campaign. But first, let’s remove the name value pair fields that maybe there by default.
Click on the minus sign button (-) to remove the default name/value pair “~Contact.Id~”.
Enter the URL to the new Infusionsoft plugin into the POST URL field. The URL is: http://my.directsms.com.au/plugins/infusionsoft.php
The Infusionsoft plugin will clean up the request and then push the posted information to the send_message operation of the directSMS’ HTTP API.
The Infusionsoft plugin will provide the following extra functionality:
- It will clean up the phone numbers coming in from Infusionsoft, reformatting them to ensure invalid characters and spaces are removed. You just need to point at the correct mobile phone field in your Infusionsoft contact record.
- The plugin will email the user identified in the request should there be any errors. Gone are the days of silent failures. The most common errors encountered are around invalid phone numbers, invalid sender IDs or message length. Now, you will know exactly when and why each failure occurs.
OK… Now, we just need to add all the different parameters required to send the SMS by clicking the plus sign button (+) under Name/Value Pairs.
username – Your directSMS account username. This is the same one you use to log onto directSMS’ customer portal
password – Your directSMS account password.
type – Here you can set the value to “1-way” or “2-way“. In this example, we are sending a 1-way SMS and changing the sender to “MyCompany“. This means recipients will not be able to reply back to the message. If you want to enable replies, you need to set this value to “2-way“.
senderid – The sender of the message. On 1-way messages, you can replace the sending phone number with your own mobile phone, a dedicated inbound number or your very own brand name. In the above example, recipients will receive an SMS from “MyCompany“. Having “MyCompany” as the sender will block the recipients from replying back.
to – The phone number to send the message to. Please note, for most consistent results, it is best to store all phone numbers in international format. E.g. 61411222333 or +61411222333. By default Infusionsoft assumes all numbers are US local numbers. If you store each number in international format with the +61 country code, you are letting it know that this is an international number. In this example, we are fetching the phone number from the Contact’s Phone 1 field. Our Infusionsoft plugin will do its best to try and cleanup any numbers thrown at it, but it’s best to start with clean information.
message – The message text. You can merge contact and other Infusionsoft data into each message to personalise each message making sure “Dear valued customer” is never used again. Ever. In this example, we’re sending a message that says “Hi Jane, this is a test SMS from Infusionsoft“.
max_segments – This will allow the directSMS platform to break any messages that exceed 160 characters into multiple SMS segments. The destination phone will then concatenate all segments once they have been received and display the complete message to the user. In the above example, we are sending a maximum of 2 SMS. So if any message is longer than 2 SMS, it will be truncated at 2 SMS. This is really handy when we are merging lots of fields into your outgoing SMS.
For more information about the various options available, please see the Sending an SMS section of the directSMS HTTP API reference which will give you a comprehensive breakdown of all available functions.
Don’t forget to change the toggle switch at the top right from “Draft” to “Ready” to activate the sequence.
5. Let’s Do Some Testing
You can now run some tests to see if this works. Go to the Send Test pull-down menu and select your user. This will send you a sample SMS to your phone if your contact details are set correctly.
Please note: this requires you to have your mobile phone number saved in your user profile under the Phone1 field. Once you have done this successfully, you can click the back to sequence button to go to the sequence map.
6. Enable The SMS Sequence
If the sequence map toggle switch is set to “Draft”, then toggle it to “Ready”. Also if you do not have a line joining the Start component (or the previous component to the Send HTTP Post component), then draw a line to this component. Once done, click on the “Back to Campaign” button.
7. Publish And Go
Finally, click the “Publish” button at the top right to publish the campaign changes you have made.
Your campaign is now SMS enabled. Easy!
Working With The directSMS API
Now let’s spend a bit of time to see how you are going to use the directSMS API to send customised SMS from your Infusionsoft campaign. This does not require technical skills, but just a simple understanding of the components in the API call.
You can find the full HTTP API documentation here. More specifically, we will be using the “send_message” command which can be found on pages 7 – 11.
The above screenshots show what is known as a HTTP POST request. This is made up of a URL and a number of POST parameters. The parameters will be where you set the different variables you need in order to send your SMS.
So revisiting the above example, here is what we have:
POST URL – http://my.directsms.com.au/plugins/infusionsoft.php – This is the URL to the Infusionsoft plugin. It will ultimately forward your request to the “send_message” directSMS API call once it fixes any issues with the phone number.
username – my_username – Please replace this with your directSMS username.
password – Shhh…S3cr3t – Please replace this is your account password.
senderid – MyCompany – This is the “Sender ID” that will be on your notification SMS. This is the name or number that the message appears to come from. With the sender ID set to MyCompany, recipients will not be able to reply back.
to – ~Contact.Phone1~ – This is the destination of the SMS. This uses Infusionsoft’s merge fields to send the SMS to the mobile phone number for the contact in Infusionsoft (note: this is using Phone1 as the mobile phone number field). The directSMS Infusionsoft plugin will do its best to reformat the phone number so as to avoid “invalid destination number” errors, but it is best to make sure you start with clean data.
type – 1-way – The type refers to your message type which can either be a “1-way” SMS or a “2-way” SMS. These are the only correct values. If you will be sending a notification or reminder, simply use 1-way. If you would like a response, then select 2-way. Please note: You can only use the Sender ID with 1-way messages. Any 2-way replies will be sent to you via your email.
message – Hi ~Contact.FirstName~, this is a test SMS sent from Infusionsoft – This is the body of your message. You can add Infusionsoft merge fields in your message as well e.g. ~Contact.FirstName~ or similar to personalise each message. No more “Dear valued customer”…
max_segments – 2 – This will allow the directSMS platform to break any messages that exceed 160 characters into a maximum of 2 SMS segments. The destination phone will then concatenate all segments once they have been received and display the complete message to the user.
Still Need Help?
If the test message is not NOT working, the plugin should send you an email outlining the exact error. Here are some common problems:
- The “to” parameter does not contain a valid mobile phone number. Ensure the value is a valid mobile phone number.
- The “message” parameter is too long. Make use of the “max_segments” parameter.
- The “senderid” is invalid. The value here needs to be 11 characters or less with no spaces. E.g. directSMS. Alternatively, you can set this to be a valid mobile phone number.
And remember… The team at directSMS are always happy to help you if you have any questions or issues. Please email email@example.com or call us on 1300 724 387.