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

# List vendor refunds

> Fetches a list of vendor refunds for a business. Vendor refunds can be filtered by external ID, status, completion date range, and amount range. Results will be paginated, see [Pagination](/api-details/pagination) for details.



## OpenAPI

````yaml get /v1/businesses/{businessId}/bills/refunds
openapi: 3.0.1
info:
  title: API
  version: latest
servers: []
security:
  - BearerAuth: []
tags: []
externalDocs:
  url: /
paths:
  /v1/businesses/{businessId}/bills/refunds:
    get:
      tags:
        - Vendor Refunds
      summary: List vendor refunds
      description: >-
        Fetches a list of vendor refunds for a business. Vendor refunds can be
        filtered by external ID, status, completion date range, and amount
        range. Results will be paginated, see
        [Pagination](/api-details/pagination) for details.
      operationId: business.bills.refunds.get
      parameters:
        - name: businessId
          in: path
          description: The UUID of the business to fetch vendor refunds for.
          required: true
          schema:
            type: string
            format: uuid
        - name: external_id
          in: query
          description: >-
            Filter vendor refunds by external ID (unique idempotency key). This
            will always yield zero or one result.
          schema:
            type: string
        - name: status
          in: query
          description: Filter vendor refunds by status.
          schema:
            type: string
            enum:
              - SENT
              - PARTIALLY_PAID
              - PAID
        - name: completed_at_start
          in: query
          description: >-
            Filter vendor refunds by completion date. Vendor refunds completed
            on or after this date will be included. ISO 8601 date format.
          schema:
            type: string
            format: date-time
        - name: completed_at_end
          in: query
          description: >-
            Filter vendor refunds by completion date. Vendor refunds completed
            on or before this date will be included. ISO 8601 date format.
          schema:
            type: string
            format: date-time
        - name: min_amount
          in: query
          description: >-
            Filter vendor refunds by minimum amount. Only vendor refunds with
            amounts greater than or equal to this value will be included. Must
            be a positive integer.
          schema:
            type: integer
            format: int64
            minimum: 0
        - name: max_amount
          in: query
          description: >-
            Filter vendor refunds by maximum amount. Only vendor refunds with
            amounts less than or equal to this value will be included. Must be a
            positive integer.
          schema:
            type: integer
            format: int64
            minimum: 0
        - name: reference_numbers
          in: query
          description: >-
            Comma-separated list of reference numbers to filter vendor refunds
            by. Only vendor refunds with reference numbers matching any value in
            this list will be returned.
          required: false
          schema:
            type: string
        - name: Content-Type
          in: header
          description: Content-Type must be set to application/json
          schema:
            type: string
      responses:
        '200':
          description: List of vendor refunds
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ApiVendorRefund'
        '404':
          description: >-
            Business id is not found. This indicates the business id is invalid
            or the business has been archived.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
