Providers & webhooks
Build once, deploy to any gateway. USSDly abstracts provider differences behind a single runtime.
Provider abstraction
A flow is provider-agnostic. At deploy time you bind a flow version to a provider and environment; USSDly handles each provider's webhook format and response encoding for you. Supported providers:
| Provider | Region |
|---|---|
| Moolre | Ghana / West Africa |
| Hubtel | Ghana / West Africa |
| Arkesel | Ghana / West Africa |
| Africa's Talking | East Africa |
| Nalo Solutions | Ghana |
The USSD webhook
Each provider binding gets an opaque webhook URL. Point your provider's USSD callback at it:
POST /webhooks/ussd/{provider}/{token}The {token} routes the request to a specific binding (tenant / environment / flow). The runtime resolves the provider, loads the deployed flow version and advances the session.
Rate limiting
SMS & delivery reports
Provider adapters also handle outbound SMS (send + delivery reports), so the sms flow node and SMS campaigns work the same way across every provider.
Platform SMS (bulk sends, campaigns, and flow sms nodes billed to your credit wallet) is delivered through Moolre as the primary sender, automatically failing over to Arkeselwhen Moolre's balance is low or a send is rejected. Delivery status is reconciled per message against whichever provider actually sent it, so reports stay accurate across a failover.
