Moniepoint Sub-Accounts API

Manage settlement sub-accounts.

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

moniepoint-sub-accounts-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Moniepoint POS Push Payment Authentication Sub-Accounts API
  description: 'Push payment-request flow for Moniepoint POS terminals. ISV partners push an authenticated payment request to a registered terminal serial number; the merchant taps to accept and the terminal completes a card or bank-transfer collection routed through Moniepoint''s acquiring rails. API client credentials (client id and client secret) are issued from the Moniepoint Business dashboard.

    '
  version: '1.0'
  contact:
    name: Moniepoint POS Developer Support
    url: https://teamapt.atlassian.net/wiki/spaces/EI
servers:
- url: https://pos.moniepoint.com
  description: Production
security:
- BasicAuth: []
tags:
- name: Sub-Accounts
  description: Manage settlement sub-accounts.
paths:
  /api/v1/sub-accounts:
    post:
      summary: Monnify Create Sub-Accounts
      description: Create one or more sub-accounts in a single call.
      operationId: createSubAccounts
      tags:
      - Sub-Accounts
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/SubAccount'
      responses:
        '200':
          description: Sub-accounts created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubAccountListEnvelope'
    put:
      summary: Monnify Update Sub-Account
      operationId: updateSubAccount
      tags:
      - Sub-Accounts
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubAccount'
      responses:
        '200':
          description: Sub-account updated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubAccountEnvelope'
    get:
      summary: Monnify List Sub-Accounts
      operationId: listSubAccounts
      tags:
      - Sub-Accounts
      responses:
        '200':
          description: Sub-account list.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubAccountListEnvelope'
  /api/v1/sub-accounts/{subAccountCode}:
    delete:
      summary: Monnify Delete Sub-Account
      operationId: deleteSubAccount
      tags:
      - Sub-Accounts
      parameters:
      - name: subAccountCode
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Sub-account deleted.
          content:
            application/json:
              schema:
                type: object
                properties:
                  requestSuccessful:
                    type: boolean
                  responseMessage:
                    type: string
                  responseCode:
                    type: string
                  responseBody:
                    type: object
components:
  schemas:
    SubAccount:
      type: object
      required:
      - currencyCode
      - bankCode
      - accountNumber
      - email
      properties:
        subAccountCode:
          type: string
        currencyCode:
          type: string
          example: NGN
        bankCode:
          type: string
        accountNumber:
          type: string
        email:
          type: string
          format: email
        defaultSplitPercentage:
          type: number
          description: Default share of every collection routed to this sub-account.
        feeBearer:
          type: boolean
          description: When true the sub-account absorbs Monnify's fee.
        defaultBearer:
          type: boolean
    SubAccountEnvelope:
      type: object
      properties:
        requestSuccessful:
          type: boolean
        responseMessage:
          type: string
        responseCode:
          type: string
        responseBody:
          $ref: '#/components/schemas/SubAccount'
    SubAccountListEnvelope:
      type: object
      properties:
        requestSuccessful:
          type: boolean
        responseMessage:
          type: string
        responseCode:
          type: string
        responseBody:
          type: array
          items:
            $ref: '#/components/schemas/SubAccount'
  securitySchemes:
    BasicAuth:
      type: http
      scheme: basic
      description: Basic auth using API client id and client secret from the Moniepoint Business dashboard.