USSD handling – USSD-MO vs USSD-MT
A USSD session is initiated when a USSD code is dialed. The session can be initiated by a user dialing the USSD code from their mobile phone or by a server/application or MNO. Thus USSD handling or implementation depends on who initiates the session.
MO stands for ‘mobile originated’. USSD-MO or USSD pull is when the USSD session is initiated by the user by dialing the USSD code on their mobile phone. If a mobile dials a USSD code. which does not exist or is not recognized, an error is returned to the MS. (Connection problem or invalid MMI code).
MT stands for ‘mobile terminated’. This is the opposite of USSD-MO i.e. the USSD session is initiated from the server or application. It is also called network initiated USSD (NI USSD). As the name suggests, the session is then terminated by the mobile phone. Most MNOs disable this USSD feature because it is more often misused by those who have access to it.
If you want to learn how you can build production ready USSD and SMS applications, you can take our discounted (Use Coupon USSDEARLYBIRD for 25% discount) course on USSD and SMS. See below.