> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xente.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Post mobile money

> This endpoint posts a new mobile money transaction

### Body

<ParamField body="requestId" type="string">
  A unique identifier for the request.
</ParamField>

<ParamField body="batchId" type="string">
  A unique identifier for the batch.
</ParamField>

<ParamField body="amount" type="number">
  The monetary amount involved in the request.
</ParamField>

<ParamField body="type" type="string">
  The type of request, initially not set.
</ParamField>

<ParamField body="message" type="string">
  An optional message associated with the request.
</ParamField>

<ParamField body="metadata" type="string">
  Additional metadata as a string.
</ParamField>

<ParamField body="product.productItemId" type="string">
  A specific item identifier within the product.
</ParamField>

<ParamField body="beneficiary.name" type="string">
  The beneficiary's name.
</ParamField>

<ParamField body="beneficiary.emailAddress" type="string">
  The beneficiary's email address.
</ParamField>

<ParamField body="beneficiary.phoneNumber" type="string">
  The beneficiary's phone number.
</ParamField>

<ParamField body="beneficiary.data.phoneNumber" type="string">
  The mobile money number where funds are to be deposited.
</ParamField>

### Response

<ResponseField name="code" type="number">
  Indicates whether the call was successful. 0 if successful, error code if not.
</ResponseField>

<ResponseField name="status" type="string">
  Status message on outcome of the API call.
</ResponseField>

<ResponseField name="message" type="string">
  General message about the transaction status.
</ResponseField>

<ResponseField name="data" type="object">
  The contents of the transaction data.

  <Expandable title="Toggle object">
    <ResponseField name="requestId" type="string">
      Unique identifier for the request.
    </ResponseField>

    <ResponseField name="batchId" type="string">
      Batch ID associated with the request.
    </ResponseField>

    <ResponseField name="transactionId" type="string">
      Unique identifier of the transaction.
    </ResponseField>

    <ResponseField name="status" type="string">
      Current status of the transaction.
    </ResponseField>

    <ResponseField name="message" type="string">
      Detailed message regarding the transaction's current status.
    </ResponseField>

    <ResponseField name="createdOn" type="string">
      Timestamp indicating when the transaction was created.
    </ResponseField>
  </Expandable>
</ResponseField>

<RequestExample>
  ```bash Example Request theme={null}

  curl --location --request POST 'https://api.xente.co/api/transactions/payouts/mobilemoney' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Token <token>' \
  --data-raw '{
    "requestId": "92399933543589",
    "batchId": "batch5678",
    "amount": 500,
    "type": "DEBIT",
    "message": "Testing",
    "product": {
      "productItemId": "MTNMOBILEMONEYPAYOUTUG_MTNMOBILEMONEYPAYOUTUG"
    },
    "beneficiary": {
      "name": "Tester",
      "emailAddress": "sampleemail@email.com",
      "phoneNumber": "0779705600",
      "data": {
        "phoneNumber": "0779705600" //The mobile money number where funds are to be deposited
      }
    }
  }'

  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  {
      "code": 0,
      "message": "Transaction Has Been Successfully Received. Notification Will Be Sent Shortly",
      "data": {
          "requestId": "32399933543589",
          "batchId": "batch5678",
          "transactionId": "ef2ebc1e-1c2e-4fb1-23eb-08dc379d52c7",
          "status": "PROCESSING",
          "message": "Processing Debit Transaction. Instant Payment Notification will be sent shortly",
          "createdOn": "2/27/2024 2:06:41 PM"
      }
  }
  ```
</ResponseExample>
