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

# Get a country

> Same data as `GET /mobile-money/countries` for one country.



## OpenAPI

````yaml /openapi.yaml get /mobile-money/countries/{country}
openapi: 3.1.0
info:
  title: KemyPay API
  version: '1.0'
  description: >
    KemyPay lets you collect mobile money payments in 12 African countries
    through one API, with one balance per

    service, country and currency.


    Every request is authenticated with a secret API key (`sk_live_…` or
    `sk_test_…`) and must come from one of

    your allowed IP addresses. Responses use the same envelope: `{ "success":
    true, "data": …, "meta": … }`, or

    `{ "success": false, "error": { "code", "message", "details" }, "meta": …
    }`.


    Collections, quotes and operator prediction are in **beta**: they are being
    rolled out in production.
  contact:
    name: KemyPay Support
    email: hi@kemypay.com
servers:
  - url: https://api.kemypay.com/v1
    description: Production
security:
  - BearerAuth: []
tags:
  - name: Catalog
    description: Countries, operators, prices and service categories
  - name: Services
    description: Your services (one per app or business activity), validated by our team
  - name: Collections
    description: Collect a payment from a customer's mobile money account (beta)
  - name: Balances
    description: One balance per service, country and currency
paths:
  /mobile-money/countries/{country}:
    get:
      tags:
        - Catalog
      summary: Get a country
      description: Same data as `GET /mobile-money/countries` for one country.
      operationId: getCountry
      parameters:
        - name: country
          in: path
          required: true
          description: ISO 3166-1 alpha-3 code, for example `CMR`.
          schema:
            type: string
            pattern: ^[A-Za-z]{3}$
            example: CMR
      responses:
        '200':
          description: The country and its operators
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  data:
                    $ref: '#/components/schemas/Country'
                  meta:
                    $ref: '#/components/schemas/Meta'
        '422':
          $ref: '#/components/responses/CountryError'
components:
  schemas:
    Country:
      type: object
      properties:
        country:
          type: string
          example: CMR
        name:
          type: string
          example: Cameroon
        currencies:
          type: array
          items:
            type: string
          example:
            - XAF
        operators:
          type: array
          items:
            $ref: '#/components/schemas/Operator'
      example:
        country: CMR
        name: Cameroon
        currencies:
          - XAF
        operators:
          - operator: MTN_CMR
            name: MTN
            currency: XAF
            decimals: 0
            collection:
              status: operational
              available: true
              min_amount: '1.00'
              max_amount: '1000000.00'
              fee:
                percent: '3.25'
                fixed_tiers: []
                fixed_currency: null
            payout:
              status: operational
              available: true
              min_amount: '1.00'
              max_amount: '1000000.00'
              fee:
                percent: '2.3'
                fixed_tiers: []
                fixed_currency: null
            refund:
              status: operational
              available: false
              min_amount: '1.00'
              max_amount: '1000000.00'
              fee: null
          - operator: ORANGE_CMR
            name: Orange
            currency: XAF
            decimals: 0
            collection:
              status: closed
              available: false
              min_amount: '1.00'
              max_amount: '1000000.00'
              fee:
                percent: '3.27'
                fixed_tiers: []
                fixed_currency: null
            payout:
              status: operational
              available: true
              min_amount: '1.00'
              max_amount: '1000000.00'
              fee:
                percent: '2'
                fixed_tiers: []
                fixed_currency: null
            refund:
              status: operational
              available: false
              min_amount: '1.00'
              max_amount: '1000000.00'
              fee: null
    Meta:
      type: object
      properties:
        request_id:
          type: string
          example: a4f8e2c1b3d97056
        timestamp:
          type: string
          format: date-time
          example: '2026-10-29T10:00:00+00:00'
        mode:
          type: string
          enum:
            - test
            - live
          example: live
    Operator:
      type: object
      properties:
        operator:
          type: string
          description: Stable KemyPay code of the operator (brand and country). Store it.
          example: MTN_CMR
        name:
          type: string
          example: MTN
        currency:
          type: string
          example: XAF
        decimals:
          type: integer
          enum:
            - 0
            - 2
          description: >-
            Decimals accepted in amounts by this operator. `0` means whole
            amounts only.
          example: 0
        collection:
          $ref: '#/components/schemas/Operation'
        payout:
          $ref: '#/components/schemas/Operation'
        refund:
          $ref: '#/components/schemas/Operation'
    Error:
      type: object
      properties:
        success:
          type: boolean
          example: false
        error:
          type: object
          properties:
            code:
              type: string
              example: VALIDATION_ERROR
            message:
              type: string
              example: Some fields of the payment are missing or invalid.
            details:
              type: object
              additionalProperties: true
              example:
                phone_number: >-
                  Required: the mobile money number with the country code,
                  digits only, for example 237670000000.
        meta:
          $ref: '#/components/schemas/Meta'
    Operation:
      type: object
      properties:
        status:
          type: string
          enum:
            - operational
            - delayed
            - closed
            - unavailable
          example: operational
        available:
          type: boolean
          description: >-
            `true` when you can use this operation now. Use this flag rather
            than `status`.
          example: true
        min_amount:
          type:
            - string
            - 'null'
          example: '1.00'
        max_amount:
          type:
            - string
            - 'null'
          example: '1000000.00'
        fee:
          oneOf:
            - $ref: '#/components/schemas/Fee'
            - type: 'null'
    Fee:
      type: object
      description: >
        Your all-in price: `percent` of the amount the customer pays, plus the
        fixed amount of the matching tier (if

        any). A tier applies when the amount is strictly below `below`; `below:
        null` covers every larger amount.
      properties:
        percent:
          type: string
          example: '3.25'
        fixed_tiers:
          type: array
          items:
            type: object
            properties:
              below:
                type:
                  - string
                  - 'null'
                example: '101'
              fixed:
                type: string
                example: '0'
        fixed_currency:
          type:
            - string
            - 'null'
          example: null
  responses:
    CountryError:
      description: >-
        `VALIDATION_ERROR` (not an alpha-3 code) or `COUNTRY_NOT_SUPPORTED` (not
        available for your account).
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            success: false
            error:
              code: COUNTRY_NOT_SUPPORTED
              message: Mobile money is not available in GHA for your account.
            meta:
              request_id: a4f8e2c1b3d97056
              timestamp: '2026-10-29T10:00:00+00:00'
              mode: live
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: >-
        Your secret API key: `sk_live_…` (real money) or `sk_test_…` (test
        mode).

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.