Afriex Payment Methods API

Register and resolve customer payout and collection methods.

Operations 11

POST /api/v1/payment-method Create a payment method #
GET /api/v1/payment-method Get payment method list #
GET /api/v1/payment-method/{paymentMethodId} Get payment method by ID #
DELETE /api/v1/payment-method/{paymentMethodId} Delete payment method #
GET /api/v1/payment-method/institution Get list of payment method institutions by country #
GET /api/v1/payment-method/institution/codes Resolve bank code to institution name #
GET /api/v1/payment-method/resolve Resolve payment method recipient by account number #
GET /api/v1/payment-method/crypto-wallet Get or create crypto wallet payment method #
GET /api/v1/payment-method/virtual-account List existing virtual accounts #
POST /api/v1/payment-method/virtual-account Create a virtual account payment method #
GET /api/v1/payment-method/pool-account Get the business pool account #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/afriex-payment-methods-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

afriex-payment-methods-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Afriex Business Payment Methods API
  version: 1.0.13
  description: 'Welcome to the Afriex Business API. This API allows you to manage customers, process payments, handle payouts, and receive real-time notifications via webhooks.


    For detailed guidance on authentication, pagination, error handling, and webhooks, please refer to the dedicated guides in the top bar. The guide provides a step-by-step instructions to help you integrate seamlessly.'
  termsOfService: https://www.afriex.com/terms-and-condition
  contact:
    name: Afriex API Support
    email: support@afriex.com
    url: https://docs.afriex.com
  license:
    name: Proprietary
    url: https://www.afriex.com/terms-and-condition
servers:
- url: https://sandbox.api.afriex.com
  description: Staging Base URL
- url: https://api.afriex.com
  description: Production Base URL
security:
- ApiKey: []
tags:
- name: Payment Methods
  description: Register and resolve customer payout and collection methods.
