Mpesa could be a form of customization of the USSD - in that instead of pre-programmed expected inputs, the program parses any input string and tries to make sense of it or decode it when it reaches the other end...