---
title: "Patch Invoice"
method: PATCH
path: "/crm/invoices/{invoice_id}"
tags: ["CRM Service Calls"]
---

# Patch Invoice

`PATCH /crm/invoices/{invoice_id}`

Update an existing invoice by ID.

Send only the fields you want to change. Returns 400 if no fields are provided.

**Path Parameters:**

- **invoice_id**: The invoice's CRM record ID.

**Request Body (InvoiceUpdateRequest):** Fields: stage, description, total_amount,
invoice_date, invoice_line_list. All optional — only included fields are updated.

**Response:** The updated invoice object.

## Path parameters

- `invoice_id` string, required

## Request body

- InvoiceUpdateRequest — Request to update an existing invoice.
  - `stage` string, nullable — Possible values: draft, open, paid, cancelled, void, uncollectible
  - `description` string, nullable — Invoice description / notes
  - `total_amount` number, nullable — Final total amount
  - `invoice_date` integer, nullable — Invoice date (epoch timestamp)
  - `invoice_line_list` unknown[], nullable — Array of InvoiceLine objects, e.g. [{"description":"Widget","amount":99.99,"line_detail_dict":{"qty":1,"unit_price":99.99}}]
    - unknown

## Response `200`

Successful Response

- InvoiceResponse
  - `id` string, required
  - `name` string, nullable
  - `stage` string, nullable
  - `description` string, nullable
  - `invoice_num` string, nullable
  - `total_amount` string, nullable
  - `invoice_date` string, nullable
  - `created_ts` string, nullable
  - `created_ts_date` string, nullable
  - `updated_ts` string, nullable
  - `updated_ts_date` string, nullable
  - `contact` string, nullable
  - `opportunity` string, nullable

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/ambivo/apis/ambivo-api.md) · [All operations](https://skmtc.net/ambivo/apis/ambivo-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/ambivo/ambivo-api/versions/165a6d16a9a0/schema)
