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

# Disburse payment (Pay-out)

> Send money to a customer via mobile money. Requires Authorization: Bearer <jwt>. Also send service and operation headers. The amount will be deducted from your merchant balance immediately.



## OpenAPI

````yaml POST /payouts
openapi: 3.1.0
info:
  title: GetMiPay API
  description: >-
    GetMiPay - Your universal gateway to getmipay. API for processing payments,
    payouts, and virtual cards through GetMiPay gateway.
  contact:
    name: GetMiPay Support
    email: support@getmipay.com
  license:
    name: Proprietary
    url: https://getmipay.com/
  version: 1.1.0
servers:
  - url: https://sandbox.getmipay.com/api
    description: Sandbox server
security:
  - bearerAuth: []
tags:
  - name: Authentication
    description: API authentication and token management
  - name: Services
    description: Get available payment services
  - name: Currency
    description: API for converting amounts between different currencies.
  - name: Payments
    description: Collect payments from customers
  - name: Payouts
    description: Send money to customers
  - name: Transactions
    description: Check transaction status
  - name: Balance
    description: Account balance management
  - name: Virtual Cards
    description: Virtual card creation and management
  - name: Webhooks
    description: Webhook endpoints for payment notifications
paths:
  /payouts:
    post:
      tags:
        - Payouts
      summary: Initiate PayOut
      description: >-
        Send money to a customer via mobile money. Requires Authorization:
        Bearer <jwt>. Also send service and operation headers. The amount will
        be deducted from your merchant balance immediately.
      parameters:
        - name: operation
          in: header
          description: Operation type - must be '4' for PayOut
          required: true
          schema:
            type: string
            enum:
              - '4'
            example: '4'
        - name: service
          in: header
          description: Service identifier for the payment method
          required: true
          schema:
            type: string
            example: '1'
      requestBody:
        description: Payout details to send to customer
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PayOutRequest'
        required: true
      responses:
        '200':
          description: Payout initiated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayOutResponse'
        '400':
          description: Bad request or insufficient balance
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthorized - Missing, invalid, or expired bearer token
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - bearerAuth: []
components:
  schemas:
    PayOutRequest:
      type: object
      required:
        - amount
        - currency
        - wallet
        - description
        - customer_name
      properties:
        amount:
          type: number
          minimum: 100
          example: 5000
        currency:
          type: string
          enum:
            - XAF
            - USD
            - EUR
          default: XAF
          example: XAF
        wallet:
          type: string
          example: '237690000000'
        description:
          type: string
          maxLength: 255
          example: 'Refund for Order #456'
        customer_name:
          type: string
          maxLength: 255
          example: Jane Smith
    PayOutResponse:
      type: object
      properties:
        success:
          type: boolean
          example: true
        message:
          type: string
          example: Payout initiated successfully
        data:
          type: object
          properties:
            transaction_reference:
              type: string
              example: MPAYOUT_XYZ789GHI123
            soleaspay_reference:
              type: string
              example: MLS690d472dd7ee7C
            amount:
              type: number
              example: 5000
            currency:
              type: string
              example: XAF
            status:
              type: string
              example: pending
    Error:
      type: object
      properties:
        success:
          type: boolean
          example: false
        message:
          type: string
          example: Invalid KEY
        error_code:
          type: string
          example: INVALID_PUBLIC_KEY
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        JWT bearer token returned by POST /action/auth. Send protected requests
        with: Authorization: Bearer <jwt>. Tokens expire after 24 hours.

````