https://simcloud.co.za/api/airtime.php
All API requests require authentication using a Bearer token in the Authorization header:
Authorization: Bearer YOUR_API_TOKEN
POST.request_id.GET until the status changes from queued or pending to a final status.409.mtn or p-mtncellc, cell-c, cell c or p-cellcvodacom or p-vodacomtelkom, heita or p-heitaPOST Content-Type: application/json
| Parameter | Type | Required | Description |
|---|---|---|---|
| msisdn | string | Yes | South African mobile number to recharge. |
| network | string | Yes | Network name or internal code such as mtn or p-mtn. |
| amount | number | Yes | Recharge amount in rand. Must be between 2 and 999. |
| reference | string | Yes | Your own reference for the request. |
{
"msisdn": "0821234567",
"network": "p-mtn",
"amount": 10.00,
"reference": "Airtime for John"
}
{
"status": "success",
"message": "Airtime order queued successfully",
"request_id": 1527245,
"service": "airtime",
"msisdn": "+27821234567",
"network": "p-mtn",
"amount": 10,
"reference": "Airtime for John",
"queue_status": "queued",
"timestamp": "2026-04-16 16:00:00"
}
{
"status": "error",
"message": "Insufficient balance. Please top up your account.",
"required_balance": 10,
"available_balance": 4
}
{
"status": "error",
"message": "An order for the same MSISDN and amount has been placed in the last 5 minutes."
}
GET
| Parameter | Type | Required | Description |
|---|---|---|---|
| request_id | integer | No | Queue request ID returned by the POST request. |
| orderno | string | No | Platform order number once it has been allocated. |
At least one of the two query parameters is required.
GET https://simcloud.co.za/api/airtime.php?request_id=1527245
{
"status": "pending",
"service": "airtime",
"request_id": 1527245,
"msisdn": "+27821234567",
"network": "p-mtn",
"amount": 10,
"reference": "Airtime for John",
"platform_order_number": "123456789",
"queue_status": "Order Placed",
"final_order_id": 1395228,
"final_order_status": null,
"error": null,
"created_at": "2026-04-16 16:00:00",
"updated_at": "2026-04-16 16:00:40"
}
{
"status": "delivered",
"service": "airtime",
"request_id": 1527245,
"msisdn": "+27821234567",
"network": "p-mtn",
"amount": 10,
"reference": "Airtime for John",
"platform_order_number": "123456789",
"queue_status": "Order Placed",
"final_order_id": 1395228,
"final_order_status": "delivered",
"error": "Success",
"created_at": "2026-04-16 16:00:00",
"updated_at": "2026-04-16 16:01:30"
}
queued: Request is stored locally and waiting to be placed.pending: Platform order number exists, but final delivery status is not back yet.delivered: Airtime order completed successfully.failed: Airtime order failed.| Code | Description |
|---|---|
| 400 | Bad Request (missing or invalid parameters) |
| 401 | Unauthorized (invalid or missing token) |
| 404 | Order not found for this account |
| 409 | Duplicate order detected within the 5-minute rule window |