I just happened to see this video:
Get and transfer Bitcoin via USSD without internet - by Atsu Davoh (A test demo. Not the real app).
It's using Testnet bitcoin, and the USSD gateway is a "Shared USSD" which is why it has the second code (the "*88" part of the "44788#" code that was dialed). A larger service in production would want a Dedicated USSD gateway, so users enter just the three digit code "*447#".
Also there are costs for each USSD message (ranging from ~$0.01 to ~$0.03, and the party paying may be the service provider or the end-user, depending on if the end-user is on a pre-paid or post-paid mobile network subscription).
I learned of that from this thread:
Might mess around and build that thing that creates a stablecoin address for every mobile money number.
reply
A Tweet in that thread shared this, which I also had not known of before:
Oblivious Decentralized Identifier Service (ODIS) https://docs.celo.org/celo-codebase/protocol/odis
Celo is a L1 blockchain project, with CELO token, and then the following stablecoins: cUSD, cEUR, and cREAL (BRL)
reply