---
title: "List invoices"
method: GET
path: "/invoices"
tags: ["Invoice"]
---

# List invoices

`GET /invoices`

## Request

- Base URL: `https://api.paidnice.com/rest/v1`
- URL: `https://api.paidnice.com/rest/v1/invoices`
- Auth: HTTP bearer

Returns invoices for the authenticated organisation ordered by due date, earliest first. Defaults to unpaid invoices; filter by contact, status or due date range. Deleted invoices are never returned.

## Query parameters

- `limit` integer: Maximum number of records to return
- `cursor` string: Opaque cursor from a previous response's nextCursor. Omit to start from the most recent record.
- `contactId` integer, nullable: Only invoices for this contact
- `status` 'unpaid' | 'overdue' | 'paid': unpaid: approved invoices with a balance owing. overdue: unpaid invoices whose due date has passed in the organisation's timezone. paid: fully paid invoices.
- `dueBefore` string, date: Only invoices due on or before this date (YYYY-MM-DD)
- `dueAfter` string, date: Only invoices due on or after this date (YYYY-MM-DD)

## Response `200`

A page of invoices

- object
  - `data` Invoice[], required
    - `id` string, required
    - `accountingSystemId` string, required
    - `status` string, required
    - `number` string
    - `reference` string
    - `currency` string, required
    - `frozen` boolean, required
    - `sentToCustomer` boolean, required
    - `dueAmount` number, required
    - `totalAmount` number, required
    - `subtotalAmount` number, required
    - `taxAmount` number, required
    - `paidAmount` number, required
    - `discountAmount` number, required
    - `creditedAmount` number, required
    - `depositAmount` number, required
    - `exchangeRate` number, required
    - `accountingSystemExchangeRate` number
    - `issueDate` string, required
    - `dueDate` string, required
    - `lastSyncedDate` string
    - `portalUrl` string, required
    - `accountingSystemOnlineUrl` string
    - `contactId` integer, required
    - `contactName` string
  - `nextCursor` string: Pass as the cursor query parameter to fetch the next page. Absent on the last page.

## Other responses

- `400`: Invalid request
- `401`: Missing or invalid API key
- `403`: The public API is not enabled for the organisation, or the API key lacks the required scope
- `429`: Too many requests

---

[API](https://skmtc.dev/paidnice/apis/paidnice-public-api.md) · [All operations](https://skmtc.dev/paidnice/apis/paidnice-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/paidnice/apis/paidnice-public-api/revisions/d4911087b8e7?raw)
