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

# Deposit via Mobile Money

> An integrator’s customers can initiate a deposit from their respective mobile money wallets.     An STK push will be sent to the customer and the respective amount will be deducted from their mobile money wallets and deposited into the integrator’s fiat wallet

An integrator's customers can initiate a deposit from their respective mobile money wallets. An STK push will be sent to the customer and the respective amount will be deducted from their mobile money wallets and deposited into the integrator's fiat wallet.


## OpenAPI

````yaml POST /api/v3/deposit/mobile-money
openapi: 3.0.0
info:
  title: KOTANI PAY API PLATFORM
  description: ''
  version: '3.0'
  contact: {}
servers:
  - url: https://preview.kotanipay.com
security: []
tags: []
paths:
  /api/v3/deposit/mobile-money:
    post:
      tags:
        - MOBILE MONEY DEPOSIT
      summary: Deposit via mobile money
      description: >-
        An integrator’s customers can initiate a deposit from their respective
        mobile money wallets.     An STK push will be sent to the customer and
        the respective amount will be deducted from their mobile money wallets
        and deposited into the integrator’s fiat wallet
      operationId: DepositMobileMoneyController_mobileMoney_api/v3
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateDepositDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                properties:
                  success:
                    type: boolean
                    example: true
                  message:
                    type: string
                    example: Deposit has been successfully created.
                  data:
                    $ref: '#/components/schemas/DepositResponseDto'
                    type: object
        '400':
          description: ''
          content:
            application/json:
              schema:
                properties:
                  success:
                    type: boolean
                    example: false
                  message:
                    type: string
                    example: Bad Request
                  data:
                    type: object
                    example: {}
        '401':
          description: ''
          content:
            application/json:
              schema:
                properties:
                  success:
                    type: boolean
                    example: false
                  message:
                    type: string
                    example: Unauthorized
                  data:
                    type: object
                    example: {}
      security:
        - JWT: []
components:
  schemas:
    CreateDepositDto:
      type: object
      properties:
        customer_key:
          type: string
          example: customer-key-123
          description: Customer key
        amount:
          type: number
          description: amount to deposit
          example: 10
        wallet_id:
          type: string
          description: deposit id
          example: 5f9b2c7b9c9d6b0017b4e6b1
        callback_url:
          type: string
          description: callback url
          example: https://example.com
        customer_redirect_url:
          type: string
          description: customer redirect url
          example: https://example.com/success
        reference_id:
          type: string
          description: reference id
          example: 5f9b2c7b9c9d6b0017b4e6b1
        currency:
          type: string
          description: >-
            Override transaction currency (e.g. USD for USD mobile money in
            Congo/Zambia). When provided and matches the wallet currency,
            phone-country currency validation is skipped.
          example: USD
      required:
        - customer_key
        - amount
        - wallet_id
    DepositResponseDto:
      type: object
      properties:
        id:
          type: string
        message:
          type: string
        reference_id:
          type: string
        reference_number:
          type: number
        customer_key:
          type: string
        redirect_url:
          type: string
      required:
        - id
        - message
        - reference_id
        - reference_number
  securitySchemes:
    JWT:
      scheme: bearer
      bearerFormat: JWT
      type: http

````