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

# List refunds

> Cursor-paginated refund history, filterable by status.



## OpenAPI

````yaml /openapi.json get /v1/refunds
openapi: 3.0.0
info:
  title: Spendin Merchant API
  description: Cross-border remittance and financial services API
  version: '1.0'
  contact: {}
servers:
  - url: https://api.spendin.app
    description: Production
security:
  - api-key: []
tags: []
paths:
  /v1/refunds:
    get:
      tags:
        - refunds
      summary: List refunds
      description: Cursor-paginated refund history, filterable by status.
      operationId: RefundsController_listRefunds
      parameters:
        - name: cursor
          required: false
          in: query
          schema:
            type: string
        - name: limit
          required: false
          in: query
          description: Page size (1–100, default 20)
          schema:
            type: number
        - name: status
          required: false
          in: query
          schema:
            type: string
            enum:
              - PENDING
              - PROCESSING
              - SUCCESSFUL
              - FAILED
      responses:
        '200':
          description: Paginated refund history
          content:
            application/json:
              schema:
                type: object
                required:
                  - data
                  - meta
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/RefundResponseDto'
                  meta:
                    $ref: '#/components/schemas/PaginationMetaDto'
      security:
        - api-key: []
components:
  schemas:
    RefundResponseDto:
      type: object
      properties:
        id:
          type: string
        payout_id:
          type: string
          description: The failed payout this refund returns
        inflow_id:
          type: object
          nullable: true
          description: The inflow whose money is being sent back
        status:
          type: string
          enum:
            - PENDING
            - PROCESSING
            - SUCCESSFUL
            - FAILED
        received_amount:
          type: number
          example: 42.32
          description: What the merchant originally sent us
        received_currency:
          type: string
          example: USDT
        network_fee_amount:
          type: number
          example: 1
          description: Cost of sending the refund back out
        network_fee_currency:
          type: string
          example: USDT
        refund_amount:
          type: number
          example: 41.32
          description: received_amount minus network_fee_amount
        refund_currency:
          type: string
          example: USDT
        destination_type:
          type: string
          enum:
            - BANK_ACCOUNT
            - CRYPTO_ADDRESS
        destination_provider_name:
          type: string
          example: USDT (TRC-20)
        destination_masked:
          type: string
          example: TXyz...abcd
          description: Masked account number or address
        destination_network:
          type: string
          enum:
            - TRON
            - BSC
          nullable: true
        processor_reference:
          type: object
          nullable: true
        failure_reason:
          type: object
          nullable: true
        attempt_number:
          type: number
          example: 1
        dispatched_at:
          type: object
          nullable: true
        settled_at:
          type: object
          nullable: true
        created_at:
          type: string
      required:
        - id
        - payout_id
        - inflow_id
        - status
        - received_amount
        - received_currency
        - network_fee_amount
        - network_fee_currency
        - refund_amount
        - refund_currency
        - destination_type
        - destination_provider_name
        - destination_masked
        - destination_network
        - processor_reference
        - failure_reason
        - attempt_number
        - dispatched_at
        - settled_at
        - created_at
    PaginationMetaDto:
      type: object
      properties:
        next_cursor:
          type: object
          example: eyJpZCI6IjEyMyJ9
          nullable: true
        has_more:
          type: boolean
          example: true
        limit:
          type: number
          example: 20
      required:
        - next_cursor
        - has_more
        - limit
  securitySchemes:
    api-key:
      type: apiKey
      in: header
      name: X-API-Key

````