> ## 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.

# Get Wallet Statement

> Retrieves a paginated wallet statement for a user, including both credit and debit transactions for a specific sub-wallet.
- The statement can be fetched for a specified date range. If no range is provided, the API returns transactions from the last 6 months.
- The `from` date **cannot** be earlier than 1 year from the current date.
- Pagination is handled using the `after` and `before` parameters, which define the `cf_statement_id` boundary for retrieving the next or previous set of records.
- Only **one** of `after` or `before` can be passed at a time.




## OpenAPI

````yaml /openapi/ppi/ppi.yaml post /ppi/wallet/statement
openapi: 3.0.3
info:
  title: PPI Wallet API
  description: >-
    API for managing PPI (Prepaid Payment Instrument) wallets and sub-wallets,
    including credit and debit operations.
  version: 1.0.0
  contact:
    name: PPI Service Team
    email: support@cashfree.com
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
servers:
  - url: https://api.cashfree.com
    description: Production server.
  - url: https://sandbox.cashfree.com
    description: Sandbox server.
security:
  - XClientID: []
    XClientSecret: []
tags:
  - name: Wallet Management
    description: Operations related to PPI wallet management.
  - name: User Management
    description: Operations related to user management within the PPI system.
  - name: Beneficiary Management
    description: Operations related to beneficiary management for users.
  - name: KYC Management
    description: Operations related to KYC (Know Your Customer) management.
  - name: Transfers
    description: Operations related to transfer.
