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

# Fetch Billers Info

> Use this API to fetch the complete catalog and MDM (Master Data Management) details of billers registered under BBPS. Use this to understand biller configuration, required customer input parameters, supported payment modes and channels, and fee structures. If the request body is omitted, all billers are returned.




## OpenAPI

````yaml /openapi/bbps/bbps-cou.yaml post /bbps/cou/v1/billers/info
openapi: 3.0.3
info:
  title: BBPS for Customers (Customer Operating Unit)
  version: 1.0.0
  description: >
    APIs for Agent Institutions to integrate with the Bharat Bill Payment System
    (BBPS) as a Customer Operating Unit (COU). These APIs enable bill discovery,
    bill fetch, bill payment, complaint management, and wallet operations.
servers:
  - url: https://sandbox.cashfree.com
    description: Sandbox (Testing) environment.
  - url: https://api.cashfree.com
    description: Production environment.
security:
  - XClientID: []
    XClientSecret: []
paths:
  /bbps/cou/v1/billers/info:
    post:
      tags:
        - Billers
      summary: Fetch Billers Info
      description: >
        Use this API to fetch the complete catalog and MDM (Master Data
        Management) details of billers registered under BBPS. Use this to
        understand biller configuration, required customer input parameters,
        supported payment modes and channels, and fee structures. If the request
        body is omitted, all billers are returned.
      operationId: fetchBillersInfo
      requestBody:
        description: Request parameters to fetch biller catalog and MDM details.
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                biller_fetch_request:
                  type: object
                  description: >
                    Filter criteria. If omitted, all billers are returned. If
                    both `biller_id` and `biller_category_name` are provided,
                    results are a union.
                  properties:
                    biller_id:
                      type: array
                      description: List of biller IDs to fetch. Maximum 100 entries.
                      maxItems: 100
                      items:
                        type: string
                      example:
                        - OBNSTNS00NAT01
                    biller_category_name:
                      type: array
                      description: List of biller categories to fetch. Maximum 50 entries.
                      maxItems: 50
                      items:
                        type: string
                      example:
                        - DTH
            example:
              biller_fetch_request:
                biller_id:
                  - OBNSTNS00NAT01
                biller_category_name:
                  - DTH
      responses:
        '200':
          description: >-
            Success response for fetching the complete catalog and MDM details
            of billers registered under BBPS.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    example: OK
                  message:
                    type: string
                    example: Billers info fetched successfully
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/BillerInfo'
              example:
                status: OK
                message: Billers info fetched successfully
                data:
                  - biller_id: NETFLIX00NAT02
                    biller_alias_name: Netflix - Dummy
                    biller_name: Netflix - Dummy
                    biller_category_name: Subscription
                    biller_mode: ONLINE
                    biller_accepts_adhoc: true
                    biller_coverage: IND
                    fetch_requirement: NOT_SUPPORTED
                    payment_amount_exactness: Exact
                    support_bill_validation: MANDATORY
                    biller_effctv_from: '2021-01-15'
                    biller_effctv_to: '2031-12-31'
                    biller_ownership: Private
                    status: ACTIVE
                    plan_mdm_requirement: MANDATORY
                    biller_customer_params:
                      - param_name: Customer Mobile Number
                        data_type: NUMERIC
                        optional: true
                        min_length: 10
                        max_length: 10
                        regex: ^[6-9]{1}[0-9]{9}$
                        visibility: true
                    biller_payment_modes:
                      - payment_mode: UPI
                        min_limit: 1
                        max_limit: 1
                        support_pending_status: 'Yes'
        '400':
          description: Bad request error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Authentication Error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedResponse'
        '429':
          description: Rate Limit Error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitResponse'
        '500':
          description: API related Error.
