---
title: "POST /payments/preview-ussd-push-request"
method: POST
path: "/payments/preview-ussd-push-request"
tags: ["Payments", "Preview"]
---

# POST /payments/preview-ussd-push-request

`POST /payments/preview-ussd-push-request`

Validates push details like phone number, amount, order-reference and verifies payment channels availability

## Request body

- object
  - `amount` string, required — Your payment amount
  - `currency` 'TZS', required
  - `orderReference` string, required — Your unique Order reference
  - `phoneNumber` string — Mobile phone number to receive USSD-PUSH and make payment, starting with country code and without the plus sign e.g., 255712345678
  - `fetchSenderDetails` boolean — If `true`, fetch sender details. Defaults to false.
  - `checksum` string — If enabled, this is the generated checksum of the payload. Refer to the [documentation](/home/checksum) for more details.

## Response `200`

Preview USSD Push response

- PreviewUSSDPushResponse
  - `activeMethods` object[]
    - `name` string — Payment method name (e.g., TIGO-PESA, M-PESA, AIRTEL-MONEY)
    - `status` 'AVAILABLE' | 'UNAVAILABLE' — Status of the payment method
    - `fee` integer — Fee amount if the payment method is available.
    - `message` integer — Message if the payment method is unavailable.
  - `sender` object
    - `accountName` string — Sender name
    - `accountNumber` string — Sender phone number
    - `accountProvider` string — Sender mobile money provider

## Other responses

- `400` — Validation Error
- `401` — Invalid or Expired Token
- `404` — Not Found Error
- `409` — Conflict Error

---

[API](https://skmtc.dev/clickpesa/apis/core-api-openapi-specification.md) · [All operations](https://skmtc.dev/clickpesa/apis/core-api-openapi-specification/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/clickpesa/core-api-openapi-specification/revisions/9f70f35c5590/schema)