paths:
  /ppi/wallet/statement:
    post:
      tags:
        - Wallet Management
      summary: Get Wallet Statement
      description: >
        Retrieves a paginated wallet statement for a user, including both credit
        and debit transactions for a specific sub-wallet.

        - The statement can be fetched for a specified date range. If no range
        is provided, the API returns transactions from the last 6 months.

        - The `from` date **cannot** be earlier than 1 year from the current
        date.

        - Pagination is handled using the `after` and `before` parameters, which
        define the `cf_statement_id` boundary for retrieving the next or
        previous set of records.

        - Only **one** of `after` or `before` can be passed at a time.
      operationId: getWalletStatement
      parameters:
        - $ref: '#/components/parameters/global_x_api_version'
      requestBody:
        description: >-
          Request parameters to fetch the user's wallet statement for a given
          period.
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GetWalletStatementRequest'
            examples:
              sampleRequest:
                summary: Sample getStatement request
                value:
                  user_id: USER827364
                  wallet_id: WALLET124
                  cf_sub_wallet_id: '5432109876543210987'
      responses:
        '200':
          description: Success response for fetching the wallet statement.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetWalletStatementResponse'
              examples:
                SUCCESS_GIFT_WALLET:
                  summary: Sample statement response
                  value:
                    wallet_id: WALLET124
                    user_id: USER827364
                    has_next: true
                    has_prev: false
                    sub_wallet:
                      cf_sub_wallet_id: '5432109876543210987'
                      name: Gift Wallet
                      type: GIFT_PPI
                      status: ACTIVE
                      balance: 1500.75
                      available_balance: 1500.75
                      funds_on_hold: 0
                    statement_period:
                      from: '2025-06-01T00:00:00Z'
                      to: '2025-12-01T00:00:00Z'
                    statements:
                      - flow_type: CREDIT
                        cf_statement_id: '8905234567890123406'
                        credit_id: CREDIT126345
                        cf_credit_id: '8901234567890123456'
                        amount: 1600
                        closing_balance: 1600
                        issued_gift_code:
                          code: GIFT-2025-XYZ123
                          value: 1600
                          expiry: '2026-06-15T10:15:45Z'
                        event_type: RECHARGE
                        remarks: Recharge for order 123
                        initiated_at: '2025-06-15T14:15:30Z'
                        processed_at: '2025-06-15T14:15:45Z'
                      - flow_type: DEBIT
                        cf_statement_id: '8904234567890123405'
                        debit_id: DEBIT420984
                        cf_debit_id: '890123456789012345'
                        amount: 600
                        closing_balance: 1000
                        applied_gift_codes:
                          - code: GIFT-2025-XYZ213
                            amount_debited: 100
                            value: 100
                            expiry: '2026-07-28T10:30:00Z'
                          - code: GIFT-2025-XYZ444
                            amount_debited: 500
                            value: 600
                            expiry: '2026-07-28T10:30:00Z'
                        event_type: DEBIT
                        remarks: Purchase of phone cover
                        initiated_at: '2025-06-14T13:10:00Z'
                        processed_at: '2025-06-14T13:10:15Z'
                      - flow_type: CREDIT
                        cf_statement_id: '8903234567890123405'
                        refund_id: REFUND420984
                        cf_refund_id: '890223456789012345'
                        amount: 200
                        closing_balance: 800
                        refunded_gift_codes:
                          - code: GIFT-2025-XYZ913
                            amount_refunded: 100
                            value: 100
                            expiry: '2026-07-28T10:30:00Z'
                          - code: GIFT-2025-XYZ544
                            amount_refunded: 500
                            value: 100
                            expiry: '2026-07-28T10:30:00Z'
                        event_type: DEBIT_REFUND
                        remarks: Refund for order 123
                        initiated_at: '2025-06-14T12:12:00Z'
                        processed_at: '2025-06-14T12:12:15Z'
                      - flow_type: DEBIT
                        cf_statement_id: '8902234567890123405'
                        amount: 100
                        closing_balance: 700
                        event_type: INACTIVE
                        remarks: Sub-Wallet marked inactive due to inactivity
                        initiated_at: '2025-06-14T11:10:00Z'
                        processed_at: '2025-06-14T11:10:15Z'
                      - flow_type: DEBIT
                        cf_statement_id: '8901234567890123405'
                        amount: 100
                        closing_balance: 600
                        event_type: EXPIRY
                        remarks: Gift-Code Expired
                        initiated_at: '2025-06-14T10:10:00Z'
                        processed_at: '2025-06-14T10:10:15Z'
                      - flow_type: DEBIT
                        cf_statement_id: '8901234567890123405'
                        closure_id: CLOSURE420984
                        cf_closure_id: '890023456789012145'
                        amount: 600
                        closing_balance: 0
                        event_type: CLOSURE
                        remarks: Sub-Wallet Closed
                        initiated_at: '2025-06-14T09:10:00Z'
                        processed_at: '2025-06-14T09:10:15Z'
                SUCCESS_CLOSED_WALLET:
                  summary: Sample statement response for Closed Wallet
                  value:
                    wallet_id: WALLET124
                    user_id: USER827364
                    has_next: true
                    has_prev: false
                    sub_wallet:
                      cf_sub_wallet_id: '5432109876543210987'
                      name: Closed Wallet
                      type: CLOSED_LOOP_PPI
                      status: ACTIVE
                      balance: 1500.75
                      available_balance: 1500.75
                      funds_on_hold: 0
                    statement_period:
                      from: '2025-06-01T00:00:00Z'
                      to: '2025-12-01T00:00:00Z'
                    statements:
                      - flow_type: CREDIT
                        cf_statement_id: '8905234567890123406'
                        credit_id: CREDIT126345
                        cf_credit_id: '8901234567890123456'
                        amount: 1600
                        closing_balance: 1600
                        event_type: RECHARGE
                        remarks: Recharge for order 123
                        initiated_at: '2025-06-15T14:15:30Z'
                        processed_at: '2025-06-15T14:15:45Z'
                      - flow_type: DEBIT
                        cf_statement_id: '8904234567890123405'
                        debit_id: DEBIT420984
                        cf_debit_id: '890123456789012345'
                        amount: 600
                        closing_balance: 1000
                        event_type: DEBIT
                        remarks: Purchase of phone cover
                        initiated_at: '2025-06-14T13:10:00Z'
                        processed_at: '2025-06-14T13:10:15Z'
                      - flow_type: CREDIT
                        cf_statement_id: '8903234567890123405'
                        refund_id: REFUND420984
                        cf_refund_id: '890223456789012345'
                        amount: 200
                        closing_balance: 800
                        event_type: DEBIT_REFUND
                        remarks: Refund for order 123
                        initiated_at: '2025-06-14T12:12:00Z'
                        processed_at: '2025-06-14T12:12:15Z'
                      - flow_type: DEBIT
                        cf_statement_id: '8902234567890123405'
                        amount: 100
                        closing_balance: 700
                        event_type: INACTIVE
                        remarks: Sub-Wallet marked inactive due to inactivity
                        initiated_at: '2025-06-14T11:10:00Z'
                        processed_at: '2025-06-14T11:10:15Z'
                      - flow_type: DEBIT
                        cf_statement_id: '8901234567890123405'
                        closure_id: CLOSURE420984
                        cf_closure_id: '890023456789012145'
                        amount: 600
                        closing_balance: 0
                        event_type: CLOSURE
                        remarks: Sub-Wallet Closed
                        initiated_at: '2025-06-14T09:10:00Z'
                        processed_at: '2025-06-14T09:10:15Z'
                SUCCESS_SMALL_PPI_WALLET:
                  summary: Sample statement response for Small PPI Wallet
                  value:
                    wallet_id: WALLET124
                    user_id: USER827364
                    has_next: true
                    has_prev: false
                    sub_wallet:
                      cf_sub_wallet_id: '5432109876543210987'
                      name: Small PPI Wallet
                      type: SMALL_PPI
                      status: ACTIVE
                      balance: 1500.75
                      available_balance: 1500.75
                      funds_on_hold: 0
                    statement_period:
                      from: '2025-06-01T00:00:00Z'
                      to: '2025-12-01T00:00:00Z'
                    statements:
                      - flow_type: CREDIT
                        cf_statement_id: '8905234567890123406'
                        credit_id: CREDIT126345
                        cf_credit_id: '8901234567890123456'
                        amount: 1600
                        closing_balance: 1600
                        event_type: RECHARGE
                        remarks: Recharge for order 123
                        initiated_at: '2025-06-15T14:15:30Z'
                        processed_at: '2025-06-15T14:15:45Z'
                      - flow_type: DEBIT
                        cf_statement_id: '8904234567890123405'
                        debit_id: DEBIT420984
                        cf_debit_id: '890123456789012345'
                        amount: 600
                        closing_balance: 1000
                        event_type: DEBIT
                        remarks: Purchase of phone cover
                        initiated_at: '2025-06-14T13:10:00Z'
                        processed_at: '2025-06-14T13:10:15Z'
                      - flow_type: CREDIT
                        cf_statement_id: '8903234567890123405'
                        refund_id: REFUND420984
                        cf_refund_id: '890223456789012345'
                        amount: 200
                        closing_balance: 800
                        event_type: DEBIT_REFUND
                        remarks: Refund for order 123
                        initiated_at: '2025-06-14T12:12:00Z'
                        processed_at: '2025-06-14T12:12:15Z'
                      - flow_type: DEBIT
                        cf_statement_id: '8902234567890123405'
                        amount: 100
                        closing_balance: 700
                        event_type: INACTIVE
                        remarks: Sub-Wallet marked inactive due to inactivity
                        initiated_at: '2025-06-14T11:10:00Z'
                        processed_at: '2025-06-14T11:10:15Z'
                      - flow_type: DEBIT
                        cf_statement_id: '8901234567890123405'
                        closure_id: CLOSURE420984
                        cf_closure_id: '890023456789012145'
                        amount: 600
                        closing_balance: 0
                        event_type: CLOSURE
                        remarks: Sub-Wallet Closed
                        initiated_at: '2025-06-14T09:10:00Z'
                        processed_at: '2025-06-14T09:10:15Z'
        '400':
          description: Bad request - Invalid input parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StructuredErrorResponse'
              examples:
                wallet_id_missing:
                  summary: Wallet ID missing
                  value:
                    code: wallet_id_missing
                    type: validation_error
                    message: wallet_id parameter is missing
                user_id_missing:
                  summary: User ID missing
                  value:
                    code: user_id_missing
                    type: validation_error
                    message: user_id parameter is missing
                cf_sub_wallet_id_missing:
                  summary: Sub-wallet ID missing
                  value:
                    code: cf_sub_wallet_id_missing
                    type: validation_error
                    message: cf_sub_wallet_id parameter is missing
                cf_sub_wallet_id_invalid:
                  summary: Sub-wallet ID value is Invalid
                  value:
                    code: cf_sub_wallet_id_value_invalid
                    type: validation_error
                    message: cf_sub_wallet_id invalid value
                user_id_invalid:
                  summary: User ID value is Invalid
                  value:
                    code: user_id_value_invalid
                    type: validation_error
                    message: user_id invalid value
                wallet_id_invalid:
                  summary: Wallet ID value is Invalid
                  value:
                    code: wallet_id_value_invalid
                    type: validation_error
                    message: wallet_id invalid value
                userWalletMismatch:
                  summary: User-Wallet mismatch
                  value:
                    message: wallet does not belong to provided user
                    code: wallet_id_value_invalid
                    type: validation_error
                userSubWalletMismatch:
                  summary: User-SubWallet mismatch
                  value:
                    message: sub-wallet does not belong to provided user
                    code: sub_wallet_id_value_invalid
                    type: validation_error
                from_to_value_invalid:
                  summary: from greater than to
                  value:
                    message: from must be before to
                    code: date_range_value_invalid
                    type: validation_error
                missingClientId:
                  summary: Missing client ID
                  value:
                    message: x-client-id is missing in the request
                    code: x-client-id_missing
                    type: validation_error
                missingClientSecret:
                  summary: Missing client secret
                  value:
                    message: x-client-secret is missing in the request
                    code: x-client-secret_missing
                    type: validation_error
        '401':
          $ref: '#/components/responses/Response401'
        '403':
          $ref: '#/components/responses/Response403'
        '404':
          $ref: '#/components/responses/Response404'
        '429':
          $ref: '#/components/responses/Response429'
        '500':
          $ref: '#/components/responses/Response500'
      security:
        - XClientID: []
          XClientSecret: []