paths:
  /api/v1/payment-method:
    parameters:
    - $ref: '#/components/parameters/x-api-signature'
    - $ref: '#/components/parameters/x-api-version'
    post:
      operationId: createPaymentMethod
      summary: Create a payment method
      description: Creates a new payment method.
      tags:
      - Payment Methods
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - channel
              - accountName
              - accountNumber
              - countryCode
              - institution
              properties:
                channel:
                  type: string
                  description: The payment method channel
                  enum:
                  - BANK_ACCOUNT
                  - MOBILE_MONEY
                  - VIRTUAL_BANK_ACCOUNT
                  - ACH_BANK_ACCOUNT
                  - INTERAC
                  - UPI
                  - SWIFT
                  - WE_CHAT
                customerId:
                  description: Optional. The customer to attach this payment method to. When omitted, it is attached to the business owner.
                  $ref: '#/components/schemas/customerId'
                type:
                  type: string
                  description: 'The capability of this payment method. DEPOSIT means funds can be pulled from this method (e.g. charge/collect from the customer). WITHDRAW means funds can be sent to this method (e.g. pay out to the customer). If omitted, defaults to WITHDRAW.

                    '
                  enum:
                  - DEPOSIT
                  - WITHDRAW
                accountName:
                  type: string
                  description: 'The name of the account holder. Must use Latin-script letters (A-Z / a-z, including accented forms such as é, ñ, ü, ç) or Chinese (Han) characters, digits (0-9), spaces and the characters & ( ) + , - . / : ? and apostrophe; it must contain at least one letter. Names in other scripts (e.g. Arabic, Cyrillic) or containing other symbols are rejected. Exception: China-facing payouts on the `WE_CHAT` channel (which carries both WeChat and Alipay) accept the beneficiary''s local-script (e.g. Chinese) name.'
                accountNumber:
                  type: string
                  description: The account number
                countryCode:
                  type: string
                  description: The ISO 3166-1 alpha-2 country code. This has to be one of the countries we support
                institution:
                  description: The destination institution. For USD (SWIFT) payout payment methods, correspondentBankName and correspondentBankAccountNumber are mandatory.
                  $ref: '#/components/schemas/PaymentMethodInstitution'
                recipient:
                  $ref: '#/components/schemas/PaymentMethodRecipient'
                transaction:
                  $ref: '#/components/schemas/PaymentMethodTransaction'
            examples:
              Bank Account:
                summary: Bank Account, register a bank account to send funds to
                value:
                  customerId: 69528240ba52c13b669fb239
                  type: WITHDRAW
                  channel: BANK_ACCOUNT
                  accountName: John Doe
                  accountNumber: 0123456789
                  countryCode: NG
                  institution:
                    institutionCode: 058
                    institutionName: GTBank
              SWIFT Transfer:
                summary: SWIFT, register an international bank account via SWIFT
                value:
                  customerId: 69528240ba52c13b669fb239
                  type: WITHDRAW
                  channel: SWIFT
                  accountName: John Doe
                  accountNumber: DE89370400440532013000
                  countryCode: DE
                  institution:
                    institutionCode: DEUTDEDB
                    institutionName: Deutsche Bank
                    institutionAddress: Taunusanlage 12, 60262 Frankfurt am Main, Germany
                    correspondentBankName: Citibank N.A. New York
                    correspondentBankAccountNumber: '10991234'
                  recipient:
                    recipientAddress: Musterstraße 1, 10115 Berlin, Germany
                  transaction:
                    transactionNarration: Payment for services
              Mobile Money:
                summary: Mobile Money, register a mobile money account to send funds to
                value:
                  customerId: 69528240ba52c13b669fb239
                  type: WITHDRAW
                  channel: MOBILE_MONEY
                  accountName: John Doe
                  accountNumber: '0201234567'
                  countryCode: GH
                  institution:
                    institutionCode: MTN
                    institutionName: MTN
              Mobile Money (Deposit):
                summary: Mobile Money, register a mobile money account to pull funds from
                value:
                  customerId: 69528240ba52c13b669fb239
                  type: DEPOSIT
                  channel: MOBILE_MONEY
                  accountName: John Doe
                  accountNumber: '0201234567'
                  countryCode: GH
                  institution:
                    institutionCode: MTN
                    institutionName: MTN
              UPI:
                summary: UPI, register a UPI ID to send funds to (India)
                value:
                  customerId: 69528240ba52c13b669fb239
                  type: WITHDRAW
                  channel: UPI
                  accountName: Raj Kumar
                  accountNumber: rajkumar@upi
                  countryCode: IN
                  institution:
                    institutionCode: UPI
                    institutionName: UPI
                  recipient:
                    recipientPhone: '+919876543210'
              Interac:
                summary: Interac, register an Interac e-Transfer recipient (Canada)
                value:
                  customerId: 69528240ba52c13b669fb239
                  type: WITHDRAW
                  channel: INTERAC
                  accountName: John Doe
                  accountNumber: john.doe@email.com
                  countryCode: CA
                  institution:
                    institutionCode: INTERAC
                    institutionName: INTERAC
                  recipient:
                    recipientEmail: john.doe@email.com
              WeChat Pay:
                summary: WeChat Pay, register a WeChat Pay account to send funds to (China)
                value:
                  customerId: 69528240ba52c13b669fb239
                  type: WITHDRAW
                  channel: WE_CHAT
                  accountName: Zhang Wei
                  accountNumber: '+8613812345678'
                  countryCode: CN
                  institution:
                    institutionCode: WECHAT
                    institutionName: WECHAT
                  recipient:
                    recipientPhone: '+8613812345678'
              Alipay:
                summary: Alipay, register an Alipay account to send funds to (China). Alipay is routed over the WE_CHAT channel with institutionName ALIPAY; there is no separate ALIPAY channel.
                value:
                  customerId: 69528240ba52c13b669fb239
                  type: WITHDRAW
                  channel: WE_CHAT
                  accountName: Zhang Wei
                  accountNumber: '+8613812345678'
                  countryCode: CN
                  institution:
                    institutionCode: ALIPAY
                    institutionName: ALIPAY
                  recipient:
                    recipientPhone: '+8613812345678'
      responses:
        '201':
          description: Payment method created successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/PaymentMethod'
              examples:
                bankAccount:
                  summary: Bank account payment method created
                  value:
                    data:
                      paymentMethodId: 69d6002579101baa20f63816
                      channel: BANK_ACCOUNT
                      customerId: 69d60024ab82306f11b03325
                      institution:
                        institutionCode: '000013'
                        institutionName: GTBank
                      accountName: John Doe
                      accountNumber: 0123456789
                      countryCode: NG
        '400':
          description: Invalid request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                missingRequiredField:
                  summary: Missing required field
                  value:
                    code: INVALID_USER_DATA
                    error: Invalid user data
                    details:
                      errorMessage: Invalid user data
                      friendlyMessage: ''
        '401':
          description: Unauthorized - Invalid business API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                missingApiKey:
                  summary: Missing API key
                  value:
                    code: AUTHENTICATION_ERROR
                    error: Authorization header is missing
                    details: {}
                invalidApiKey:
                  summary: Invalid API key
                  value:
                    code: AUTHENTICATION_ERROR
                    error: Invalid authorization header
                    details: {}
        '500':
          description: Server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                serverError:
                  summary: Unexpected server error
                  value:
                    code: INTERNAL_SERVER_ERROR
                    error: It's not you, it's us, please reach out to support
                    details: {}
        '503':
          description: 'Temporarily unavailable: an upstream payment processor failed or timed out, or the API is restarting. Retry with backoff and honour the Retry-After header when present. The API never returns 502 or 504; if you receive one of those, it was generated by Cloudflare and its body does not follow this schema.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                serviceUnavailable:
                  summary: Upstream processor unavailable
                  value:
                    code: EXTERNAL_REQUEST_ERROR
                    error: External request error
                    details: {}
      x-codeSamples:
      - lang: TypeScript
        label: Afriex SDK
        source: "const paymentMethod = await afriex.paymentMethods.create({\n  channel: \"BANK_ACCOUNT\",\n  customerId: \"customer-id\",\n  accountName: \"John Doe\",\n  accountNumber: \"1234567890\",\n  countryCode: \"NG\",\n  institution: {\n    institutionCode: \"044\",\n    institutionName: \"Access Bank\",\n  },\n});\n"
    get:
      operationId: listPaymentMethods
      summary: Get payment method list
      description: Retrieves a paginated list of payment methods.
      tags:
      - Payment Methods
      parameters:
      - name: page
        in: query
        description: Page number for pagination (starting from 0)
        required: false
        schema:
          type: integer
          minimum: 0
          default: 0
      - name: limit
        in: query
        description: Number of items per page
        required: false
        schema:
          type: integer
          minimum: 1
          maximum: 100
          default: 10
      - name: channel
        in: query
        description: Filter by one or more payment channels. Use a comma-separated list for multiple values (e.g. `?channel=BANK_ACCOUNT,MOBILE_MONEY`).
        required: false
        schema:
          type: array
          items:
            type: string
            enum:
            - BANK_ACCOUNT
            - MOBILE_MONEY
            - INTERAC
            - UPI
            - WE_CHAT
            - VIRTUAL_BANK_ACCOUNT
            - RFP
            - SWIFT
        style: form
        explode: false
      - name: currencies
        in: query
        description: Filter by one or more 3-letter ISO 4217 currency codes. Use a comma-separated list for multiple values (e.g. `?currencies=USD,NGN`).
        required: false
        schema:
          type: array
          items:
            type: string
        style: form
        explode: false
      - name: capabilities
        in: query
        description: Filter by payment method capability. Only `WITHDRAW` is currently supported. Defaults to `WITHDRAW` when omitted.
        required: false
        schema:
          type: array
          items:
            type: string
            enum:
            - WITHDRAW
          default:
          - WITHDRAW
        style: form
        explode: false
      - name: status
        in: query
        description: Filter by one or more payment method statuses. Defaults to `active,pending` when omitted.
        required: false
        schema:
          type: array
          items:
            type: string
            enum:
            - active
            - pending
          default:
          - active
          - pending
        style: form
        explode: false
      responses:
        '200':
          description: List of payment methods retrieved successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/PaymentMethod'
                  page:
                    type: integer
                    description: Current page number
                  total:
                    type: integer
                    description: Total number of payment methods matching the query
              examples:
                success:
                  summary: Payment method list retrieved
                  value:
                    data:
                    - paymentMethodId: 6936b8774f987b2994865b73
                      channel: BANK_ACCOUNT
                      customerId: 6922e4520a53e858ab42efa8
                      institution:
                        institutionCode: '000013'
                        institutionName: GTBank
                      accountName: John Doe
                      accountNumber: '1234567890'
                      countryCode: NG
                    - paymentMethodId: 6936b8e54f987b2994865b8b
                      channel: BANK_ACCOUNT
                      customerId: 6928515c6befd180bc451622
                      institution:
                        institutionCode: '000017'
                        institutionName: WEMA BANK
                      accountName: Test Account
                      accountNumber: '1213131313'
                      countryCode: NG
                    total: 1006
                    page: 0
        '401':
          description: Unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                missingApiKey:
                  summary: Missing API key
                  value:
                    code: AUTHENTICATION_ERROR
                    error: Authorization header is missing
                    details: {}
                invalidApiKey:
                  summary: Invalid API key
                  value:
                    code: AUTHENTICATION_ERROR
                    error: Invalid authorization header
                    details: {}
        '422':
          description: Request failed schema validation. `details.friendlyMessage` carries the specific field error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                validationError:
                  summary: Validation error
                  value:
                    code: VALIDATION_ERROR
                    error: Validation error
                    details:
                      errorMessage: Validation error
                      friendlyMessage: '''page'' must be a number'
        '500':
          description: Server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                serverError:
                  summary: Unexpected server error
                  value:
                    code: INTERNAL_SERVER_ERROR
                    error: It's not you, it's us, please reach out to support
                    details: {}
        '503':
          description: 'Temporarily unavailable: an upstream payment processor failed or timed out, or the API is restarting. Retry with backoff and honour the Retry-After header when present. The API never returns 502 or 504; if you receive one of those, it was generated by Cloudflare and its body does not follow this schema.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                serviceUnavailable:
                  summary: Upstream processor unavailable
                  value:
                    code: EXTERNAL_REQUEST_ERROR
                    error: External request error
                    details: {}
      x-codeSamples:
      - lang: TypeScript
        label: Afriex SDK
        source: "const response = await afriex.paymentMethods.list({\n  page: 1,\n  limit: 20,\n});\n"
  /api/v1/payment-method/{paymentMethodId}:
    parameters:
    - $ref: '#/components/parameters/x-api-signature'
    - $ref: '#/components/parameters/x-api-version'
    get:
      operationId: getPaymentMethod
      summary: Get payment method by ID
      description: Retrieves a specific payment method by its unique identifier.
      tags:
      - Payment Methods
      parameters:
      - name: paymentMethodId
        in: path
        description: The unique identifier of the payment method
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Payment method retrieved successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/PaymentMethod'
              examples:
                success:
                  summary: Payment method retrieved
                  value:
                    data:
                      paymentMethodId: 6936b8774f987b2994865b73
                      channel: BANK_ACCOUNT
                      customerId: 6922e4520a53e858ab42efa8
                      institution:
                        institutionCode: '000013'
                        institutionName: GTBank
                      accountName: John Doe
                      accountNumber: '1234567890'
                      countryCode: NG
        '400':
          description: Request error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                validationError:
                  summary: Validation error
                  value:
                    code: VALIDATION_ERROR
                    error: 'Failed to parse request. Issues: ''paymentMethodId'' must be a string'
                    details: {}
        '401':
          description: Unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                missingApiKey:
                  summary: Missing API key
                  value:
                    code: AUTHENTICATION_ERROR
                    error: Authorization header is missing
                    details: {}
                invalidApiKey:
                  summary: Invalid API key
                  value:
                    code: AUTHENTICATION_ERROR
                    error: Invalid authorization header
                    details: {}
        '404':
          description: Payment method not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                notFound:
                  summary: Payment method not found
                  value:
                    code: BUSINESS_PAYMENT_METHOD_NOT_FOUND
                    error: Business payment method not found
                    details:
                      errorMessage: Business payment method not found
                      friendlyMessage: ''
        '500':
          description: Server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                serverError:
                  summary: Unexpected server error
                  value:
                    code: INTERNAL_SERVER_ERROR
                    error: It's not you, it's us, please reach out to support
                    details: {}
        '503':
          description: 'Temporarily unavailable: an upstream payment processor failed or timed out, or the API is restarting. Retry with backoff and honour the Retry-After header when present. The API never returns 502 or 504; if you receive one of those, it was generated by Cloudflare and its body does not follow this schema.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                serviceUnavailable:
                  summary: Upstream processor unavailable
                  value:
                    code: EXTERNAL_REQUEST_ERROR
                    error: External request error
                    details: {}
      x-codeSamples:
      - lang: TypeScript
        label: Afriex SDK
        source: 'const paymentMethod = await afriex.paymentMethods.get("payment-method-id");

          '
    delete:
      operationId: deletePaymentMethod
      summary: Delete payment method
      description: Removes a payment method from the system.
      tags:
      - Payment Methods
      parameters:
      - name: paymentMethodId
        in: path
        description: The unique identifier of the payment method
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Payment method deleted successfully.
          content:
            application/json:
              schema:
                type: object
              examples:
                success:
                  summary: Payment method deleted
                  value: {}
        '400':
          description: Request error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                validationError:
                  summary: Validation error
                  value:
                    code: VALIDATION_ERROR
                    error: 'Failed to parse request. Issues: ''paymentMethodId'' must be a string'
                    details: {}
        '401':
          description: Unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                missingApiKey:
                  summary: Missing API key
                  value:
                    code: AUTHENTICATION_ERROR
                    error: Authorization header is missing
                    details: {}
                invalidApiKey:
                  summary: Invalid API key
                  value:
                    code: AUTHENTICATION_ERROR
                    error: Invalid authorization header
                    details: {}
        '404':
          description: Payment method not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                notFound:
                  summary: Payment method not found
                  value:
                    code: BUSINESS_PAYMENT_METHOD_NOT_FOUND
                    error: Business payment method not found
                    details:
                      errorMessage: Business payment method not found
                      friendlyMessage: ''
        '500':
          description: Server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                serverError:
                  summary: Unexpected server error
                  value:
                    code: INTERNAL_SERVER_ERROR
                    error: It's not you, it's us, please reach out to support
                    details: {}
        '503':
          description: 'Temporarily unavailable: an upstream payment processor failed or timed out, or the API is restarting. Retry with backoff and honour the Retry-After header when present. The API never returns 502 or 504; if you receive one of those, it was generated by Cloudflare and its body does not follow this schema.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                serviceUnavailable:
                  summary: Upstream processor unavailable
                  value:
                    code: EXTERNAL_REQUEST_ERROR
                    error: External request error
                    details: {}
      x-codeSamples:
      - lang: TypeScript
        label: Afriex SDK
        source: 'await afriex.paymentMethods.delete("payment-method-id");

          '
  /api/v1/payment-method/institution:
    parameters:
    - $ref: '#/components/parameters/x-api-signature'
    - $ref: '#/components/parameters/x-api-version'
    get:
      operationId: listInstitutions
      summary: Get list of payment method institutions by country
      description: Retrieves a list of banks or mobile money providers available for a specific country.
      tags:
      - Payment Methods
      parameters:
      - name: channel
        in: query
        description: The payment method channel. Institution lookup is only implemented for these three channels; any other channel returns `400 INVALID_TRANSACTION_CHANNEL`.
        required: true
        schema:
          type: string
          enum:
          - BANK_ACCOUNT
          - SWIFT
          - MOBILE_MONEY
      - name: countryCode
        in: query
        description: The ISO 3166-1 alpha-2 country code
        required: true
        schema:
          type: string
          enum:
          - US
          - NG
          - GB
          - DE
          - FR
          - CA
          - ZA
          - GH
          - KE
          - UG
          - TZ
          - RW
          - CM
          - CG
          - GA
          - CF
          - CI
          - BF
          - ML
          - SN
          - TG
          - BJ
          - NE
          - GN
          - ZM
          - ET
          - MW
          - MZ
          - BW
          - SL
          - LR
          - GM
          - GW
          - CV
          - ST
          - AO
          - KM
          - DJ
          - SO
          - SC
          - MU
          - SZ
          - LS
      responses:
        '200':
          description: List of banks or mobile money providers retrieved successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/PaymentMethodInstitution'
                  page:
                    type: integer
                    description: Current page number
                  total:
                    type: integer
                    description: Total number of items available
              examples:
                nigeriaBanks:
                  summary: Nigerian bank accounts
                  value:
                    data:
                    - institutionName: Guaranty Trust Bank (GTBank) Plc
                      institutionCode: '000013'
                      institutionBranch: ''
                      institutionAddress: ''
                    - institutionName: Zenith Bank
                      institutionCode: '000015'
                      institutionBranch: ''
                      institutionAddress: ''
                    - institutionName: Wema Bank
                      institutionCode: '000017'
                      institutionBranch: ''
                      institutionAddress: ''
                    total: 38
                    page: 0
                ghanaMobileMoney:
                  summary: Ghana mobile money providers
                  value:
                    data:
                    - institutionName: MTN
                      institutionCode: MTN
                    - institutionName: TIGO
                      institutionCode: TIGO
                    - institutionName: AIRTEL
                      institutionCode: AIRTEL
                    total: 4
                    page: 0
        '400':
          description: Invalid request parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                missingParams:
                  summary: Missing required query parameters
                  value:
                    code: VALIDATION_ERROR
                    error: 'Failed to parse request. Issues: ''countryCode'' is required, ''channel'' is required'
                    details: {}
                invalidChannel:
                  summary: Invalid channel value
                  value:
                    code: VALIDATION_ERROR
                    error: 'Failed to parse request. Issues: ''channel'' must be one of [BANK_ACCOUNT, MOBILE_MONEY, SWIFT, ...]'
                    details: {}
        '401':
          description: Unauthorized - Invalid business API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                missingApiKey:
                  summary: Missing API key
                  value:
                    code: AUTHENTICATION_ERROR
                    error: Authorization header is missing
                    details: {}
                invalidApiKey:
                  summary: Invalid API key
      

# --- truncated at 32 KB (81 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/afriex/refs/heads/main/openapi/afriex-payment-methods-api-openapi.yml