Skip to main content
Star-Pay is a REST API that accepts JSON request bodies and returns JSON responses. This page covers the base URL, versioning, content type conventions, and the standard response envelope used across all endpoints.

Base URL

All API requests are made to the following base URL:
https://starpayqa.starpayethiopia.com/v1/starpay-api

API version

The current API version is 1.0.0. The version is embedded in the base URL path (/v1/).

Content type

All requests must send a Content-Type: application/json header. All responses are returned as application/json.
Content-Type: application/json
Accept: application/json

Authentication

Every endpoint requires the x-api-secret header. See the Authentication page for details on obtaining your secret and passing it correctly.
Requests without a valid x-api-secret header return a 401 Unauthorized response.

Available endpoints

MethodEndpointDescription
POST/trdp/orderCreate a payment order
POST/trdp/verifyVerify payment status

Response envelope

Every response — success or error — is wrapped in a consistent envelope:
{
  "status": "success",
  "timestamp": "2025-05-06T08:31:28.204Z",
  "message": "Order created successfully",
  "data": {}
}
FieldTypeDescription
statusstring"success" or "error"
timestampstringISO 8601 datetime of the response
messagestringHuman-readable summary
dataobjectResponse payload; shape varies by endpoint

Error responses

Error responses follow the same envelope structure. An error object is nested inside with a machine-readable code and description:
{
  "status": "error",
  "timestamp": "2025-05-07T07:31:30.824Z",
  "message": "Something wrong",
  "path": "/v1/starpay-api/trdp/order",
  "error": {
    "code": "BadRequestException",
    "message": "Missing required payload data"
  }
}
FieldTypeDescription
error.codestringMachine-readable error code
error.messagestringDetailed error description

Explore the API

Create a payment order

POST /trdp/order — initiate a new payment transaction.

Verify payment status

POST /trdp/verify — check the status of an existing order.

Authentication

How to authenticate every API request with your API secret.

Callback signature verification

Verify HMAC-SHA256 signatures on incoming webhook callbacks.

Build docs developers (and LLMs) love