---
title: "List invoice series"
method: GET
path: "/v2/invoices/series"
---

# List invoice series

`GET /v2/invoices/series`

## Request

- Base URL: `https://api.slash.com`
- URL: `https://api.slash.com/v2/invoices/series`
- Auth: API key in header `X-API-Key`

List recurring invoice series.

## Query parameters

- `cursor` string
- `limit` integer
- `sort` 'createdAt' | 'startDate' | 'nextInvoiceDate'
- `sortDirection` 'asc' | 'desc'
- `status` string[]
- `customerId` string

## Response `200`

A page of series.

- object
  - `items` InvoiceSeries[], required
    - `id` string, required: Series id with the `inv_series_` prefix.
    - `status` 'active' | 'ended' | 'cancelled', required: See [How a series works](/docs/v2/invoices/recurring-invoices#how-a-series-works).
    - `customerId` string: Customer id with the `le_cus_` prefix.
    - `accountId` string, required: The account payments settle into, with the `sa_group_` prefix.
    - `virtualAccountId` string: The virtual account payments settle into, with the `subaccount_` prefix. Absent when they settle into the account's primary virtual account.
    - `recurrence` union, required: Which days the series issues an invoice on.
      - object
        - `type` 'weekly', required
        - `dayOfWeek` integer, required: `0` is Sunday.
      - object
        - `type` 'monthly_day_of_month', required
        - `dayOfMonth` integer, required: In shorter months, the last day of the month.
      - object
        - `type` 'monthly_nth_weekday', required
        - `nth` union, required: Which occurrence of `dayOfWeek` in the month.
          - integer
          - 'last'
        - `dayOfWeek` integer, required: `0` is Sunday.
    - `startDate` string, date, required: The first day the series can issue an invoice on.
    - `timezone` string, required: The IANA timezone the series' dates are in.
    - `paymentTermsDays` integer, required: Each invoice is due this many days after it's issued.
    - `end` union, required: When the series stops issuing invoices.
      - object
        - `type` 'never', required
      - object
        - `type` 'after_count', required
        - `count` integer, required: How many invoices the series issues in all.
      - object
        - `type` 'on_date', required
        - `date` string, date, required: No invoices are issued after this day.
    - `lineItems` InvoiceLineItem[], required
      - `name` string, required
      - `quantity` number, required
      - `unitAmount` Money, required: A signed monetary amount expressed in minor units.
        - `amount` integer, required: Amount in the currency's minor units.
        - `currency` string, required: Uppercase ISO 4217 currency code.
      - `total` Money, required: A signed monetary amount expressed in minor units.
        - `amount` integer, required: Amount in the currency's minor units.
        - `currency` string, required: Uppercase ISO 4217 currency code.
      - `catalogItemId` string: The catalog item the line was added from, with the `cat_item_` prefix. The line keeps the name and price it was written with.
    - `discount` union: Taken off the line items' subtotal before tax.
      - object
        - `type` 'percentage', required
        - `percent` number, required: Percent of the subtotal. `10` means 10%.
      - object
        - `type` 'fixed', required
        - `amount` Money, required: A signed monetary amount expressed in minor units.
          - `amount` integer, required: Amount in the currency's minor units.
          - `currency` string, required: Uppercase ISO 4217 currency code.
    - `taxRate` number: Tax as a percent of the subtotal after the discount.
    - `amounts` object, required: Each invoice's amounts.
      - `subtotal` Money, required: A signed monetary amount expressed in minor units.
        - `amount` integer, required: Amount in the currency's minor units.
        - `currency` string, required: Uppercase ISO 4217 currency code.
      - `discount` Money, required: A signed monetary amount expressed in minor units.
        - `amount` integer, required: Amount in the currency's minor units.
        - `currency` string, required: Uppercase ISO 4217 currency code.
      - `tax` Money, required: A signed monetary amount expressed in minor units.
        - `amount` integer, required: Amount in the currency's minor units.
        - `currency` string, required: Uppercase ISO 4217 currency code.
      - `total` Money, required: A signed monetary amount expressed in minor units.
        - `amount` integer, required: Amount in the currency's minor units.
        - `currency` string, required: Uppercase ISO 4217 currency code.
    - `memo` string
    - `ccEmails` string[], required
    - `paymentMethods` InvoicePaymentMethod[], required
      - `type` 'bank_transfer' | 'ach_debit' | 'card' | 'crypto', required: `bank_transfer` (ACH, wire or realtime payment to the account's details) is always offered.
      - `passFeeToPayer` boolean, required: Whether the payer covers the method's processing fee.
    - `nextInvoiceDate` string, date: When the next invoice goes out. Only on `active` series.
    - `nextInvoiceId` string: The next invoice, already created as `scheduled`, with the `inv_` prefix. Only on `active` series.
    - `createdAt` string, date-time, required
  - `metadata` PaginationMetadata, required
    - `nextCursor` string: Opaque cursor for the next page. Omitted on the final page.
    - `count` integer, required: Number of items in this page.

## Other responses

- `400`: - `invalid_request (request shape)` — The body, query, or headers failed validation, or a required header is missing. `details` has one entry per failing location, keyed by JSON pointer or header name.
- `401`: - `unauthorized` — API key authentication is missing or invalid.
- `403`: - `feature_not_enabled` — The feature this request uses is not enabled for the legal entity. Contact Slash support to enable it. - `forbidden (legal entity)` — The credential is not permitted to act for the selected legal entity. - `not_available` — Public API v2 is not yet available. Use [Public API v1](https://docs.slash.com/introduction) in the meantime. - `user_api_key_required` — The API key is scoped to a legal entity rather than a user. Every v2 request needs a user API key, created under Settings → API keys in the Slash dashboard, together with the `x-legal-entity` header.
- `404`: - `not_found` — No resource matches the identifier. When the identifier is a field of the request, `details` names that `field` and the `id` it received.
- `429`: The request exceeded the applicable rate limit. The response body is plain text, not the error object; clients must not depend on its wording.
- `500`: - `internal` — Slash could not complete the request. Quote `referenceId` when contacting Slash support.

## Changes

- **2026-10-16** `8b5d371ffeea`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/slashfi/apis/slash-public-api/changes/v2/invoices/series/get.md)

---

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