What is USSD?#

First, watch this video to get a sense of how USSDK works:

USSD (Unstructured Supplementary Service Data) applications are the most accessible forms of applications that require no internet and comes at no cost to users. So whether you have a smartphone or a yam (dumb phone), you can still access these kind of applications. Users require no installation process; they just dial a short code.

To serve an app using a short code (USSD),

  1. You need to acquire a code from a USSD seller. In Ghana, there are options like (in no particular order) Nalo, Arkesel, AfricasTalking, etc.

  2. These platforms then require you to submit an endpoint where USSD requests will be sent. For example, you provide an endpoint like https://myussdapp.com/handle-session and these platforms will keep hitting this endpoint with requests that describe a session like:

{
  "msisdn": "233247812093",
  "network": "mtn",
  "userInput": "2"
}
  1. You then have to respond to this request in a specified format required by the provider. The provider processes this reponse and renders the result to the user.

That’s how simple the process is.

However, building these applications require different kind of programming paradigms depending on the USSD code seller — and the developer experience is not intuitive.

This is why USSDK exists.

What is USSDK?#

USSDK is an online/hosted IDE for building USSD applications without worrying about the USSD platform. It provides an intuitive drag/drop interface for composing your USSD applications.

USSDK also allows developers to augment the USSD application development experience by integrating their own APIs and controlling the flow. This project aims to modernize the USSD application development process — and does that at an affordable pricing scheme.

Apps built with USSDK can also be deployed to several short codes. Meaning you don’t have to create the same app multiple times for different clients.