Skip to content
luftflow

Generally available

USSD menus that never break mid-call

Draw the menu, test every path, and put it live on your short code. Any handset, no app, no data.

Integrates with

One call, from dial to goodbye

Follow one caller checking their balance. The phone moves through the call as you scroll.

01

The menu was drawn, not hand-coded

The team laid the flow out on a canvas, and it is stored as plain YAML.

02

Every path was tested before launch

Saved scenarios dial each path with the bank mocked, and one failure stops the publish.

03

The PIN stayed out of the logs

What a caller types reaches your API and never a log, and numbers are masked.

04

The request was sent twice. The bank saw it once.

The aggregator retried a slow request, and luftflow answered from its record of the first call.

05

A new version went live mid-call

New callers got the fix, and this caller finished on the version they started with.

06

And the call was counted

Completion and drop-off are counted by screen, and failing API calls alert your team.

Menus that fit a basic phone

Every screen is drawn on a canvas and stored as plain YAML.

Menus
Numbered options, each wired to the next screen.
Inputs
PINs, amounts and account numbers, checked before they move on.
API calls
Call your core banking or billing, and route on the answer.
Lists from your data
Accounts or products fetched live and shown as options.
Languages
Write each screen once per language; callers pick theirs.
Long menus
Paged with More and Back when they outgrow the screen.

Built for real networks

Sessions that survive retries, timeouts and releases.

Your gateway
Africa's Talking, MTN and Zamtel, on the short code you already have.
Retries answered once
A repeated request is answered from the session record, not a second call to your API.
PINs stay out of logs
What callers type never reaches a log; numbers are masked.
Safe releases
New callers get the new version; callers mid-session finish on theirs.
Hosted or yours
Run sessions on our servers or in your own data centre.

Questions

Do we need a USSD short code first?

No. You can build and test a whole flow without one. Real calls need a code from an aggregator or operator.

How long until we are live?

Most teams build and test a flow in a day. Going live waits on your short code: a shared one is quickest, a dedicated one can take weeks.

Which aggregators and payment services does it work with?

Africa's Talking, and the MTN and Zamtel gateways, with a callback URL for each environment. MTN MoMo and Airtel Money payments inside a flow are in early access.

Can we move a USSD service we already run?

Yes. We rebuild your menu, run it beside your live service on real calls, and switch the callback URL once the two agree.

Bring us your menu

Share your short code or your menu, and we will rebuild a path of it for you to dial.

Request early access