Skip to main content
All CollectionsUSSD
How to Create and Set-up a USSD Chatbot
How to Create and Set-up a USSD Chatbot

USSD, Chatbot, CRM, User Journey, Set-up

Diviniah Mbaire avatar
Written by Diviniah Mbaire
Updated over 5 months ago

Mteja allows users to visually define complex USSD menus and integrates with any system to collect the outcome of USSD interactions. Using our chatbot functionality users can set up nested menus, monitor and track interactions, and generate reports all from a web portal with a user interface.

One can also access tools such as; sentiment analysis, data validation, integration capabilities, aimed at empowering businesses to have meaningful customer interactions.

How do I create a USSD application?

The scenario below shows how one can set up a USSD application that can be used to collect information.

Once one acquires a USSD code, you can access the USSD flows function.

Steps to be taken on the Mteja platform

  1. Select the Chatbots button from the navigation bar, then click on USSD Flows

  2. Click on the Create button on the right side of the page

3. Add a name and a description, then click the NEXT button

4. Next set up the settings (these are optional)

Callback URL- if this information is also being collected on an external database, like a CRM tool.
Session Timeout- This is the time within which participants will be allowed to resume where they left off, when their USSD session is disconnected and then reconnected after they redial the USSD code. This is set in minutes

Home navigation digit - If the USSD menu is long, the home digit allows the user to go back to the beginning of the menu
Back navigation digit - If the USSD menu is long, the back digit allows the user to go back to the previous navigation page

5. From the Steps menu on the left-hand side of the screen users can drag and drop the menu actions to the menu builder.

List of actions available on the Steps.

Actions and their use:

Message Response: Shows an end message, such as when the customer has completed a survey.
When you drag and drop the Message response, a configuration box pops out from the right side of the page where you will type in the end message.

  • Types of Questions:

    • Basic Question: This is a simple straightforward question requesting details that can be responded to with open-ended responses like 'What is your name?'; or utilise a Regular Expression (REGEX) to validate a response to ensure only a specific response is given for example only allowing a specific number of digits in an inbound response like for an ID number, or a Yes or No response
      Add your Question text, and provide a field name

      If the question is based on a numerical response, you can toggle the Extract Numerical Value button to ensure the responses can be analysed further.

    • For questions that need exact answers like ID numbers, Yes or No questions, you can select the Regex validation option.

      The Regex below is for requesting an 8-digit ID card, to ensure that all valid responses should only have 8 digits. You also input an invalid message to let the participant know if they input a number with less/more than 8 digits.


    • Multiple Choice Question: it presents users with a question and a set of predefined answers to choose from. Users select their responses by clicking or typing the corresponding option. The chatbot then processes the selected answer and provides immediate feedback or proceeds to the next step regardless of the user's choice.

      On the right-hand panel, add in your question text and field name, then scroll lower to add the responses. Here you can choose the specific responses, for example, digits to represent a certain response, you can also choose to add what for example '1' will be stored as in the report.

  • Web query: This allows a user to query information or data from an external system and fetch results in real-time. For instance, to validate a user request made on the USSD application.

CRM Tools:

  • Assign User: Assigns an agent to specific parts of the customer journey for follow-up.
    Select the user you would like to assign the conversation to. If you would like to remove the currently assigned user, you can leave the user entry slot empty


  • Assign Conversation Status: Assigns statuses like Open, Closed, and Resolved based on message context.
    Based on the direction or status of the conversation, assign it a Conversation status to allow you to keep track of them on Team Inbox.


  • Add to Contact Groups: Adds respondent contacts to specific categories or groups.

    You can choose to add more than one contact group that the respondent should be in by taking part in the survey.


  • Remove from Contact Groups: Removes respondent contacts from specific categories or groups.
    The contact will be removed from a contact group once they pass the action set in the chatbot journey.
    The 'Add to Contact Groups' and 'Remove from Contact Groups' actions can be used one after to add and remove a contact from a group or vice versa.


  • Add Contact Fields: Adds details like location, age, and gender to respondent contacts.
    Provide a field key (this is the general name of the field you are creating) add a field value (the specific details) e.g. Location: Nakuru, Education: high school etc


  • Remove Contact Fields: Removes details from respondent contacts.
    This allows you to remove previously added fields, this utilises only the Field Key, allowing the contact to be updated based on business needs.

Once you have completed creating your chatbot, click on the save button at the top right corner of the page.


How to add a USSD chatbot to a USSD code

Here are the steps to set up a USSD application live

  1. From the USSD menu, click on the USSD Codes button

2. Next to the USSD code, click on the Setup Flow button to link the USSD chatbot to the code available

3. From the USSD flow drop-down menu select the application

4. Click on the UPDATE button to complete the steps.

The USSD application is now accessible on the USSD code, and your customers/respondents can access the menu to take part in the journey created.

Feel free to reach us at support@mteja.io with queries regarding how you can set up your USSD chatbot.

Did this answer your question?