components:
  schemas:
    ApiVendorRefund:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Unique identifier for the vendor refund.
        external_id:
          type: string
          nullable: true
          description: >-
            Unique ID of the vendor refund in your system for linking purposes.
            **Idempotency key**.
          example: vendor-refund-123
        refunded_amount:
          type: integer
          format: int64
          description: Amount refunded to the business in cents.
        status:
          type: string
          description: Status of the vendor refund.
          example: PAID
        completed_at:
          type: string
          format: date-time
          description: Time when the vendor refund was completed.
        allocations:
          type: array
          items:
            $ref: '#/components/schemas/ApiVendorRefundAllocation'
          description: Allocations associated with this vendor refund.
        payments:
          type: array
          items:
            $ref: '#/components/schemas/ApiVendorRefundPayment'
          description: Payments associated with this vendor refund.
        transaction_tags:
          type: array
          items:
            $ref: '#/components/schemas/ApiTag'
        memo:
          type: string
          nullable: true
          description: >-
            Memo for any text you would like to associate with the vendor refund
            (for example, to display to end users).
        metadata:
          $ref: '#/components/schemas/PlatformDefinedJson'
          nullable: true
          description: Arbitrary custom metadata in JSON format with a size limit of 1KB
        reference_number:
          type: string
          nullable: true
          description: >-
            Any (typically user-visible) identifier you would like to associate
            with the vendor refund. Can be used to filter when listing vendor
            refunds.
      description: >-
        A vendor refund represents a transaction where a vendor returns value to
        a business. A specific bill can be refunded or a general refund can be
        applied to a vendor.
    ApiError:
      type: object
      properties: {}
      example: ''
      description: ''
    ApiVendorRefundAllocation:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Unique identifier for the vendor refund allocation.
        bill_id:
          type: string
          format: uuid
          nullable: true
          description: ID of the bill this allocation is associated with.
        amount:
          type: integer
          format: int64
          description: Amount of the allocation in cents.
        line_items:
          type: array
          items:
            $ref: '#/components/schemas/ApiVendorRefundAllocationLineItem'
          description: Line items that make up this allocation.
        bill_external_id:
          type: string
          nullable: true
          description: External ID of the bill this allocation is associated with.
        bill_line_item_id:
          type: string
          format: uuid
          nullable: true
          description: >-
            ID of the bill line item this allocation is associated with. If
            specified, must not refer to a different bill than `bill_id` or
            `bill_external_id`.
        bill_line_item_external_id:
          type: string
          nullable: true
          description: >-
            The external ID of the bill line item to refund. If specified
            alongside `bill_line_item_id`, they must refer to the same bill line
            item.
        bill_payment_id:
          type: string
          format: uuid
          nullable: true
          description: ID of the bill payment this allocation is associated with.
        bill_payment_external_id:
          type: string
          nullable: true
          description: External ID of the bill payment this allocation is associated with.
        vendor:
          $ref: '#/components/schemas/ApiVendorData'
        transaction_tags:
          type: array
          items:
            $ref: '#/components/schemas/ApiTag'
        memo:
          type: string
          nullable: true
          description: >-
            Memo for any text you would like to associate with the vendor refund
            allocation (for example, to display to end users).
        metadata:
          $ref: '#/components/schemas/PlatformDefinedJson'
          nullable: true
          description: Arbitrary custom metadata in JSON format with a size limit of 1KB
        reference_number:
          type: string
          nullable: true
          description: >-
            Any (typically user-visible) identifier you would like to associate
            with the vendor refund allocation.
    ApiVendorRefundPayment:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Unique identifier for the payment.
        external_id:
          type: string
          nullable: true
          description: >-
            Unique ID of the payment in your system for linking purposes.
            **Idempotency key**.
          example: payment-456
        refunded_amount:
          type: integer
          format: int64
          description: Amount refunded to the business in cents.
        refund_processing_fee:
          type: integer
          format: int64
          nullable: true
          description: Fee charged for the refund processing in cents.
        completed_at:
          type: string
          format: date-time
          description: Time when the payment was completed.
        method:
          type: string
          description: Method of the payment.
          example: ACH
        processor:
          type: string
          nullable: true
          description: Processor used for the payment.
          example: STRIPE
        payment_clearing_account:
          $ref: '#/components/schemas/SingleApiChartAccount'
          description: >-
            The the ledger account to use for the payment (overrides the default
            determined by the payment method), if specified.
        transaction_tags:
          type: array
          items:
            $ref: '#/components/schemas/ApiTag'
        memo:
          type: string
          nullable: true
          description: >-
            Memo for any text you would like to associate with the vendor refund
            payment (for example, to display to end users).
        metadata:
          $ref: '#/components/schemas/PlatformDefinedJson'
          nullable: true
          description: Arbitrary custom metadata in JSON format with a size limit of 1KB
        reference_number:
          type: string
          nullable: true
          description: >-
            Any (typically user-visible) identifier you would like to associate
            with the vendor refund payment. Can be used to filter when listing
            vendor refund payments.
      description: >-
        A payment represents a transaction that moves value from a vendor to a
        business. A specific bill can be refunded or a general refund can be
        applied to a vendor.
    ApiTag:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: ID for the tag
        key:
          type: string
          description: Key for the tag
          example: ExampleTagKey
        dimension_display_name:
          type: string
          nullable: true
          description: Display name for the tag dimension
        value:
          type: string
          description: Value for the tag
          example: ExampleTagValue
        value_display_name:
          type: string
          nullable: true
          description: Display name for the tag value definition
        dimension_id:
          type: string
          format: uuid
          description: ID of the tag dimension this tag belongs to
        definition_id:
          type: string
          format: uuid
          description: ID of the tag value definition
        archived_at:
          type: string
          format: date-time
          nullable: true
          description: When the tag was archived
      required:
        - id
        - key
        - value
        - dimension_id
        - definition_id
    PlatformDefinedJson:
      type: object
      description: Arbitrary JSON data defined by the caller, with a 1KB size constraint
      additionalProperties: true
      example:
        custom_field: value
        any valid json: below 1kb
        nested:
          meaning of life: 42
          array: []
    ApiVendorRefundAllocationLineItem:
      type: object
      properties:
        external_id:
          type: string
          nullable: true
          description: External identifier for the line item.
        amount:
          type: integer
          format: int64
          description: Amount of the line item in cents.
        ledger_account:
          $ref: '#/components/schemas/SingleApiChartAccount'
          nullable: true
          description: The ledger account associated with this line item.
        prepayment_account:
          $ref: '#/components/schemas/SingleApiChartAccount'
          nullable: true
          description: >-
            The prepayment account associated with this line item, if
            applicable.
        transaction_tags:
          type: array
          items:
            $ref: '#/components/schemas/ApiTag'
        memo:
          type: string
          nullable: true
          description: Memo for any text you would like to associate with the line item.
        metadata:
          $ref: '#/components/schemas/PlatformDefinedJson'
          nullable: true
          description: Arbitrary custom metadata in JSON format with a size limit of 1KB
        reference_number:
          type: string
          nullable: true
          description: >-
            Any (typically user-visible) identifier you would like to associate
            with the vendor refund allocation line item.
    ApiVendorData:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Unique identifier for the vendor.
        external_id:
          type: string
          description: >-
            Unique ID of the vendor in your system for linking purposes.
            **Idempotency key**.
        individual_name:
          type: string
          nullable: true
          description: Full name of the individual vendor or contact at a corporate vendor.
        company_name:
          type: string
          nullable: true
          description: Name of the company vendor.
        email:
          type: string
          nullable: true
          description: Email address of the vendor.
        mobile_phone:
          type: string
          nullable: true
          description: Mobile phone number of the vendor.
        office_phone:
          type: string
          nullable: true
          description: Office phone number of the vendor.
        address_string:
          type: string
          nullable: true
          description: Address of the vendor.
        memo:
          type: string
          nullable: true
          description: >-
            Memo for any text you would like to associate with the vendor (for
            example, to display to end users).
        status:
          type: string
          enum:
            - ACTIVE
            - ARCHIVED
          description: Status of the vendor.
        transaction_tags:
          type: array
          items:
            $ref: '#/components/schemas/ApiTag'
    SingleApiChartAccount:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/AccountIdentifier'
        name:
          type: string
          description: Name of the account
          example: Current Assets
        account_number:
          type: string
          nullable: true
          description: Account number if configured
          example: '4000'
        stable_name:
          $ref: '#/components/schemas/AccountStableName'
        normality:
          $ref: '#/components/schemas/BankTransactionDirection'
        account_type:
          $ref: '#/components/schemas/ApiLedgerAccountType'
        account_subtype:
          $ref: '#/components/schemas/ApiLedgerAccountSubtype'
      description: A single ledger account without nested children
    AccountIdentifier:
      oneOf:
        - $ref: '#/components/schemas/AccountId'
          description: ID of the account
          title: Account ID
        - $ref: '#/components/schemas/AccountStableName'
          description: Stable name associated with the account
          title: Account Stable Name
    AccountStableName:
      type: object
      properties:
        type:
          type: string
          description: Resource type. Value will be `StableName`.
          example: StableName
        stable_name:
          type: string
          example: CURRENT_ASSETS
          description: Stable name of the account
    BankTransactionDirection:
      type: string
      enum:
        - CREDIT
        - DEBIT
    ApiLedgerAccountType:
      type: object
      properties:
        value:
          $ref: '#/components/schemas/LedgerAccountType'
          description: Type of the account
        display_name:
          type: string
          description: Display name of the account type
          example: Asset
    ApiLedgerAccountSubtype:
      type: object
      properties:
        value:
          $ref: '#/components/schemas/LedgerAccountSubtype'
        display_name:
          type: string
          description: Display name of the account subtype
          example: Current Assets
    AccountId:
      type: object
      properties:
        type:
          type: string
          description: Resource type. Value will be `AccountId`.
          example: AccountId
        id:
          type: string
          format: uuid
          description: ID of the account
    LedgerAccountType:
      type: string
      enum:
        - ASSET
        - LIABILITY
        - EQUITY
        - REVENUE
        - COGS
        - EXPENSE
    LedgerAccountSubtype:
      type: string
      enum:
        - BANK_ACCOUNTS
        - ACCOUNTS_RECEIVABLE
        - INVENTORY
        - PAYMENT_PROCESSOR_CLEARING_ACCOUNT
        - FIXED_ASSET
        - ACCUMULATED_DEPRECIATION
        - CASH
        - UNDEPOSITED_FUNDS
        - CURRENT_ASSET
        - NON_CURRENT_ASSET
        - PREPAID_EXPENSES
        - DEVELOPMENT_COSTS
        - LOANS_RECEIVABLE
        - INTANGIBLE_ASSET
        - ACCOUNTS_PAYABLE
        - CREDIT_CARD
        - TAXES_PAYABLE
        - INCOME_TAXES_PAYABLE
        - SALES_TAXES_PAYABLE
        - OTHER_TAXES_PAYABLE
        - PAYROLL_TAXES_PAYABLE
        - UNEARNED_REVENUE
        - PAYROLL_LIABILITY
        - PAYROLL_CLEARING
        - LINE_OF_CREDIT
        - TIPS
        - REFUND_LIABILITIES
        - UNDEPOSITED_OUTFLOWS
        - OUTGOING_PAYMENT_CLEARING_ACCOUNT
        - OTHER_CURRENT_LIABILITY
        - LOANS_PAYABLE
        - NOTES_PAYABLE
        - SHAREHOLDER_LOAN
        - NON_CURRENT_LIABILITY
        - CONTRIBUTIONS
        - DISTRIBUTIONS
        - COMMON_STOCK
        - PREFERRED_STOCK
        - ADDITIONAL_PAID_IN_CAPITAL
        - RETAINED_EARNINGS
        - ACCUMULATED_ADJUSTMENTS
        - OPENING_BALANCE_EQUITY
        - OTHER_EQUITY
        - SALES
        - UNCATEGORIZED_REVENUE
        - RETURNS_ALLOWANCES
        - DIVIDEND_INCOME
        - INTEREST_INCOME
        - OTHER_INCOME
        - COGS
        - OPERATING_EXPENSES
        - PAYROLL
        - TAXES_LICENSES
        - UNCATEGORIZED_EXPENSE
        - CHARITABLE_CONTRIBUTIONS
        - LOAN_EXPENSES
        - FINANCE_COSTS
        - INTEREST_EXPENSES
        - DEPRECIATION
        - AMORTIZATION
        - BAD_DEBT
        - OTHER_EXPENSES
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````