In developing countries, a great way to interact with your customers is to use short text messages (SMS). Indeed, unlike email or WhatsApp, they do not require the use of a smartphone, and they can be used to send payment reminders, mobile money payment receipts, or customer surveys, among other uses. Sending regular messages also allows staying on top of the mind of the customers, and reduces the risk of missed or late payments. In this article, we are going to cover two methods to set up such SMS interactions with your customers.
Sending SMS to your customers is usually easy to setup. SMS services like Twilio, Nexmo or Plivo allow to buy virtual phone numbers and to send SMS programmatically. They provide great services: you can get a phone number for $1 a month, and send SMSs at cheap rates.
The problem: receiving SMS
However, the issue is that those services only offer phone numbers in a limited number of countries, and that developing countries are usually not well covered. For instance, Twilio offers numbers in Kenya and Nigeria, but countries like Rwanda, Tanzania, or Uganda are not yet covered.
This is a problem when you want your customers to be able to answer to your messages. Indeed, if you use a foreign number, they would have to pay the cost of an international SMS to answer, which is not a viable option. You need a local number.
Telecom operators offer options to get such local numbers for SMS use, but the cost and complexity are usually high. It only becomes interesting when you process volumes of message in the tens of thousands of SMS sent per month.
The solution: set up your own SMS service
To be able to process text messages with a local number at a low cost, a solution is to set up your own local SMS service, with what is called a local SMS gateway.
A SMS gateway is a physical device, such as a smartphone or a dedicated device that will act as a bridge between the GSM network and the internet. The purpose of this gateway is to forward the SMS it receives to the internet, where you then process it automatically. In a nutshell, the gateway uses a SIM card to receive the SMS from the customers, and forwards the SMS content to the internet.
Different options can be used to setup your own local SMS gateway. We will introduce two of them:
- Using a smartphone.
- Using a dedicated physical device called an SMS server.
Using a smartphone as your SMS gateway with Telerivet
The first option is to use a smartphone as your SMS gateway. It is probably the easiest and quickest way to set this up. Turning a smartphone into an SMS gateway can indeed easily be done with a service called Telerivet. With Telerivet, can turn your smartphone into a gateway in four easy steps:
- Create an account on the Telerivet website.
- Create a project linked to your service.
- Download and install the mobile phone app on the smartphone.
- Link the mobile app to your project on the website.
And that’s it! When the app is running on the phone, it will now forward the SMSs to your cloud account, where you can process them, or forward them to other online services.
By linking the Telerivet web app to other web services, you can then build advanced applications like automated follow ups or surveys.
Using a dedicated device
Another option to set up your SMS gateway is to use a dedicated SMS server. An example of such a device is the MultiTech iSMS server.
The configuration is slightly more complex than using a smartphone, but you get the benefit of using a more robust setup. Depending on the version, such a server can indeed allow to connect up to 8 SIM cards, to increase the capacity and the reliability of your setup.
As soon as the router is configured, all the messages received become available in its inbox, which you can access directly with a browser. You can then configure the server to forward the messages to a remote location using an API, and send outbound text messages using the API of the server.
Moving to professional solutions
You can make the solutions above quite robust by adding backup power and 3G connection to your setup. However, even if both options are great to get started quickly at a low cost and can process thousands of messages per month, they cannot be considered as high reliability approaches. Indeed, they are not redundant and are built on hardware that is physically located in your office, and could be damaged or stolen.
If you need more reliability, using an SMS gateway hosted by a telecom operator could make more sense. Of course, this involves much higher costs and technical involvement.
Using a smartphone or a local SMS server can get you started quickly to interact with your customers via SMS. Just don’t forget to keep the SIM card active, and to add credit from time to time if you want keep sending text messages!
- An open source SMS Gateway: Kannel
- Build SMS applications with Python and Django: RapidSMS
- Turning a phone into an SMS Gateway: Telerivet
- Some commercial SMS services: Twilio, Nexmo, Plivo, MessageBird