---
title: "Update a recurring invoice"
method: PUT
path: "/invoices/recurring/{id}"
tags: ["Recurring Invoices"]
---

# Update a recurring invoice

`PUT /invoices/recurring/{id}`

Updates an existing recurring invoice template

## Path parameters

- `id` integer, required

## Request body

- object
  - `client_id` integer
  - `project_id` integer, nullable
  - `po_number` string, nullable
  - `subject` string, nullable
  - `frequency` 'Weekly' | 'Bi-Weekly' | 'Monthly' | 'Quarterly' | 'Yearly'
  - `start_date` string, date
  - `end_date` string, date, nullable
  - `delivery` string
  - `payment_due` integer
  - `line_items` object[]

## Response `200`

Successful response

- RecurringInvoice — Recurring invoice template
  - `id` integer
  - `client_id` integer, nullable
  - `project_id` integer, nullable
  - `document_id` string
  - `po_number` string, nullable
  - `subject` string, nullable
  - `payment_due` integer
  - `start_date` string, date, nullable
  - `end_date` string, date, nullable
  - `frequency` 'Weekly' | 'Bi-Weekly' | 'Monthly' | 'Quarterly' | 'Yearly'
  - `delivery` 'send' | 'draft'
  - `shipping` number
  - `discount` number
  - `subtotal` number
  - `total` number
  - `note` string, nullable
  - `auto_billing` boolean
  - `has_auto_billing_customer` boolean
  - `auto_bills` boolean
  - `stripe_payment_method` string, nullable
  - `online_payment` boolean
  - `accept_ach` boolean
  - `line_item_options` string[]
  - `line_items` object[]
    - `id` integer
    - `item_type` string
    - `description` string
    - `quantity` number
    - `rate` number
    - `total` number
  - `client` object, nullable
    - `id` integer
    - `name` string
  - `project` object, nullable
    - `id` integer
    - `name` string
  - `last_invoice` object, nullable
    - `id` integer
    - `document_id` string
    - `issue_date` string, date-time
  - `next_invoice_date` string, date-time, nullable

## Other responses

- `401` — Unauthenticated
- `403` — Forbidden
- `404` — Not found
- `422` — Validation error

---

[API](https://skmtc.net/harpoonapp/apis/harpoon-api-documentation.md) · [All operations](https://skmtc.net/harpoonapp/apis/harpoon-api-documentation/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/harpoonapp/harpoon-api-documentation/revisions/e8fd192f94c6/schema)
