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

# Mobile Money Charge

> Initiates a mobile money charge request for transactions.



## OpenAPI

````yaml POST /api/b2b/fiat/deposit/momo
openapi: 3.1.0
info:
  title: Zerocash API
  version: 1.0.0
  description: >-
    The Zerocash API lets you collect payments (charges) and disburse funds
    (payouts) across supported markets through a single, unified integration.
servers:
  - url: https://api.zerocash.tech
security:
  - bearerAuth: []
tags:
  - name: Authentication
    description: Obtain and manage API credentials.
  - name: Reference Data
    description: Look up countries, banks, operators, and rates before transacting.
  - name: Charges
    description: Collect payments from your customers.
  - name: Payouts
    description: Disburse funds to recipients.
  - name: Transactions
    description: Retrieve and reconcile transactions.
  - name: Webhooks
    description: Receive and replay real-time event notifications.
paths:
  /api/b2b/fiat/deposit/momo:
    post:
      tags:
        - Charges
      summary: Mobile Money Charge
      description: Initiates a mobile money charge request for transactions.
      operationId: charge-mobile-money
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
                - amount
                - phoneNumber
                - currency
                - externalReference
              properties:
                amount:
                  type: integer
                  format: int32
                phoneNumber:
                  type: string
                  description: 'In ISO Format - ''+'' example: 254719624551'
                currency:
                  type: string
                externalReference:
                  type: string
                  description: >-
                    A unique ID of your liking to reconcile transactions
                    internally.
                momoOperatorId:
                  type: string
                  description: >-
                    Some currencies require operator specification. This can be
                    retrieved from the mobile money operators list found under
                    here: https://docs.zerocash.tech/docs/mobile-money-operators
                otpCode:
                  type: string
                  description: >-
                    One-time payment code required by some operators before
                    charge initiation. Follow the operator-specific customer
                    instructions for the market you are collecting in and pass
                    the generated code here.
                externalAccountId:
                  type: string
                  description: >-
                    Used to pass the information of an existing external
                    account. See external accounts.
                walletCurrency:
                  type: string
                  description: The currency to settle funds into. Defaults to currency.
                voucherPin:
                  type: string
                  description: Required for Botswana (BWP) ott voucher charhes
                successRedirectUrl:
                  type: string
                  format: uri
                  description: >-
                    Optional URL to return the customer to after a successful
                    provider-hosted redirect, where supported.
                failureRedirectUrl:
                  type: string
                  format: uri
                  description: >-
                    Optional URL to return the customer to after a failed
                    provider-hosted redirect, where supported.
            examples:
              External Account Collection:
                value:
                  amount: 300
                  currency: KES
                  externalAccountId: JRezblOHQcUnVBWD5SMW
                  externalReference: test1232fdf
              Momo operator example:
                value:
                  amount: 5
                  externalReference: 0zDFldddfdxFDFffDx
                  currency: GHS
                  momoOperatorId: AIRTEL-KW-GHS
                  phoneNumber: '233249817176'
              Senegal Wave redirect example:
                value:
                  amount: 1000
                  externalReference: order_wave_sn_12345
                  currency: XOF
                  momoOperatorId: wave
                  phoneNumber: '221771234567'
                  successRedirectUrl: https://merchant.example.com/payments/success
                  failureRedirectUrl: https://merchant.example.com/payments/failed
              Mobile money pre-charge OTP example:
                value:
                  amount: 1000
                  externalReference: order_otp_12345
                  currency: XOF
                  momoOperatorId: operator-id
                  phoneNumber: '00000000000'
                  otpCode: '123456'
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value:
                    success: true
                    message: Initiated request.
                    transactionId: '123456789'
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                    default: true
                  message:
                    type: string
                    example: Initiated request.
                  transactionId:
                    type: string
                    example: '123456789'
        '400':
          description: '400'
          content:
            text/plain:
              examples:
                Result:
                  value:
                    success: false
                    message: External reference already used.
                    errorCode: E-API-D.S-28
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: false
                    default: true
                  message:
                    type: string
                    example: External reference already used.
                  errorCode:
                    type: string
                    example: E-API-D.S-28
      deprecated: false
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````