When you start working with mobile money payment operators, they usually offer to send you a SMS message for every payment that is credited to your mobile money account. In this article, we will see how to leverage this to process your mobile money payments automatically in real time. Indeed, even if you are looking for an API integration with them, this will usually take time, and using the SMS messages will allow you to get started quickly and at low cost.
Receiving SMS and forwarding them to the internet
It is most likely that the mobile money payments partners will require that you use a local phone number to receive the payment notifications.
If you are located in a country where you can get a virtual phone number with a service like Twilio, Nexmo or a local supplier, this is a great option. Pick a SMS enabled number, and give it to your mobile money partner. This will only cost about USD1 per month, and is an easy solution to get started.
If this option is not available in your country, you will need to install a local SMS gateway to receive your SMS messages. This local SMS gateway will then automatically forward the messages to the internet, to an URL of your choice.
What the mobile money payment notifications look like
The format will change, but the information will typically be the same for every mobile money operator, with a few minor variations. Usually, those SMS notifications will look like something like that: “Success Bill Pay Amount: 5.00USD With COMPANY Customer ID: 89654701 078333054 Date: 2017-08-05 12:16:27 TID: HUI396R7A” So, what does that mean? In full sentences, this would give the following:
- The amount of “5.00USD”
- has been paid to the company “COMPANY”
- from the customer of customer ID “89654701” and phone number “078333054”
- on the “2017-08-05” at “12:16:27”
- with the transaction ID “HUI396R7A”.
What is key here is that those messages actually include all the information we need to automate a lot of our internal processes.
Automatically process your transactions
Indeed, the SMS has a lot of information that can be leveraged to streamline the operations: customer name, amount, phone number… After the SMS gateway forwards this SMS to the internet, we have different choices:
- We can just keep the message as a whole, for instance storing it in a Google Sheet
- Or we can split the message to identify the different pieces of information (a process called “parsing”), and use this data to automatically process the payment or notify your team or customer.
A practical example
In practice, the process could for instance be the following:
- With your local SMS gateway, you forward the SMS content to a specific Google Sheet using the Google Sheet API. Airtable, which is another online service with spreadsheet like functionality, is also a great candidate for this.
- In Google Sheet, with a Google Script, you then split the message in the different fields you need. This way, you automatically identify the customer who paid, his phone number, the amount that was paid and the transaction ID.
- Then you send an SMS to the phone number of the customer to thank him for his payment, for instance with the Google Sheets and Twilio integration from Zapier.
- After that, you can automatically send the transaction information directly to your accounting platform, like Xero or Quickbooks (for instance using the Xero and Google Sheets integration, or the Quickbooks one).
- And finally, you can send an email to your accountant and project manager to notify them that a new payment has arrived, with the Email and Google Sheets integration.
In a few short steps, the data that we received in a basic SMS is now stored online, we have notified the customer and the team by SMS and email, and updated our accounting platform. All of this with no programming and no specialized backend!
The automation options are endless, and a lot can already be done with little or no programming. If you want to go further, some programming might however be useful, or you can use one of the platforms of the market, like Portmoni, which already include the reconciliation, invoicing and customer notification features right out of the box.