components:
  parameters:
    global_x_api_version:
      description: API version to be used. Format is in YYYY-MM-DD.
      name: x-api-version
      in: header
      required: true
      schema:
        type: string
        default: '2025-11-01'
        example: '2025-11-01'
      example: '2025-11-01'
  schemas:
    GetWalletStatementRequest:
      type: object
      required:
        - user_id
        - wallet_id
        - cf_sub_wallet_id
      properties:
        user_id:
          type: string
          maxLength: 50
          pattern: ^[a-zA-Z0-9_.-]+$
          description: >-
            Unique identifier for the user, as provided by you during PPI user
            creation.
        wallet_id:
          type: string
          maxLength: 50
          pattern: ^[a-zA-Z0-9_.-]+$
          description: >-
            Unique identifier for the wallet, as provided by you during wallet
            creation.
          example: WALLET124
        cf_sub_wallet_id:
          type: string
          maxLength: 50
          pattern: ^[0-9]+$
          description: >-
            Unique identifier for the sub-wallet provided in response while
            creating the wallet.
          example: '5432109876543210987'
        from:
          type: string
          format: date-time
          description: >-
            Start date for the wallet statement in UTC. If not provided, the API
            defaults to 6 months before the current date-time. It cannot be
            earlier than 1 year from the current date
          example: '2025-01-01T00:00:00Z'
        to:
          type: string
          format: date-time
          description: >-
            End date for the wallet statement in UTC. If not provided, the API
            defaults to the current date-time. Cannot be greater than the
            current date-time.
          example: '2025-02-01T00:00:00Z'
        limit:
          type: integer
          maximum: 50
          description: Maximum number of records to return. Default value is 10.
          example: 10
        after:
          type: string
          description: >-
            The cf_statement_id after which statement should be fetched. When
            `after` is provided, the `before` parameter must not be used.
          example: '5432109876543210987'
        before:
          type: string
          description: >-
            The cf_statement_id before which statement should be fetched. When
            `before` is provided, the `after` parameter must not be used.
          example: '5432109876543210987'
    GetWalletStatementResponse:
      type: object
      properties:
        wallet_id:
          type: string
          description: >-
            Unique identifier for the wallet, as provided by you during wallet
            creation.
          example: WALLET124
        user_id:
          type: string
          description: >-
            Unique identifier for the user, as provided by you during user
            creation.
          example: USER827364
        has_next:
          type: boolean
          description: >-
            Indicates whether there are additional transactions *after* the
            current set within the requested statement period.
          example: true
        has_prev:
          type: boolean
          description: >-
            Indicates whether there are additional transactions *before* the
            current set within the requested statement period..
          example: true
        sub_wallet:
          $ref: '#/components/schemas/SubWallet'
        statement_period:
          $ref: '#/components/schemas/StatementPeriod'
        statements:
          type: array
          items:
            $ref: '#/components/schemas/StatementItem'
    StructuredErrorResponse:
      type: object
      properties:
        type:
          type: string
          description: A broad category of the error.
          example: internal_error
        code:
          type: string
          description: A machine-readable error code specific to the issue.
          example: internal_server_error
        message:
          type: string
          description: >-
            A message providing more details about the error, dynamic based on
            the specific issue.
          example: Internal server error
    SubWallet:
      type: object
      properties:
        cf_sub_wallet_id:
          type: string
          description: >-
            Unique identifier for the sub-wallet provided in response while
            creating the wallet.
          example: '5432109876543210987'
        name:
          type: string
          description: Name for the sub-wallet.
          example: Gift Wallet
        type:
          type: string
          description: Type of the sub-wallet.
          example: GIFT_PPI
        status:
          type: string
          description: Status of the sub-wallet.
          example: ACTIVE
        balance:
          type: number
          format: double
          description: Current balance of the sub-wallet.
          example: 1500.75
        available_balance:
          type: number
          format: double
          description: Available balance in the sub-wallet.
          example: 1500.75
        funds_on_hold:
          type: number
          format: double
          description: Funds on hold in the sub-wallet.
          example: 0
    StatementPeriod:
      type: object
      properties:
        from:
          type: string
          format: date-time
          description: >-
            Start date for the wallet statement in UTC. If not provided, the API
            defaults to 6 months before the current date-time.
          example: '2025-06-01T00:00:00Z'
        to:
          type: string
          format: date-time
          description: >-
            End date for the wallet statement in UTC. If not provided, the API
            defaults to the current date-time.
          example: '2025-12-01T00:00:00Z'
    StatementItem:
      type: object
      properties:
        flow_type:
          type: string
          enum:
            - CREDIT
            - DEBIT
          description: |
            Indicates the direction of the transaction. 
            - **CREDIT**: Money added to the sub-wallet . 
            - **DEBIT**: Money deducted from the sub-wallet .
          example: CREDIT
        cf_statement_id:
          type: string
          description: Unique identifier for the statement.
          example: '8901234567890123406'
        credit_id:
          type: string
          description: >-
            Unique identifier for the credit, as provided by you during wallet
            credit.
          example: CREDIT126345
        cf_credit_id:
          type: string
          description: >-
            Unique identifier for the credit, provided in response while
            crediting the wallet.
          example: '8901234567890123456'
        issued_gift_code:
          $ref: '#/components/schemas/IssuedGiftCode'
        debit_id:
          type: string
          description: >-
            Unique identifier for the debit , as provided by you during wallet
            debit.
          example: DEBIT420984
        cf_debit_id:
          type: string
          description: >-
            Unique identifier for the debit, provided in response while debiting
            the wallet.
          example: '8901234567890123456'
        closure_id:
          type: string
          description: >-
            Unique identifier for the closure , as provided by you during wallet
            closure.
          example: CLOSURE420984
        cf_closure_id:
          type: string
          description: >-
            Unique identifier for the closure, provided in the response while
            closing the wallet.
          example: '8901234567890123456'
        refund_id:
          type: string
          description: >-
            Unique identifier for the refund , as provided by you during wallet
            refund.
          example: REFUND420984
        cf_refund_id:
          type: string
          description: >-
            Unique identifier for the refund, provided in the response during
            wallet refund.
          example: '8901234567890123456'
        transfer_id:
          type: string
          description: >-
            Unique identifier for the transfer , as provided by you during
            wallet transfer.
          example: TRANSFER420984
        cf_transfer_id:
          type: string
          description: >-
            Unique identifier for the transfer, provided in the response while
            transferring from the wallet.
          example: '8901234567890123456'
        applied_gift_codes:
          type: array
          items:
            $ref: '#/components/schemas/AppliedGiftCode'
        refunded_gift_codes:
          type: array
          items:
            $ref: '#/components/schemas/RefundedGiftCode'
        amount:
          type: number
          format: double
          description: Amount involved in the transaction.
          example: 100.5
        closing_balance:
          type: number
          format: double
          description: Closing balance after the transaction.
          example: 1400.5
        event_type:
          type: string
          description: |
            Describes the category of the transaction event.
             - **RECHARGE**: Funds added to the sub-wallet by the user or system.
             - **DEBIT**: Funds deducted from the sub-wallet by the user.
             - **CLOSURE**: Funds deducted from the sub-wallet during sub-wallet closure.
             - **DEBIT_REFUND**: Funds refunded back to the sub-wallet.
             - **TRANSFER**: Funds deducted from a FULL_KYC sub-wallet for transfer purposes.
             - **EXPIRY**: Funds deducted from a GIFT_PPI sub-wallet on gift-code expiry.
             - **INACTIVE**: Funds deducted from  sub-wallet inactivity.
          enum:
            - RECHARGE
            - DEBIT
            - CLOSURE
            - DEBIT_REFUND
            - TRANSFER
            - EXPIRY
            - INACTIVE
          example: RECHARGE
        remarks:
          type: string
          description: Additional information about the transaction.
          example: Refund for order 123
        initiated_at:
          type: string
          format: date-time
          description: Timestamp in UTC when the transaction was initiated.
          example: '2025-01-15T10:15:30Z'
        processed_at:
          type: string
          format: date-time
          description: Timestamp in UTC when the transaction was processed.
          example: '2025-01-15T10:20:45Z'
    IssuedGiftCode:
      type: object
      properties:
        code:
          type: string
          description: >-
            Unique identifier for the gift code as provided in response  during
            sub-wallet credit.
          example: GIFT-2025-XYZ123
        value:
          type: number
          format: double
          description: Value of the gift code.
          example: 100.5
        expiry:
          type: string
          format: date-time
          description: Expiry date of the gift code.
          example: '2026-12-31T23:59:59Z'
    AppliedGiftCode:
      type: object
      properties:
        code:
          type: string
          description: Unique identifier for the gift code.
          example: GIFT-2025-XYZ133
        amount_debited:
          type: number
          format: double
          description: Amount debited from the gift code.
          example: 100
        value:
          type: number
          format: double
          description: Total Value of the gift code.
          example: 100
        expiry:
          type: string
          format: date-time
          description: Expiry date of the gift code.
          example: '2026-07-28T10:30:00Z'
    RefundedGiftCode:
      type: object
      properties:
        code:
          type: string
          description: Unique identifier for the gift code.
          example: GIFT-2025-XYZ133
        amount_refunded:
          type: number
          format: double
          description: Amount refunded to the gift code.
          example: 100
        value:
          type: number
          format: double
          description: Total value of the gift code.
          example: 100
        expiry:
          type: string
          format: date-time
          description: Expiry date of the gift code.
          example: '2026-07-28T10:30:00Z'
  responses:
    Response401:
      description: Unauthorised - Invalid or missing authentication.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/StructuredErrorResponse'
          examples:
            invalidCredentials:
              summary: Invalid client credentials
              value:
                code: authentication_failed
                type: authentication_error
                message: Invalid client ID and client secret combination
    Response403:
      description: Forbidden - Access denied.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/StructuredErrorResponse'
          examples:
            ipNotWhitelisted:
              summary: IP not whitelisted
              value:
                code: ip_not_whitelisted
                type: authentication_error
                message: Authentication error (IP not whitelisted)
    Response404:
      description: Not found - User, wallet or sub-wallet not found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/StructuredErrorResponse'
          examples:
            userNotFound:
              summary: User not found
              value:
                code: user_id_not_found
                type: validation_error
                message: user_id with given id not found
            walletNotFound:
              summary: Wallet not found
              value:
                code: wallet_id_not_found
                type: validation_error
                message: wallet_id with given id not found
            subWalletNotFound:
              summary: Sub-wallet not found
              value:
                code: cf_sub_wallet_id_not_found
                type: validation_error
                message: cf_sub_wallet_id with given id not found
    Response429:
      description: Too Many Requests - Rate limit exceeded.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/StructuredErrorResponse'
          examples:
            internalError:
              summary: Internal server error
              value:
                code: too_many_requests_per_operation
                type: rate_limit_error
                message: Rate limit exceeded. Please try again after some time
    Response500:
      description: Internal server error.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/StructuredErrorResponse'
          examples:
            internalError:
              summary: Internal server error
              value:
                code: internal_server_error
                type: internal_error
                message: An internal error occurred while processing the request
  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/merchants/landing?env=prod).
    XClientSecret:
      type: apiKey
      in: header
      name: x-client-secret
      description: >-
        The secret key associated with your client ID. Use this to authenticate
        your API requests. You can find this in your [Merchant
        Dashboard](https://merchant.cashfree.com/merchants/landing?env=prod).

````