MTN Taxation V1

This service provides comprehensive taxation management capabilities for MTN operations including tax calculation, validation, reporting, and compliance. It handles various taxation scenarios including service tax, VAT, and regulatory tax requirements, integrating with multiple tax systems across the MTN ecosystem.

OpenAPI Specification

mtn-group-taxation-v1.yml Raw ↑
openapi: 3.0.1
info:
  title: Taxation
  description: "This service provides comprehensive taxation management capabilities\
    \ for MTN operations including tax calculation, validation, reporting, and compliance.\
    \ It handles various taxation scenarios including service tax, VAT, and regulatory\
    \ tax requirements, integrating with multiple tax systems across the MTN ecosystem."
  license:
    name: MADAPI
    url: https://developers.mtn.com/
  version: 3.0.0 - Last updated date:2026-07-15 18:19:18
servers:
- url: https://api.mtn.com/v1
  description: Production Server
security:
- OAuth2: []
tags:
- name: Taxation
paths:
  /{accountHolderId}/reserve:
    post:
      tags:
      - Taxation
      summary: Request for the taxable amount
      description: "This operation retrieves the taxable amount of a transaction from\
        \ the Ghana Revenue Authority. The endpoint supports e-levy calculations,\
        \ MSISDN validation, country code processing, and comprehensive financial\
        \ resource management with system endpoint routing."
      operationId: Taxation_post_getTaxationAmount_accountHolderIdreser
      parameters:
      - name: accountHolderId
        in: path
        required: true
        schema:
          type: string
      - name: targetSystem
        in: header
        required: true
        schema:
          type: string
      - name: transactionId
        in: header
        required: false
        schema:
          type: string
      - name: x-authorization
        in: header
        required: false
        schema:
          type: string
      - name: x-country-code
        in: header
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              title: ElevyRequest
              type: object
              properties:
                receiverAccountNumber:
                  type: string
                receiverInstitutionId:
                  type: string
                senderIssuerId:
                  type: string
                transferAmount:
                  type: string
                senderAccountNumber:
                  type: string
                chargingPartyId:
                  type: string
                clientTimestamp:
                  type: string
                resourceId:
                  type: string
        required: true
      responses:
        "200":
          description: HTTP 200 indicating the request succeeded; the response body
            follows the documented schema for this operation and includes correlation
            identifiers where applicable for traceability across MTN MADAPI TMF908-iot-Device
            Management flows.
          content:
            application/json:
              schema:
                title: TaxationResponse
                type: object
                properties:
                  eLevyId:
                    type: string
                  taxableAmount:
                    type: string
                  currency:
                    type: string
                  operation:
                    type: string
                  statusCode:
                    type: string
                  transactionId:
                    type: string
        "400":
          description: "Bad request. Invalid request parameters, missing required\
            \ fields, or validation errors."
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
        "401":
          description: "Unauthorized. Invalid or missing authorization credentials,\
            \ insufficient permissions, or authentication failure."
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
        "403":
          description: Forbidden. Access denied. The request is valid but the server
            refuses to perform it.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
        "404":
          description: Not found. The requested resource was not found or does not
            exist.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
        "500":
          description: "Internal server error. Unexpected system failure, database\
            \ connectivity issues, or external service integration problems."
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
        "502":
          description: Bad gateway. The server acting as a gateway received an invalid
            response from an upstream server.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
        "503":
          description: Service unavailable. The server is temporarily unable to handle
            the request due to maintenance or overload.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
      deprecated: false
components:
  schemas:
    com_mtn_madapi_ecw_models_madapi_elevy_ElevyRequest:
      title: ElevyRequest
      type: object
      properties:
        receiverAccountNumber:
          type: string
        receiverInstitutionId:
          type: string
        senderIssuerId:
          type: string
        transferAmount:
          type: string
        senderAccountNumber:
          type: string
        chargingPartyId:
          type: string
        clientTimestamp:
          type: string
        resourceId:
          type: string
    com_mtn_aggregator_models_response_TaxationResponse:
      title: TaxationResponse
      type: object
      properties:
        eLevyId:
          type: string
        taxableAmount:
          type: string
        currency:
          type: string
        operation:
          type: string
        statusCode:
          type: string
        transactionId:
          type: string
    APIError:
      title: APIError
      required:
      - statusCode
      - statusMessage
      type: object
      properties:
        statusCode:
          type: string
          description: Error status code
          example: "400"
        statusMessage:
          type: string
          description: Human-readable error message
          example: Bad request. Invalid parameters provided.
        supportMessage:
          type: string
          description: Technical support message or error code for troubleshooting
          example: VALIDATION_ERROR
        transactionId:
          type: string
          description: Transaction identifier for tracking and correlation
          example: "1234567890"
        sequenceNo:
          type: string
          description: Sequence number for request tracking
          example: "20250115120000001"
        timestamp:
          type: string
          description: Error timestamp in ISO 8601 format
          format: date-time
          example: 2025-01-15T12:00:00Z
        path:
          type: string
          description: API endpoint path where the error occurred
          example: /api/v1/resource
        method:
          type: string
          description: HTTP method of the request that caused the error
          example: POST
        downstreamStatusCode:
          type: string
          description: Downstream service error code if applicable
      description: Generic MADAPI error response structure
      example:
        statusCode: "400"
        statusMessage: "Bad request. Invalid request parameters, missing required\
          \ fields, or validation errors."
        supportMessage: API_ERROR
        transactionId: "1234567890"
        sequenceNo: "20250115120000001"
        timestamp: 2025-01-15T12:00:00Z
  securitySchemes:
    OAuth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://api.mtn.com/v1/oauth/access_token
          scopes: {}
    Bearer:
      type: http
      description: Bearer token received from OAuth2.0 authentication with the MADAPI
      scheme: bearer
      bearerFormat: JWT