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

# Get Channel List

> The following input parameters are expected to be provided by the merchant to retrieve available channels by country code. 



## OpenAPI

````yaml /openapi.json get /api/services/app/Channel/GetTenantChannelsByCountry
openapi: 3.0.1
info:
  title: CommercePay API
  version: v1
  description: >
    ---

    **Credentials Accounts**


    Every account is provided with separate keys for testing and for running
    live transactions. Once the merchant application has been approved,
    developers can begin the process of integrating the CommercePay API. The
    following details will be provided to get started with the integration. 


    <a href="https://docs.commercepay.asia/docs/api/d19b0f3289ae0-get-started"
    target="_blank">Get Started</a>
  contact: {}
servers:
  - description: Staging
    url: https://staging-payments.commerce.asia
  - url: https://payments.commerce.asia
    description: Production
security: []
paths:
  /api/services/app/Channel/GetTenantChannelsByCountry:
    parameters: []
    get:
      tags:
        - Channel
      summary: Get Channel List
      description: >-
        The following input parameters are expected to be provided by the
        merchant to retrieve available channels by country code. 
      operationId: ApiServicesAppChannelGettenantchannelsbycountryGet
      parameters:
        - schema:
            type: string
            example: MY
            maxLength: 2
          in: query
          name: countryCode
          description: Country code with 2-letter of ISO Alpha-2 standard
          required: true
        - $ref: '#/components/parameters/AbpTenantId'
        - $ref: '#/components/parameters/Authorization'
        - $ref: '#/components/parameters/CapSignature'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ChannelDto'
              examples:
                Example Response:
                  value:
                    - id: 2
                      name: FPX
                      type: 1
                      refundType: 0
                      isProviderHostChannel: true
                      currencies:
                        - acceptedCurrencyCode: MYR
                          minRequestAmount: null
                          maxRequestAmount: null
                          dailyTransactionCount: null
                          dailyTransactionAmount: null
                          minSurchargeAmount: null
                          maxSurchargeAmount: null
                          isSurchargePercentage: null
                          surcharge: null
                      imageUrl: >-
                        https://commerceasiapayment.blob.core.windows.net/image/payment/channel/2/2.png
                      groupId: null
                      groupName: null
                      groupImageUrl: null
components:
  parameters:
    AbpTenantId:
      schema:
        type: string
      in: header
      name: Abp-TenantId
      required: true
      description: Your unique Merchant ID assigned by CommercePay.
    Authorization:
      schema:
        type: string
      in: header
      name: Authorization
      required: true
      description: Your API credentials used for authentication (typically a Bearer token).
    CapSignature:
      schema:
        type: string
      in: header
      name: cap-signature
      required: true
      description: >-
        A unique security hash used to verify the integrity of the request body.
        See [Generate Signature](/docs/generate-signature) for how to generate
        this.
  schemas:
    ChannelDto:
      type: object
      additionalProperties: false
      x-internal: false
      properties:
        id:
          type: integer
          format: int32
          description: An identifier that represents CommercePay channel.
        name:
          type: string
          description: Channel Name
          nullable: true
        type:
          $ref: '#/components/schemas/ChannelType'
        refundType:
          $ref: '#/components/schemas/ChannelRefundType'
        isProviderHostChannel:
          type: boolean
          description: >-
            If "isProviderHostChannel" is indicated as true, it means that the
            provider has its own one or more hosted channels. To get provider
            channels, merchants are required to call the endpoint:
            /api/services/app/Channel/GetProviderChannels.
        currencies:
          type: array
          nullable: true
          items:
            $ref: '#/components/schemas/ChannelCurrencyDto'
        imageUrl:
          type: string
          description: Url image of Payment Provider channel
          nullable: true
        groupId:
          type: integer
          format: int32
          nullable: true
        groupName:
          type: string
          nullable: true
        groupImageUrl:
          type: string
          nullable: true
        savePayment:
          type: boolean
          description: Availability to save user info for subsequent payments
    ChannelType:
      enum:
        - 1
        - 2
      type: integer
      format: int32
      x-enumNames:
        - OnlinePayment
        - OnlinePayout
        - OnlineRecurringPayment
      description: >-
        Channel Type: [1= OnlinePayment, 2= OnlinePayout, 3=
        OnlineRecurringPayment]
    ChannelRefundType:
      title: ChannelRefundType
      type: integer
      format: int32
      x-enumNames:
        - UnSupportedRefund
        - FullRefund
        - FullRefundOrPartialRefund
      enum:
        - 0
        - 1
        - 2
      description: >-
        Channel Support Refund Type: [0= UnSupported Refund, 1= Only Full
        Refund, 2= Full Refund And Partial Refund]
    ChannelCurrencyDto:
      type: object
      additionalProperties: false
      x-internal: false
      properties:
        acceptedCurrencyCode:
          type: string
          description: Currency code with a 3-letter ISO4217 standard code
          nullable: true
        minRequestAmount:
          type: number
          format: double
          description: Minimum Request Amount
          nullable: true
        maxRequestAmount:
          type: number
          format: double
          description: Maximum Request Amount
          nullable: true
        dailyTransactionCount:
          type: integer
          format: int32
          description: Daily Transaction Count
          nullable: true
        dailyTransactionAmount:
          type: number
          format: double
          description: Daily Transaction Amount
          nullable: true
        minSurchargeAmount:
          type: number
          format: double
          description: Minimum Surcharge Amount
          nullable: true
        maxSurchargeAmount:
          type: number
          format: double
          description: Maximum Surcharge Amount
          nullable: true
        isSurchargePercentage:
          type: boolean
          description: Indicate Surcharge Amount is Percentage
          nullable: true
        surcharge:
          type: number
          format: double
          description: Surcharge Amount
          nullable: true

````