---
title: "POST /payouts/preview-mobile-money-payout"
method: POST
path: "/payouts/preview-mobile-money-payout"
tags: ["Payouts", "Preview"]
---

# POST /payouts/preview-mobile-money-payout

`POST /payouts/preview-mobile-money-payout`

Validates mobile money payout details like phone number, amount, order-reference, fee

## Request body

- object
  - `amount` number, required — Your payout amount
  - `phoneNumber` string, required — Mobile phone number to receive mobile money payout, starting with country code and without the plus sign, e.g., 255712345678
  - `currency` 'TZS' | 'USD', required — Account currency to pay out from (TZS or USD). User will receive funds in TZS
  - `orderReference` string, required — Your unique Order reference
  - `checksum` string — If enabled, this is the generated checksum of the payload. Refer to the [documentation](/home/checksum) for more details.

## Response `200`

Mobile money payout Preview response

- PreviewMobileMoneyPayoutResponse
  - `amount` number — Total amount to be deducted from your account balance (includes fee)
  - `balance` number
  - `channelProvider` string
  - `fee` number — Transaction fee deducted from source currency (included in amount)
  - `exchanged` boolean — Indicates if currency conversion was applied (true when source currency differs from receiving currency)
  - `exchange` object — Exchange rate details (only present when exchanged is true)
    - `sourceCurrency` string — Source currency for the exchange
    - `targetCurrency` string — Target currency for the exchange
    - `sourceAmount` number — Amount in source currency
    - `rate` number — Exchange rate used for conversion
  - `order` object
    - `amount` number — Amount to be added during order creation/payload
    - `currency` string
    - `id` string
  - `payoutFeeBearer` 'merchant' | 'both' | 'customer'
  - `receiver` object
    - `accountName` string — Receiver name: fetched from MNO; if unavailable, falls back to phone number when not required. If required and unavailable, payout fails validation.
    - `accountNumber` string
    - `accountCurrency` string — Currency the user will receive funds in
    - `amount` number — Amount the user will receive in TZS

## Other responses

- `400` — Validation Error
- `401` — Invalid or Expired Token
- `409` — Conflict Error
- `500` — Internal Server 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)
