POST
/
payments
/
initiate-ussd-push-request
curl --request POST \
  --url https://api.clickpesa.com/third-parties/payments/initiate-ussd-push-request \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "amount": "<string>",
  "currency": "TZS",
  "orderReference": "<string>",
  "phoneNumber": "<string>",
  "checksum": "<string>"
}'
{
  "id": "<string>",
  "status": "PROCESSING",
  "channel": "<string>",
  "orderReference": "<string>",
  "collectedAmount": "<string>",
  "collectedCurrency": "<string>",
  "createdAt": "2023-11-07T05:31:56Z"
}

Authorizations

Authorization
string
header
required

Authorization header in the form of Bearer <token>, where <token> is a valid JWT from generate token endpoint

Body

application/json
amount
string
required

Your payment amount

currency
enum<string>
required
Available options:
TZS
orderReference
string
required

Your unique Order reference

phoneNumber
string
required

Phone Number to receive USSD-PUSH and make payment

checksum
string

If enabled, this is the generated checksum of the payload. Refer to the documentation for more details.

Response

200
application/json
Initiate USSD Push response
id
string

Unique identifier for the USSD-PUSH transaction

status
enum<string>

Current status of the transaction

Available options:
PROCESSING,
SUCCESS,
FAILED,
SETTLED
channel
string

Payment channel used for the transaction (e.g., TIGO-PESA, M-PESA, AIRTEL-MONEY)

orderReference
string

Your unique Reference identifier for the order

collectedAmount
string

Amount collected from the transaction

collectedCurrency
string

Currency of the collected amount (e.g., TZS)

createdAt
string

Timestamp when the transaction was created