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

# List refunds

> Returns a paginated list of MED 2.0 Refunds (devoluções) owned by the requesting tenant's organization, newest first by default. Filtering is always scoped to the tenant organization resolved from the authenticated context. requesting_participant / contested_participant are optional accessory filters, not tenant boundaries. status, refund_reason, and sort_order are case-insensitive.



## OpenAPI

````yaml /es/openapi/v3-current/pix-lerian-dict.yaml get /dict/refunds
openapi: 3.1.0
info:
  contact:
    name: Lerian Studio
    url: https://lerian.studio
  description: >-
    Public API for Pix keys, claims, fraud markers, infraction reports, and MED
    funds recovery. This release provides a mock-provider integration for
    testing; live BACEN connectivity is not included.
  license:
    name: Lerian Studio General License
  title: Pix Lerian — DICT
  version: 1.0.0
servers:
  - url: https://api.example.com/dict-hub/v1
    description: >-
      Replace the example host with the URL provided during environment
      onboarding.
security:
  - BearerAuth: []
tags:
  - description: Manage ownership and portability claims for Pix keys.
    name: Claims
  - description: Register, retrieve, list, update, and remove Pix keys.
    name: Entries
  - description: Create, query, list, and cancel DICT fraud markers.
    name: Fraud Markers
  - description: Manage participant-scoped MED 2.0 funds recoveries.
    name: Funds Recoveries
  - description: Manage MED 2.0 infraction reports for the authenticated organization.
    name: Infraction Reports
  - description: Look up Pix keys and check whether keys exist in the DICT directory.
    name: Keys
  - description: Create, query, cancel, and settle MED 2.0 refunds.
    name: Refunds
