Wingspan Payables Management API

Endpoints dealing with payables, including creating, listing, updating, and deleting payables. It also includes summary endpoints and immediate payroll payables.

Operations 8

GET /payments/summary/payables Retrieve Summary of All Payables #
GET /payments/payroll/immediate/payable Retrieve Approved Payables Ready for Immediate Payroll #
GET /payments/payable List All Payables Associated with a Client #
POST /payments/payable Create a New Payable for a Member on Behalf of a Client #
GET /payments/payable/{id} Retrieve Payable Details by Payable ID #
PATCH /payments/payable/{id} Update Client Payable Information by Payable ID #
DELETE /payments/payable/{id} Delete Client Payable by Payable ID #
POST /payments/pay-approved Execute Approved Payroll Transactions #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/wingspan-payables-management-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

wingspan-payables-management-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Wingspan Payments 1099 Operations Payables Management API
  description: Payments
  termsOfService: https://www.wingspan.app
  contact:
    name: Wingspan API Support
    url: https://www.wingspan.app
    email: support@wingspan.app
  license:
    name: UNLICENSED
    url: https://UNLICENSED
  version: 1.0.0-oas3.1
servers:
- url: https://api.wingspan.app
  description: Wingspan's Payments API in Production
  x-speakeasy-server-id: prod
- url: https://stagingapi.wingspan.app
  description: Wingspan's Payments API in Staging
  x-speakeasy-server-id: staging
security:
- BearerAuth: []
tags:
- name: Payables Management
  description: Endpoints dealing with payables, including creating, listing, updating, and deleting payables. It also includes summary endpoints and immediate payroll payables.
paths:
  /payments/summary/payables:
    get:
      summary: Retrieve Summary of All Payables
      operationId: listSummaryPayables
      x-speakeasy-name-override: list_summary
      tags:
      - Payables Management
      description: This endpoint provides a comprehensive summary of all the payables, offering insights into the current state of pending and completed payments. Ideal for clients and financial departments looking for a snapshot view of their payment obligations.
      responses:
        '200':
          description: A payables summary, with current payables numbers
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayablesSummary'
  /payments/payroll/immediate/payable:
    get:
      summary: Retrieve Approved Payables Ready for Immediate Payroll
      operationId: getApprovedPayables
      x-speakeasy-name-override: get_approved
      tags:
      - Payables Management
      description: Fetches all payables that have been approved and are awaiting immediate payroll processing. This provides a quick view of all payments that are due for immediate payroll execution.
      responses:
        '200':
          description: A list of payables
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PayableSchema'
  /payments/payable:
    get:
      summary: List All Payables Associated with a Client
      operationId: listPayables
      x-speakeasy-name-override: list
      tags:
      - Payables Management
      description: Provides an list of all Payables associated with a specific client, facilitating easier management and overview of the client's financial obligations.
      responses:
        '200':
          description: A list of payables
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PayableSchema'
    post:
      summary: Create a New Payable for a Member on Behalf of a Client
      operationId: createPayable
      x-speakeasy-name-override: create
      tags:
      - Payables Management
      description: Allows for the generation of a new Payables for a specific member on behalf of a client. This ensures streamlined billing and effective financial tracking between clients and members.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PayableCreateRequest'
      responses:
        '200':
          description: A payable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayableSchema'
  /payments/payable/{id}:
    get:
      parameters:
      - in: path
        required: true
        name: id
        description: Unique identifier
        schema:
          type: string
      summary: Retrieve Payable Details by Payable ID
      operationId: getPayable
      x-speakeasy-name-override: get
      tags:
      - Payables Management
      description: This API endpoint is designed to fetch the detailed Payable information of a member using a unique Payable ID.
      responses:
        '200':
          description: A payable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayableSchema'
    patch:
      parameters:
      - in: path
        required: true
        name: id
        description: Unique identifier
        schema:
          type: string
      summary: Update Client Payable Information by Payable ID
      operationId: updatePayable
      x-speakeasy-name-override: update
      tags:
      - Payables Management
      description: This API endpoint facilitates the updating of existing payable details related to a client using a unique Payable ID.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PayableUpdateRequest'
      responses:
        '200':
          description: A payable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayableSchema'
    delete:
      parameters:
      - in: path
        required: true
        name: id
        description: Unique identifier
        schema:
          type: string
      summary: Delete Client Payable by Payable ID
      operationId: deletePayable
      x-speakeasy-name-override: delete
      tags:
      - Payables Management
      description: This API endpoint is designed to remove the payable information related to a client using a unique Payable ID.
      responses:
        '200':
          description: A payable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayableSchema'
  /payments/pay-approved:
    post:
      summary: Execute Approved Payroll Transactions
      operationId: executeApprovedPayrollTransaction
      x-speakeasy-name-override: execute
      tags:
      - Payables Management
      description: Processes all approved payroll transactions, ensuring employees and vendors are compensated as per their respective invoices.
      responses:
        '200':
          description: An invoice
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Invoice'
components:
  schemas:
    Fee:
      type: object
      properties:
        amount:
          type: number
        calculatedAt:
          type:
          - string
          - 'null'
      required:
      - amount
    InvoiceAttachmentFile:
      type: object
      properties:
        fileName:
          type: string
        fileUrl:
          type: string
      required:
      - fileName
      - fileUrl
    PaymentInfo:
      type: object
      properties:
        meansType:
          type: string
          enum:
          - Card
          - Account
          - InternalAccount
        brandImageUrl:
          type:
          - string
          - 'null'
        cardBrand:
          type:
          - string
          - 'null'
        meansDescription:
          type:
          - string
          - 'null'
        meansLast4:
          type:
          - string
          - 'null'
      required:
      - meansType
    6ad3f4f624fb518510130e879729b00ed8c237d1cebc5477abf34ac340a6424d:
      type: object
      properties:
        expenseAccountId:
          type:
          - string
          - 'null'
        itemId:
          type:
          - string
          - 'null'
    InvoiceLineItemsCreateRequest:
      type: object
      properties:
        costPerUnit:
          type:
          - number
          - 'null'
        description:
          type:
          - string
          - 'null'
        detail:
          type:
          - string
          - 'null'
        discount:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/facb8048736dba546c4c76242d9f8c7111011a7a7483528f37d80226698a1f2b'
        integration:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/3190685832a4970525ea5b0803efff0b36a0202062e1fd8a0bc187acbe156461'
        labels:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/LabelsDictionary'
        quantity:
          type:
          - number
          - 'null'
        reimbursableExpense:
          type:
          - boolean
          - 'null'
        totalCost:
          type:
          - number
          - 'null'
        unit:
          type:
          - string
          - 'null'
    InvoiceAmountDetails:
      type: object
      properties:
        clientPaid:
          type: number
        collaboratorPayments:
          type: number
        deductions:
          type: number
        memberGross:
          type: number
        memberNet:
          type: number
        memberTaxWithheld:
          type: number
        processingFee:
          type: number
        wingspanTopUp:
          type: number
        clientRefunded:
          type:
          - number
          - 'null'
      required:
      - clientPaid
      - collaboratorPayments
      - deductions
      - memberGross
      - memberNet
      - memberTaxWithheld
      - processingFee
      - wingspanTopUp
    6b94b58d661f3eabc1444a7a43ac4b99580f0d050123b7bf38184e2f0d7bd66e:
      type: object
      properties:
        quickbooks:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/6b786d9a2229f84822749ed0e086e50a931cc189f3b1bfff2c851fae29b07879'
    ScheduleDate:
      type: object
      properties:
        date:
          type: string
        status:
          type: string
          enum:
          - Pending
          - Completed
          - Skipped
          - Modified
        cutOffDate:
          type:
          - string
          - 'null'
        invoiceId:
          type:
          - string
          - 'null'
        invoiceTemplateId:
          type:
          - string
          - 'null'
      required:
      - date
      - status
    PayableCreateRequest:
      type: object
      properties:
        collaboratorId:
          type: string
        creditFeeHandling:
          $ref: '#/components/schemas/FeeHandlingConfig'
        dueDate:
          type: string
        lineItems:
          type: array
          items:
            $ref: '#/components/schemas/InvoiceLineItemsCreateRequest'
        acceptedPaymentMethods:
          type:
          - array
          - 'null'
          items:
            enum:
            - Credit
            - ACH
            - Manual
            - null
            type:
            - string
            - 'null'
        attachments:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/36b041d426951ffff76360faf03ef8ae938bed9739e6ad9f51acb982782296a2'
        client:
          oneOf:
          - type: 'null'
          - type: object
        currency:
          type:
          - string
          - 'null'
          enum:
          - USD
          - CAD
          - null
        integration:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/3190685832a4970525ea5b0803efff0b36a0202062e1fd8a0bc187acbe156461'
        invoiceNotes:
          type:
          - string
          - 'null'
        labels:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/LabelsDictionary'
        lateFeeHandling:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/LateFeeConfigUpdate'
        member:
          oneOf:
          - type: 'null'
          - type: object
        memberClientId:
          type:
          - string
          - 'null'
        metadata:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/InvoiceMetadata'
        notificationPreferences:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/InvoiceNotificationPreferences'
        status:
          type:
          - string
          - 'null'
          enum:
          - Draft
          - Open
          - Overdue
          - Cancelled
          - Pending
          - PaymentInTransit
          - Paid
          - null
      required:
      - collaboratorId
      - creditFeeHandling
      - dueDate
      - lineItems
    InvoiceWithholdings:
      type: object
      properties:
        tax:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/14abbd45a54a2847207e8ddfaeb5d4bc82ffb855d63772d79e0c5fe04e9b9b01'
    ProcessingFees:
      type: object
      properties:
        creditCardFee:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/Fee'
        instantPayoutFee:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/Fee'
    InvoiceAppliedDeductions:
      type: object
      properties:
        amount:
          type: number
        deductionId:
          type: string
        name:
          type: string
        transferId:
          type:
          - string
          - 'null'
      required:
      - amount
      - deductionId
      - name
    InvoiceCollaboratorUpdateRequest:
      type: object
      properties:
        amount:
          type:
          - number
          - 'null'
        description:
          type:
          - string
          - 'null'
    InvoicePayment:
      type: object
      properties:
        amount:
          type: number
        createdAt:
          type: string
        events:
          $ref: '#/components/schemas/fdde61b278ad2b0bef3e1f411d3749ff7bc345ae633a85eb25e5990d251fb3a9'
        labels:
          $ref: '#/components/schemas/LabelsDictionary'
        paymentId:
          type: string
        sourceId:
          type: string
        sourceMetadata:
          $ref: '#/components/schemas/fa804b4efa97e487035ead1834462b69564f5e4ebbbd376106a1847d1c1aa4f4'
        sourceType:
          type: string
          enum:
          - Account
          - Card
          - InternalAccount
        status:
          type: string
          enum:
          - Created
          - Failed
          - Pending
          - Sent
          - Cleared
          - Returned
        updatedAt:
          type: string
        statusReason:
          type:
          - string
          - 'null'
          enum:
          - InsufficientFunds
          - AccountNotFound
          - Unauthorized
          - GenericBankError
          - GenericCardError
          - CardCurrencyNotSupported
          - CardExpired
          - CardInputInvalid
          - null
      required:
      - amount
      - createdAt
      - events
      - labels
      - paymentId
      - sourceId
      - sourceMetadata
      - sourceType
      - status
      - updatedAt
    InvoiceMetadata:
      type: object
      properties:
        depositNote:
          type:
          - string
          - 'null'
        invoiceDate:
          type:
          - string
          - 'null'
        payoutPendingReason:
          type:
          - string
          - 'null'
          enum:
          - Admin
          - PaymentNotClearedCard
          - PaymentNotCleared
          - PaymentNotClearedCollaborator
          - PaymentNotClearedFuture
          - PlatformErrorCard
          - PlatformErrorGeneric
          - PayoutNotEligibleYet
          - PayoutMethodNotSelected
          - PayoutMethodError
          - PlatformErrorGiftCard
          - PayoutGiftCardLinkPending
          - InstantPayoutMethodNotSelected
          - PlatformErrorInstantPayout
          - InstantPayoutNotEligibleYet
          - PlatformErrorCurrencyCloud
          - null
        pendingStatusReason:
          type:
          - string
          - 'null'
          enum:
          - CollaboratorMissingCustomEligibilityRequirement
          - CollaboratorMissingEligibilityRequirement
          - MemberPayoutMethodNotSelected
          - MemberTaxDocumentationNotVerified
          - null
        purchaseOrderNumber:
          type:
          - string
          - 'null'
    Invoice:
      type: object
      properties:
        amount:
          type: number
        client:
          $ref: '#/components/schemas/ClientOptions'
        createdAt:
          type: string
        currency:
          type: string
          enum:
          - USD
          - CAD
        dueDate:
          type: string
        eventActors:
          $ref: '#/components/schemas/87539cb97aa7616e350fc0d23c5a49177ea4c4a8bd00ec2a2cfd2a9a5c4e648a'
        events:
          $ref: '#/components/schemas/InvoiceEvents'
        externalIds:
          $ref: '#/components/schemas/ExternalIds'
        invoiceId:
          type: string
        invoiceNumber:
          type: string
        labels:
          $ref: '#/components/schemas/LabelsDictionary'
        lineItems:
          type: array
          items:
            $ref: '#/components/schemas/InvoiceLineItem'
        member:
          $ref: '#/components/schemas/MemberOptions'
        memberAddress:
          $ref: '#/components/schemas/Address'
        memberClientId:
          type: string
        memberId:
          type: string
        payments:
          type: array
          items:
            $ref: '#/components/schemas/InvoicePayment'
        status:
          type: string
          enum:
          - Draft
          - Open
          - Overdue
          - Cancelled
          - Pending
          - PaymentInTransit
          - Paid
        updatedAt:
          type: string
        userRoles:
          $ref: '#/components/schemas/UserRoles'
        acceptedPaymentMethods:
          type:
          - array
          - 'null'
          items:
            enum:
            - Credit
            - ACH
            - Manual
            - null
            type:
            - string
            - 'null'
        accountId:
          type:
          - string
          - 'null'
        amountDetails:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/InvoiceAmountDetails'
        attachments:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/InvoiceAttachments'
        bankTransferInfo:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/BankAccount'
        chargedFees:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/Fees'
        clientId:
          type:
          - string
          - 'null'
        collaborators:
          type:
          - array
          - 'null'
          items:
            oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/InvoiceCollaborator'
        creditFeeHandling:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/FeeHandlingConfig'
        deductions:
          type:
          - array
          - 'null'
          items:
            oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/InvoiceAppliedDeductions'
        integration:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/InvoiceIntegrations'
        internationalBankTransferInfo:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/BankAccount'
        invoiceNotes:
          type:
          - string
          - 'null'
        invoiceTemplateId:
          type:
          - string
          - 'null'
        lateFeeHandling:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/LateFeeConfig'
        memberFormattedAddressLines:
          type:
          - array
          - 'null'
          items:
            type:
            - string
            - 'null'
        metadata:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/InvoiceMetadata'
        notificationPreferences:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/InvoiceNotificationPreferences'
        parentInvoiceId:
          type:
          - string
          - 'null'
        paymentInfo:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/PaymentInfo'
        paymentMethodId:
          type:
          - string
          - 'null'
        payoutDestinations:
          type:
          - array
          - 'null'
          items:
            oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/InvoicePayoutDestination'
        processingFees:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/ProcessingFees'
        refundDestinations:
          type:
          - array
          - 'null'
          items:
            oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/InvoiceRefundDestination'
        sourceId:
          type:
          - string
          - 'null'
        withholdings:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/InvoiceWithholdings'
      required:
      - amount
      - client
      - createdAt
      - currency
      - dueDate
      - eventActors
      - events
      - externalIds
      - invoiceId
      - invoiceNumber
      - labels
      - lineItems
      - member
      - memberAddress
      - memberClientId
      - memberId
      - payments
      - status
      - updatedAt
      - userRoles
    6b786d9a2229f84822749ed0e086e50a931cc189f3b1bfff2c851fae29b07879:
      type: object
      properties:
        expenseAccountId:
          type:
          - string
          - 'null'
    InvoiceAttachments:
      type: object
      properties:
        customAttachmentIds:
          type:
          - array
          - 'null'
          items:
            type:
            - string
            - 'null'
        customAttachmentInfo:
          type:
          - array
          - 'null'
          items:
            oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/InvoiceAttachmentFile'
        invoiceLink:
          type:
          - string
          - 'null'
        invoicePdf:
          type:
          - string
          - 'null'
        receiptPdf:
          type:
          - string
          - 'null'
    InvoiceCollaborator:
      type: object
      properties:
        amount:
          type: number
        currency:
          type: string
          enum:
          - USD
          - CAD
        description:
          type: string
        memberClientId:
          type: string
        invoiceId:
          type:
          - string
          - 'null'
      required:
      - amount
      - currency
      - description
      - memberClientId
    fa804b4efa97e487035ead1834462b69564f5e4ebbbd376106a1847d1c1aa4f4:
      type: object
      properties:
        institution:
          type:
          - string
          - 'null'
        mask:
          type:
          - string
          - 'null'
    Fees:
      type: object
      properties:
        lateFee:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/Fee'
        processingFee:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/Fee'
    ExternalIdsBulkImport:
      type: object
      properties:
        bulkItemMergeKey:
          type:
          - string
          - 'null'
    ExternalIdsQuickbooksData:
      type: object
      properties:
        id:
          type: string
        syncToken:
          type: string
        doCreate:
          type:
          - boolean
          - 'null'
        doDelete:
          type:
          - boolean
          - 'null'
        doUpdate:
          type:
          - boolean
          - 'null'
        updatedAt:
          type:
          - string
          - 'null'
      required:
      - id
      - syncToken
    ExternalIds:
      type: object
      properties:
        bulk:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/ExternalIdsBulkImport'
        quickbooks:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/ExternalIdsQuickbooks'
        stripe:
          type:
          - string
          - 'null'
    FrequencyUpdate:
      type: object
      properties:
        daily:
          type:
          - boolean
          - 'null'
        dayInInterval:
          type:
          - number
          - 'null'
        endDate:
          type:
          - string
          - 'null'
        every:
          type:
          - number
          - 'null'
        interval:
          type:
          - string
          - 'null'
          enum:
          - Week
          - Month
          - null
        startDate:
          type:
          - string
          - 'null'
        twicePerMonth:
          type:
          - boolean
          - 'null'
    BankAccount:
      type: object
      properties:
        accountNumber:
          type: string
        bankName:
          type: string
        routingNumber:
          type:
          - string
          - 'null'
        swiftCode:
          type:
          - string
          - 'null'
      required:
      - accountNumber
      - bankName
    InvoicePayoutDestination:
      type: object
      properties:
        amount:
          type: number
        description:
          type: string
        destinationType:
          type: string
          enum:
          - Account
          - Card
          - InternalAccount
          - PaperCheck
          - WeGift
        payoutMethod:
          type: string
          enum:
          - Standard
          - Instant
          - Expedited
          - Check
          - ECheck
        percentage:
          type: number
        transferId:
          type: string
        brand:
          type:
          - string
          - 'null'
        destinationId:
          type:
          - string
          - 'null'
        last4:
          type:
          - string
          - 'null'
      required:
      - amount
      - description
      - destinationType
      - payoutMethod
      - percentage
      - transferId
    InvoiceNotificationPreferences:
      type: object
      properties:
        sendReminders:
          type: boolean
        sendInvoice:
          type:
          - boolean
          - 'null'
        sendReceipt:
          type:
          - boolean
          - 'null'
      required:
      - sendReminders
    ClientOptions:
      type: object
      properties:
        comment:
          type:
          - string
          - 'null'
        payDate:
          type:
          - string
          - 'null'
        workflowStatus:
          type:
          - string
          - 'null'
          enum:
          - Pending
          - PreApproved
          - Approved
          - PaymentInitiated
          - Funded
          - Declined
          - null
        workflowSubStatus:
          type:
          - string
          - 'null'
          enum:
          - Submitted
          - null
    PayableUpdateRequest:
      type: object
      properties:
        acceptedPaymentMethods:
          type:
          - array
          - 'null'
          items:
            enum:
            - Credit
            - ACH
            - Manual
            - null
            type:
            - string
            - 'null'
        attachments:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/36b041d426951ffff76360faf03ef8ae938bed9739e6ad9f51acb982782296a2'
        chargedFees:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/Fees'
        client:
          oneOf:
          - type: 'null'
          - type: object
        collaborators:
          type:
          - array
          - 'null'
          items:
            oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/InvoiceCollaboratorUpdateRequest'
        creditFeeHandling:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/FeeHandlingConfig'
        dueDate:
          type:
          - string
          - 'null'
        integration:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/3190685832a4970525ea5b0803efff0b36a0202062e1fd8a0bc187acbe156461'
        invoiceNotes:
          type:
          - string
          - 'null'
        labels:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/LabelsDictionary'
        lateFeeHandling:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/LateFeeConfigUpdate'
        lineItems:
          type:
          - array
          - 'null'
          items:
            oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/InvoiceLineItemsCreateRequest'
        member:
          oneOf:
          - type: 'null'
          - type: object
        memberClientId:
          type:
          - string
          - 'null'
        metadata:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/InvoiceMetadata'
        notificationPreferences:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/InvoiceNotificationPreferences'
        paymentMethods:
          type:
          - array
          - 'null'
          items:
            enum:
            - Credit
            - ACH
            - Manual
            - null
            type:
            - string
            - 'null'
        status:
          type:
          - string
          - 'null'
          enum:
          - Draft
          - Open
          - Overdue
          - Cancelled
          - Pending
          - PaymentInTransit
          - Paid
          - null
    UserRoles:
      type: object
      properties:
        ownerIds:
          type: array
          items:
            type: string
        viewerIds:
          type: array
          items:
            type: string
      required:
      - ownerIds
      - viewerIds
    LateFeeConfigUpdate:
      type: object
      properties:
        frequency:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/FrequencyUpdate'
        lateFeeAmount:
          type:
          - number
          - 'null'
        lateFeePercentage:
          type:
          - number
          - 'null'
    FeeHandlingConfig:
      type: object
      properties:
        clientAbsolutePercentage:
          type:
          - number
          - 'null'
        clientPays:
          type:
          - number
          - 'null'
        memberPays:
          type:
          - number
          - 'null'
    InvoiceRefundDestination:
      type: object
      properties:
        amount:
          type: number
        createdAt:
          type: string
        destinationType:
          type: string
          enum:
          - Account
          - Card
          - InternalAccount
          - PaperCheck
          - WeGift
        events:
          $ref: '#/components/schemas/InvoiceRefundEvents'
        labels:
          $ref: '#/components/schemas/LabelsDictionary'
        refundType:
          type: string
          enum:
          - Account
          - TaxWithholding
          - Wallet
          - Card
        updatedAt:
          type: string
        destinationId:
          type:
          - string
          - 'null'
        stripeTransferId:
          type:
          - string
          - 'null'
        transactionId:
          type:
          - string
          - 'null'
        transferId:
          type:
          - string
          - 'null'
      required:
      - amount
      - createdAt
      - destinationType
      - events
      - labels
      - refundType
      - updatedAt
    InvoiceLineItem:
      type: object
      properties:
        costPerUnit:
          type: number
        createdAt:
          type: string
        labels:
          $ref: '#/components/schemas/LabelsDictionary'
        labelsBak2:
          $ref: '#/components/schemas/LabelsDictionary'
        quantity:
          type: number
        reimbursableExpense:
          type: boolean
        totalCost:
          type: number
        unit:
          type: string
        updatedAt:
          type: string
        description:
          type:
          - string
          - 'null'
        detail:
          type:
          - string
          - 'null'
        discount:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/facb8048736dba546c4c76242d9f8c7111011a7a7483528f37d80226698a1f2b'
        integration:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/InvoiceIntegrations'
      required:
      - costPerUnit
      - createdAt
      - labels
      - labelsBak2
      - quantity
      - reimbursableExpense
      - totalCost
      - unit
      - updatedAt
    InvoiceRefundEvents:
      t

# --- truncated at 32 KB (45 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/wingspan/refs/heads/main/openapi/wingspan-payables-management-api-openapi.yml