Messente avatar logo

Top 5 Most Common Mistakes When Implementing SMS Messaging API

- 5 MIN READ - 20 Oct 2013

Implementing SMS messaging to your existing web app is always a hassle and takes some time to get everything right.

Spending days on implementing some appearantly simple API is not very interesting and this usually results in extra coffee break for the developer instead of adding one more "if-then-else" to the code.

Messente for example has multiple Helper Libraries for most popular programming languages that do the heavy-lifting for you to avoid some common mistakes but you should not overlook most common practices.

1. Check the Response Code and Act Accordingly

Usually developers check if the SMS was successfully sent to the service provider and if there is an error, the app tries to send the text again or just skips it.

When an error code is returned there should be at least two different processes implemented:

In either case, server administrator should be notified that an error occurred and someone should look into it, which lead us to the next point.

2. No Notification System in Case of an Error

When error code is returned for the message sending request, there could be dosens of reasons why it failed.

In every case, server administrator should be somehow notified that something unexpected happened with the SMS messaging service.

Having internal notification system will help you avoid most common causes like for example when the account runs out of credits.

3. Your IP Address has Changed

Messente has implemented IP-based filters for API calls to block requests from unwanted servers.

When possible, get your server a static IP address. You can also add a list multiple IP addresses in the API settings to allow requests to be made from multiple servers.

4. Incorrect Encoding of the Message Body

The most commonly used character encoding in the web is UTF-8, that supports all the characters from all alphabeths. This is also what Messente assumes you are using.

When testing out the API and everything seems to be working with simple “abc”, you might run into trouble when suddenly you need to send text with “ñ” character in it.

If you are using some other encoding like Western (ISO-8859-1) or Cryllic (KOI8-R), first convert the text to UTF-8.

Or when that is not possible, just let Messente know what encoding you will be using and it will take care of it.

5. Backup Route is Not Implemented

You are still able to send SMS messages even when the main server is having hickups by simply switching to a backup server.

It happens rarely that Messente’s main server is down, but when nature is having a bad day, nobody is safe.

What’s Next?

Stay tuned for next versions of API helper libraries by following us on Twitter or Facebook.

Jaanus Rõõmus

Jaanus Rõõmus - CTO

Jaanus is co-founder and CTO of Messente and makes sure its wheels keep spinning and Messente always has a full tank of fuel.

How we do it: Supporting a culture of growth

14 Nov 2017

Recently, I’ve had several discussions about company culture. And here’s a common question: How do you build a culture that supports growth and create a workplace that everyone’s happy being part of?

Lauri Kinkar

Lauri Kinkar

This is an opportunity. Take advantage of it.

07 Nov 2017

In today’s world, it feels like the technology changes faster than we can keep up. As technology becomes even more ingrained in our lives, it’s obvious, that for our own good, regulations need to evolve as well. And it’s extremely important that business owners and leaders understand new regulations to adapt in the best way possible.

Raili Liiva

Raili Liiva

Scrub customer databases and make SMS more effective

31 Oct 2017

It’s often that we are asked, “what is your average delivery rate in (fill in the blank) country?” People usually expect an answer like, “98%.” Yet cost efficiency and SMS conversion is more important than a percentage number; without context it doesn’t mean anything.

The more important question pertains to how delivery rates are calculated. Let’s point out that there are mobile operators in some countries that do not send delivery reports, or if they do, they are unreliable. Is the delivery rate statistic based on messages sent and the number of messages that received a “delivered" status? That is the most common and brutally simplified way to calculate delivery rate. First of all, in fact, it is best practice to start with clarifying whether or not the mobile number databases contain phone numbers that are deliverable.

Margus Sütt

Margus Sütt

Start sending messages to

for € N/A

Contact us