Getting started
From nothing to a working USSD menu people can dial on any phone, with no internet needed.
1. Get a code
Pick a *889*…# code in the dashboard and pay for it from your wallet.
2. Build your backend
Start from our sample code in Node.js, Next.js, Python or PHP.
3. Connect it
Paste your https URL and set the signing key on your server.
4. Dial it
Dial the code from any phone and watch the session arrive.
In the dashboard, open USSD → Codes and click Get a USSD code. Pick a free code (each is an extension like *889*144#) and how many months to pay for. The price, and how many sessions each month includes, are shown before you pay from your wallet.
Codes renew automatically from your wallet every 30 days. You can cancel any time; the code keeps working until its renewal date.
Your backend is a URL that answers each step of a session with the next screen. The quickest start is our sample code: a complete server in your language, a menu you edit as JSON, and ready-made menus for shops, voting, tickets, customer care, balances and surveys.
Building your own? See what we send and what to reply.
Deploy your backend on https, then in USSD → Codes click Connect your backend on your code and paste the URL. In the same dialog, show the signing key and set it on your server as SENDEXA_SIGNING_KEY; every request is signed with it so you can tell real dialers from anyone else. How to verify requests
Dial your code from any phone. Each session appears under USSD → Sessions, with every screen the dialer saw and how it was paid for.