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

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

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

Initiate a mobile money payout by sending a request to the API. The specified amount will be transferred to the recipient's mobile wallet.

## 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 (Mobile can't hold USD)
  - `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

- CreateMobileMoneyPayoutResponse
  - `updatedAt` string, date-time
  - `createdAt` string, date-time
  - `id` string
  - `orderReference` string — Your unique order reference
  - `amount` string — Total amount deducted from your account balance (includes fee)
  - `currency` string
  - `fee` string — 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
  - `status` 'AUTHORIZED' | 'SUCCESS' | 'REVERSED'
  - `channel` 'MOBILE MONEY'
  - `channelProvider` string
  - `order` object
    - `amount` string — Amount added during order creation/payload
    - `currency` string
  - `beneficiary` object
    - `accountNumber` string
    - `accountName` string — Beneficiary name: fetched from MNO; if unavailable, falls back to phone number when not required. If required and unavailable, payout fails validation.
  - `clientId` string — Application Client ID associated with the payout

## 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)