paths:
  /dict/refunds:
    get:
      tags:
        - Refunds
      summary: List refunds
      description: >-
        Returns a paginated list of MED 2.0 Refunds (devoluções) owned by the
        requesting tenant's organization, newest first by default. Filtering is
        always scoped to the tenant organization resolved from the authenticated
        context. requesting_participant / contested_participant are optional
        accessory filters, not tenant boundaries. status, refund_reason, and
        sort_order are case-insensitive.
      operationId: listRefunds
      parameters:
        - description: Filter by lifecycle status (case-insensitive)
          explode: false
          in: query
          name: status
          schema:
            description: Filter by lifecycle status (case-insensitive)
            examples:
              - OPEN
            type: string
        - description: Filter by refund reason (case-insensitive)
          explode: false
          in: query
          name: refund_reason
          schema:
            description: Filter by refund reason (case-insensitive)
            examples:
              - FRAUD
            type: string
        - description: Filter by the contested transaction end-to-end ID (32 chars)
          explode: false
          in: query
          name: transaction_id
          schema:
            description: Filter by the contested transaction end-to-end ID (32 chars)
            examples:
              - E12345678202601011200abcdef01234
            type: string
        - description: Filter by the linked infraction report UUID
          explode: false
          in: query
          name: infraction_report_id
          schema:
            description: Filter by the linked infraction report UUID
            examples:
              - c3d4e5f6-a7b8-4901-abcd-34567890abcd
            type: string
        - description: >-
            Filter by the requesting participant ISPB (8 characters, uppercase
            alphanumeric)
          explode: false
          in: query
          name: requesting_participant
          schema:
            description: >-
              Filter by the requesting participant ISPB (8 characters, uppercase
              alphanumeric)
            examples:
              - '12345678'
            maxLength: 8
            minLength: 8
            pattern: ^[A-Z0-9]{8}$
            type: string
        - description: >-
            Filter by the contested participant ISPB (8 characters, uppercase
            alphanumeric)
          explode: false
          in: query
          name: contested_participant
          schema:
            description: >-
              Filter by the contested participant ISPB (8 characters, uppercase
              alphanumeric)
            examples:
              - '87654321'
            maxLength: 8
            minLength: 8
            pattern: ^[A-Z0-9]{8}$
            type: string
        - description: 'Page number (default: 1, minimum: 1)'
          explode: false
          in: query
          name: page
          schema:
            description: 'Page number (default: 1, minimum: 1)'
            examples:
              - '1'
            type: string
        - description: 'Maximum number of items per page (default: 10, max: 100)'
          explode: false
          in: query
          name: limit
          schema:
            description: 'Maximum number of items per page (default: 10, max: 100)'
            examples:
              - '10'
            type: string
        - description: 'Sort direction by last_modified (default: desc, case-insensitive)'
          explode: false
          in: query
          name: sort_order
          schema:
            description: 'Sort direction by last_modified (default: desc, case-insensitive)'
            examples:
              - desc
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListRefundsView'
          description: OK
        '400':
          content:
            application/problem+json:
              example:
                type: https://errors.lerian.studio/v1/PIX-0001
                title: Bad Request
                status: 400
                detail: Your request is missing one or more required header params.
                code: PIX-0001
              schema:
                $ref: '#/components/schemas/Detail'
          description: >-
            Bad Request (PIX-0001, PIX-0002, PIX-0003, PIX-0017, PIX-0015,
            PIX-0020).
        '404':
          content:
            application/problem+json:
              example:
                type: https://errors.lerian.studio/v1/PIX-0011
                title: Not Found
                status: 404
                detail: >-
                  No entity was found for the given ID. Please make sure to use
                  the correct ID.
                code: PIX-0011
              schema:
                $ref: '#/components/schemas/Detail'
          description: Not Found (PIX-0011).
        '500':
          content:
            application/problem+json:
              example:
                type: https://errors.lerian.studio/v1/PIX-0000
                title: Internal Server Error
                status: 500
                detail: internal error
                code: PIX-0000
              schema:
                $ref: '#/components/schemas/Detail'
          description: Internal Server Error (PIX-0000).
        '502':
          content:
            application/problem+json:
              example:
                type: https://errors.lerian.studio/v1/PIX-0141
                title: Bad Gateway
                status: 502
                detail: internal error
                code: PIX-0141
              schema:
                $ref: '#/components/schemas/Detail'
          description: Bad Gateway (PIX-0141).
        default:
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Detail'
          description: Error
