Transaction History API Documentation
Base URL
https://simcloud.co.za/api/transactions.php
Authentication
All requests require a Bearer token for the SIMcloud account whose history you want to retrieve.
Authorization: Bearer YOUR_API_TOKEN
How It Works
- Provide an inclusive
date_fromanddate_toinYYYY-MM-DDformat. - Optionally filter one or more services with the comma-separated
typeparameter. - Read the returned transactions in newest-first order.
- When
next_cursoris present, pass it back unchanged with the same date range and type filter to read the next page.
The endpoint includes transactions owned by the authenticated account, whether they originated in the web portal, CSV import, recurring processing, or the API. It returns only transaction identifiers, service, normalized status, failure reason, reference, and timestamps. It does not return pricing, wallet values, recipients, SMS content, electricity tokens, or voucher codes.
Endpoint
GET
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| date_from | date | Yes | Inclusive start date in YYYY-MM-DD, interpreted in Africa/Johannesburg time. |
| date_to | date | Yes | Inclusive end date in YYYY-MM-DD. The maximum date range is 90 days. |
| type | string | No | Comma-separated service filter: airtime, data, electricity, vas, and sms. |
| limit | integer | No | Results per page from 1 to 100. Defaults to 50. |
| cursor | string | No | Opaque value from the previous response. It must be used with the same date range and type filter. |
Example Request
GET https://simcloud.co.za/api/transactions.php?date_from=2026-07-01&date_to=2026-07-31&type=airtime,data&limit=50
Success Response
{
"status": "success",
"date_from": "2026-07-01",
"date_to": "2026-07-31",
"type": [
"airtime",
"data"
],
"transactions": [
{
"id": "airtime:1395227",
"service": "airtime",
"status": "success",
"reason": null,
"reference": "INV-10045",
"created_at": "2026-07-29 09:31:20",
"updated_at": "2026-07-29 09:31:48"
},
{
"id": "data:1395226",
"service": "data",
"status": "failed",
"reason": "Supplier rejected the order",
"reference": "INV-10044",
"created_at": "2026-07-29 09:28:12",
"updated_at": "2026-07-29 09:28:39"
}
],
"pagination": {
"limit": 50,
"next_cursor": "eyJjcmVhdGVkX2F0IjoiMjAyNi0wNy0yOSAwOToyODoxMiIsLi4ufQ"
}
}
Status Values
success: The transaction completed successfully.failed: The transaction failed;reasoncontains the stored failure detail when available.pending: The transaction is still being processed or has not received a final result.
SMS remains pending after supplier acceptance and becomes success only after SIMcloud receives a DELIVRD delivery receipt.
Error Codes
| Code | Description |
|---|---|
| 400 | Missing or invalid date range, type, limit, or cursor. |
| 401 | Missing or invalid API token. |