Moniepoint Authentication API

Obtain a Bearer access token for the Monnify API.

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

moniepoint-authentication-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Moniepoint POS Push Payment Authentication 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: Authentication
  description: Obtain a Bearer access token for the Monnify API.
paths:
  /api/v1/auth/login:
    post:
      summary: Monnify Log In And Issue Access Token
      description: 'Authenticate with Basic auth using your API key as the username and your secret key as the password. Returns an OAuth-style accessToken and expiresIn (seconds). Cache the token until expiry to avoid re-authenticating on every call.

        '
      operationId: monnifyLogin
      tags:
      - Authentication
      security:
      - BasicAuth: []
      responses:
        '200':
          description: Access token issued successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LoginResponse'
              examples:
                Default:
                  $ref: '#/components/examples/LoginResponseExample'
        4XX:
          $ref: '#/components/responses/ErrorResponse'
components:
  examples:
    LoginResponseExample:
      summary: Successful login
      value:
        requestSuccessful: true
        responseMessage: success
        responseCode: '0'
        responseBody:
          accessToken: eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJNS19QUk9EXzAxIn0.x
          expiresIn: 3600
  schemas:
    LoginResponseBody:
      type: object
      properties:
        accessToken:
          type: string
          description: Bearer access token; place in the Authorization header on every subsequent Monnify call.
        expiresIn:
          type: integer
          description: Token lifetime in seconds (typically 3600).
    Error:
      type: object
      properties:
        requestSuccessful:
          type: boolean
          example: false
        responseMessage:
          type: string
        responseCode:
          type: string
        responseBody:
          type: object
    LoginResponse:
      type: object
      properties:
        requestSuccessful:
          type: boolean
        responseMessage:
          type: string
        responseCode:
          type: string
        responseBody:
          $ref: '#/components/schemas/LoginResponseBody'
  responses:
    ErrorResponse:
      description: Authentication failed.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    BasicAuth:
      type: http
      scheme: basic
      description: Basic auth using API client id and client secret from the Moniepoint Business dashboard.