payment_url that you redirect your customer to, where they complete the payment.
Endpoint: POST /trdp/order
Base URL: https://starpayqa.starpayethiopia.com/v1/starpay-api
Request parameters
Headers
Your merchant API secret key provided by CBE. See Authentication.
Body
The total payment amount. Example:
1000A short description of the payment. Example:
"VANS+"ISO 4217 currency code. Example:
"ETB"Full name of the customer. Example:
"Jane Doe"Customer phone number in E.164 format. Example:
"+251987654567"Array of line items included in the order. Each item must contain:
productId(string, required) — your product identifierquantity(integer, required) — number of unitsitem_name(string, required) — display name of the productunit_price(number, required) — price per unit
Your API secret, also included in the request body in addition to the header.
URL on your server where Star-Pay will POST payment status notifications after the transaction completes. See Webhook callbacks.
Customer email address. Example:
"[email protected]"ISO 8601 datetime at which the order expires. Example:
"2025-07-01T23:59:59Z"URL where Star-Pay redirects the customer after a successful payment — typically a confirmation or receipt page on your site.
Response
A successful request returns HTTP201 with an OrderCreationResponse body.
Response fields
Top-level request status. Value:
"success"ISO 8601 datetime of when the response was generated.
Human-readable result message.
Code examples
Callback payload
If you provide acallbackURL, Star-Pay will POST the following JSON to that URL after the transaction completes.
Successful payment
Failed payment
| Field | Description |
|---|---|
billRefNo | Star-Pay’s internal bill reference number |
status | PAID or FAILED |
timestamp | ISO 8601 time of transaction completion |
merchantId | Your merchant identifier |
customerId | Customer identifier in Star-Pay’s system |
externalReferenceId | External reference for reconciliation |
amount | Amount that was charged |
payment_type | Payment method used, e.g. USSD_PUSH |
receipt_url | Link to the payment receipt |
Next steps
Verify a payment
Poll the verification endpoint to check payment status independently of callbacks.
Webhook callbacks
Set up HMAC-SHA256 signature verification for secure callback handling.