components:
  schemas:
    ListRefundsView:
      additionalProperties: false
      properties:
        hasMore:
          examples:
            - false
          type: boolean
        items:
          items:
            $ref: '#/components/schemas/RefundView'
          type:
            - array
            - 'null'
        limit:
          examples:
            - 10
          format: int64
          type: integer
        page:
          examples:
            - 1
          format: int64
          type: integer
        total:
          examples:
            - 1
          format: int64
          type: integer
      required:
        - items
        - total
        - page
        - limit
        - hasMore
      type: object
    Detail:
      additionalProperties: false
      properties:
        code:
          description: >-
            Stable, machine-readable domain error code scoped to the emitting
            service (format: <SERVICE>-NNNN).
          examples:
            - ERR-0001
          type: string
        detail:
          description: >-
            A human-readable explanation specific to this occurrence of the
            problem.
          examples:
            - Property foo is required but is missing.
          type: string
        errors:
          description: Optional list of individual error details
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type:
            - array
            - 'null'
        instance:
          description: >-
            A URI reference that identifies the specific occurrence of the
            problem.
          examples:
            - https://example.com/error-log/abc123
          format: uri
          type: string
        status:
          description: HTTP status code
          examples:
            - 400
          format: int64
          type: integer
        title:
          description: >-
            A short, human-readable summary of the problem type. This value
            should not change between occurrences of the error.
          examples:
            - Bad Request
          type: string
        type:
          default: about:blank
          description: A URI reference to human-readable documentation for the error.
          examples:
            - https://example.com/errors/example
          format: uri
          type: string
        upstream:
          $ref: '#/components/schemas/Upstream'
          description: >-
            RFC 9457 extension member: the error a proxied third-party provider
            reported. Absent unless the emitting service explicitly surfaced
            one.
      type: object
    RefundView:
      additionalProperties: false
      properties:
        alreadySettledAmount:
          type: string
        analysisDetails:
          type: string
        analysisResult:
          enum:
            - TOTALLY_ACCEPTED
            - PARTIALLY_ACCEPTED
            - REJECTED
          type: string
        bacenRefundId:
          examples:
            - 3d48532f-1a2b-4422-81c3-b7dc852e262b
          type: string
        contestedParticipant:
          examples:
            - '87654321'
          type: string
        correlationId:
          examples:
            - 9f3a8b7e2c1d4e5a8b6f1a2b3c4d5e6f
          type: string
        creationTime:
          examples:
            - '2026-01-01T12:00:00Z'
          format: date-time
          type: string
        effectiveRefundedAmount:
          type: string
        fundsRecoveryId:
          type: string
        id:
          examples:
            - 018f8c1d-1234-7abc-9def-000000000001
          type: string
        infractionReportId:
          type: string
        lastModified:
          examples:
            - '2026-01-01T12:30:00Z'
          format: date-time
          type: string
        monitorAccount:
          examples:
            - false
          type: boolean
        refundAccount:
          $ref: '#/components/schemas/RefundAccountView'
        refundAmount:
          examples:
            - '1000.00'
          type: string
        refundDetails:
          examples:
            - refund due to operational failure
          type: string
        refundReason:
          enum:
            - FRAUD
            - OPERATIONAL_FLAW
            - PIX_AUTOMATICO
            - REFUND_CANCELLED
          examples:
            - OPERATIONAL_FLAW
          type: string
        refundRejectionReason:
          enum:
            - NO_BALANCE
            - ACCOUNT_CLOSURE
            - INVALID_REQUEST
            - OTHER
            - PARTICIPANT_EXCLUSION
          type: string
        refundTransactionId:
          type: string
        requestingParticipant:
          examples:
            - '12345678'
          type: string
        settleReason:
          type: string
        settleType:
          enum:
            - REFUND
            - MANUAL
          type: string
        status:
          enum:
            - OPEN
            - CLOSED
            - CANCELLED
          examples:
            - OPEN
          type: string
        surplusAmount:
          type: string
        transactionId:
          examples:
            - E12345678202601011200abcdef01234
          type: string
      required:
        - id
        - transactionId
        - refundReason
        - refundAmount
        - status
        - requestingParticipant
        - contestedParticipant
        - monitorAccount
        - creationTime
        - lastModified
      type: object
    ErrorDetail:
      additionalProperties: false
      properties:
        location:
          description: >-
            Where the error occurred, e.g. 'body.items[3].tags' or
            'path.thing-id'
          type: string
        message:
          description: Error message text
          type: string
        value:
          description: The value at the given location
      type: object
    Upstream:
      additionalProperties: false
      properties:
        code:
          description: The upstream provider's own error code, verbatim.
          examples:
            - E4001
          type: string
        message:
          description: >-
            The upstream provider's own error message, verbatim (bounded, never
            its raw response body).
          examples:
            - account not found at provider
          type: string
      type: object
    RefundAccountView:
      additionalProperties: false
      properties:
        accountNumber:
          examples:
            - '123456'
          type: string
        accountType:
          examples:
            - CACC
          type: string
        branch:
          examples:
            - '0001'
          type: string
        participant:
          examples:
            - '99999011'
          type: string
        taxIdNumber:
          examples:
            - '12345678909'
          type: string
      required:
        - taxIdNumber
        - participant
        - branch
        - accountNumber
        - accountType
      type: object
  securitySchemes:
    BearerAuth:
      bearerFormat: JWT
      description: JWT bearer token issued by the identity provider.
      scheme: bearer
      type: http

````