components:
  schemas:
    BillerInfo:
      type: object
      properties:
        biller_id:
          type: string
          description: Unique biller identifier.
        biller_name:
          type: string
        biller_alias_name:
          type: string
          description: Display name of the biller.
        biller_category_name:
          type: string
        biller_mode:
          type: string
          enum:
            - ONLINE
            - OFFLINE_A
            - OFFLINE_B
        biller_accepts_adhoc:
          type: boolean
        biller_coverage:
          type: string
          description: >-
            Coverage scope of the biller. Possible values are IND, State, or
            City.
        biller_ownership:
          type: string
          enum:
            - Government
            - PSU
            - Private
        fetch_requirement:
          type: string
          enum:
            - MANDATORY
            - OPTIONAL
            - NOT_SUPPORTED
        support_bill_validation:
          type: string
          nullable: true
          enum:
            - MANDATORY
            - OPTIONAL
            - NOT_SUPPORTED
        payment_amount_exactness:
          type: string
          nullable: true
          enum:
            - Exact
            - Exact and above
            - Exact and below
        biller_effctv_from:
          type: string
          description: Biller effective start date in yyyy-MM-dd format.
        biller_effctv_to:
          type: string
          description: Biller effective end date in yyyy-MM-dd format.
        biller_description:
          type: string
          nullable: true
        support_pending_status:
          type: string
          nullable: true
        support_deemed:
          type: string
          nullable: true
        biller_time_out:
          type: integer
          nullable: true
          description: Timeout duration in minutes.
        status:
          type: string
          nullable: true
          enum:
            - ACTIVE
            - DEACTIVATED
        plan_mdm_requirement:
          type: string
        biller_customer_params:
          type: array
          items:
            $ref: '#/components/schemas/BillerCustomerParam'
        biller_payment_modes:
          type: array
          items:
            $ref: '#/components/schemas/BillerPaymentMode'
        biller_payment_channels:
          type: array
          items:
            $ref: '#/components/schemas/BillerPaymentChannel'
        biller_response_params:
          type: object
          nullable: true
          properties:
            amount_options:
              type: array
              items:
                type: object
                properties:
                  amount_breakup_set:
                    type: array
                    items:
                      type: string
        biller_additional_info:
          type: array
          nullable: true
          items:
            $ref: '#/components/schemas/AdditionalInfoParam'
        biller_additional_info_payment:
          type: array
          nullable: true
          items:
            $ref: '#/components/schemas/AdditionalInfoParam'
        plan_additional_info:
          type: array
          nullable: true
          items:
            $ref: '#/components/schemas/AdditionalInfoParam'
        interchange_fee_conf:
          type: array
          nullable: true
          items:
            $ref: '#/components/schemas/InterchangeFeeConf'
        interchange_fee:
          type: array
          nullable: true
          items:
            $ref: '#/components/schemas/InterchangeFee'
    ErrorResponse:
      type: object
      properties:
        status:
          type: string
          example: BAD_REQUEST
        message:
          type: string
          example: Validation error description
        data:
          nullable: true
          example: null
    UnauthorizedResponse:
      type: object
      properties:
        message:
          type: string
          example: Unauthorized
    RateLimitResponse:
      type: object
      properties:
        message:
          type: string
          example: too_many_requests_per_ip
    BillerCustomerParam:
      type: object
      properties:
        param_name:
          type: string
        data_type:
          type: string
          enum:
            - NUMERIC
            - ALPHANUMERIC
        optional:
          type: boolean
        min_length:
          type: integer
          nullable: true
        max_length:
          type: integer
          nullable: true
        regex:
          type: string
          nullable: true
        visibility:
          type: boolean
          nullable: true
    BillerPaymentMode:
      type: object
      properties:
        payment_mode:
          type: string
          example: UPI
        min_limit:
          type: integer
          nullable: true
        max_limit:
          type: integer
          nullable: true
        support_pending_status:
          type: string
          nullable: true
          enum:
            - 'Yes'
            - 'No'
    BillerPaymentChannel:
      type: object
      properties:
        payment_channel:
          type: string
          example: INT
        min_limit:
          type: integer
          nullable: true
        max_limit:
          type: integer
          nullable: true
        support_pending_status:
          type: string
          nullable: true
    AdditionalInfoParam:
      type: object
      properties:
        param_name:
          type: string
        data_type:
          type: string
          enum:
            - NUMERIC
            - ALPHANUMERIC
        optional:
          type: boolean
    InterchangeFeeConf:
      type: object
      properties:
        mti:
          type: string
          enum:
            - PAYMENT
            - FETCH
        response_code:
          type: string
        fees:
          type: array
          items:
            type: string
        default_fee:
          type: boolean
        effctv_from:
          type: string
          description: Effective date in yyyyMMdd format.
    InterchangeFee:
      type: object
      properties:
        fee_code:
          type: string
        fee_desc:
          type: string
        fee_direction:
          type: string
          enum:
            - B2C
            - C2B
        interchange_fee_details:
          type: object
          properties:
            tran_amt_range_min:
              type: integer
            tran_amt_range_max:
              type: integer
            percent_fee:
              type: number
            flat_fee:
              type: number
            effctv_from:
              type: string
            effctv_to:
              type: string
              nullable: true
  securitySchemes:
    XClientID:
      type: apiKey
      in: header
      name: x-client-id
      description: >-
        Your unique client identifier issued by Cashfree. You can find this in
        your [Merchant
        Dashboard](https://merchant.cashfree.com/verificationsuite/developers/api-keys).
    XClientSecret:
      type: apiKey
      in: header
      name: x-client-secret
      description: >-
        Your unique client secret issued by Cashfree. Keep this confidential and
        never expose it in client-side code. You can find this in your [Merchant
        Dashboard](https://merchant.cashfree.com/verificationsuite/developers/api-keys).

````