Integrate data and airtime purchases into your applications
Log in to your dashboard and go to the API tab to generate your API key.
Add funds to your wallet. All API purchases will be deducted from your wallet balance.
Include your API key in the X-API-Key header with every request.
Important: Your API key must be approved by an admin before you can make authenticated requests.
Include your API key in the request header:
The API enforces a rate limit of 50 requests per second per API key.
Rate limit headers are included in every response:
Exceeding the rate limit will return a 429 Too Many Requests error.
Returns the current API status. No authentication required.
Returns your current wallet balance and account information.
Returns list of available mobile networks. No authentication required.
Returns available data packages. Optionally filter by network.
| Parameter | Type | Description |
|---|---|---|
networkoptional |
string | Filter by network (mtn, telecel, airteltigo). Vodafone is accepted as an alias. |
Place a new data bundle order. Amount will be deducted from your wallet.
| Parameter | Type | Description |
|---|---|---|
package_idrequired |
string | The package ID from /packages endpoint |
phonerequired |
string | Recipient phone number (0XXXXXXXXX or 233XXXXXXXXX) |
referenceoptional |
string | Your own reference ID for tracking |
callback_urloptional |
string | URL to receive order status updates (webhook) |
Optional fields: api_reference, api_provider, and api_status are only included when the order is processed via an external provider.
Get the current status of an order by its ID.
| Parameter | Type | Description |
|---|---|---|
order_idrequired |
string | The order ID returned when placing the order |
| Status | Description |
|---|---|
pending |
Order received, processing |
processing |
Order is being sent to network |
completed |
Order delivered successfully |
failed |
Order failed (check failure_reason) |
Get your order history with pagination.
| Parameter | Type | Description |
|---|---|---|
limitoptional |
integer | Number of orders to return (default: 20, max: 100) |
offsetoptional |
integer | Number of orders to skip for pagination |
statusoptional |
string | Filter by status (pending, completed, failed) |
Get your wallet transaction history.
| Parameter | Type | Description |
|---|---|---|
limitoptional |
integer | Number of transactions (default: 20, max: 100) |
offsetoptional |
integer | Pagination offset |
All errors follow a consistent format: