---
title: "Retrieve a list of Payments"
method: GET
path: "/v2/payments"
tags: ["Payments"]
---

# Retrieve a list of Payments

`GET /v2/payments`

## Request

- Base URL: `https://api.workiz.com/crm/api`
- URL: `https://api.workiz.com/crm/api/v2/payments`
- Auth: none declared. Required headers: `Authorization`
- TypeScript: <https://skmtc.dev/workiz/apis/developer-api/docs/v2/payments/get.ts> (a function with typed inputs; its response is checked against the schema)

> **Beta:** Breaking changes may occur without notice.

Retrieves a paginated list of Payments, newest first, optionally filtered by date range, client, status or payment type.

## Query parameters

- `pageSize` number
- `page` number
- `field` 'date'
- `order` 'ASC' | 'DESC'
- `clientId` string
- `status` string[]
- `type` string[]
- `dateProperty` 'date'
- `dateOperator` 'prev' | 'next' | 'between'
- `date` string

## Headers

- `Authorization` string, required

## Response `200`

A paginated list of Payments.

- ResponsePaymentsV2Dto
  - `pageSize` number: The maximum number of items returned per page.
  - `page` number: The current page number.
  - `totalResults` number: The total number of results.
  - `hasMore` boolean: Whether there are more results.
  - `data` ResponseDetailedPaymentV2Dto[]: A list of Payments.
    - `id` string: The ID of the payment (prefix `PAY-`).
    - `date` string, date-time: The date and time the payment was collected.
    - `amount` number: The amount the client was charged. Reported for a failed payment too, so check `status` before counting it as money collected.
    - `tipAmount` number: The tip amount included in the payment.
    - `type` 'charge' | 'cash' | 'credit' | 'check' | 'refund' | 'refund_offline' | 'bank_transfer' | 'bank_transfer_offline' | 'cash_app' | 'consumer_financing' | 'venmo' | 'zelle' | 'debit_offline' | 'installments' | 'interac' | 'check_deposit': The type of the payment.
    - `status` 'pending' | 'failed' | 'succeeded': The status of the payment.
    - `estimateId` string, nullable: The ID of the estimate the payment was collected against (prefix `ES-`), or null when the payment is not tied to an estimate.
    - `confirmationCode` string: The confirmation code of the payment.
    - `collectedById` string, nullable: The ID of the user who collected the payment (prefix `USR-`), or null when the payment was not collected by a user.
    - `invoiceId` string, nullable: The ID of the invoice the payment was collected against (prefix `IV-`), or null when the paid document is not invoiced.
    - `jobId` string, nullable: The ID of the job the payment was collected against (prefix `JOB-`, or `LD-` for a lead), or null when the payment belongs to a standalone invoice or estimate.
    - `netAmount` number: The amount collected before tax, less the processing fee. A failed payment collects nothing but still costs its processing fee, so it reports a negative amount - it is not simply `amount` minus `processingFee`.
    - `processingFee` number: The fee the payment gateway charged for processing the payment.
    - `creditCardServiceFee` number: The service fee the client was surcharged for paying by credit card. Refunds never carry one.
    - `clientId` string, nullable: The ID of the client the payment was collected from (prefix `CL-`).

## Other responses

- `400`: Invalid query parameters.
- `401`: Missing or invalid authentication token.
- `403`: The API key does not have permission to access this resource.
- `429`: Rate limit exceeded.

## Changes

- **2026-09-29** `a2110eaa32f2`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/workiz/apis/developer-api/changes/v2/payments/get.md)

---

[API](https://skmtc.dev/workiz/apis/developer-api.md) - [All operations](https://skmtc.dev/workiz/apis/developer-api/llms.txt) - [OpenAPI document](https://skmtc.dev/workiz/apis/developer-api/revisions/fb557783146c?raw)
