> ## Documentation Index
> Fetch the complete documentation index at: https://docs.chargeapi.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Update an Invoice

Updates an invoice. Only invoices in `draft` or `open` status can be updated.

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST https://api.chargeapi.co/v1/invoices/inv_AAYkYIM6c3Q4daTuAizl4U6SoAcOO2aL \
    -H "Authorization: Bearer ch_sk_test_..." \
    --json '{
    "description": "Updated invoice memo for the March 2026 billing period."
  }'
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  {
      "id": "inv_AAYkYIM6c3Q4daTuAizl4U6SoAcOO2aL",
      "object": "invoice",
      "amount_due": 2500,
      "amount_paid": null,
      "created": "2026-05-02T00:26:05.345Z",
      "currency": "eur",
      "description": "Updated invoice memo for the March 2026 billing period.",
      "due_date": "2026-05-09T00:25:49.394Z",
      "fleet": "flt_ZvhAb1gYDNx6AnM9BowgxXg1bisZoTNh",
      "line_items": [
          {
              "amount": 1842,
              "description": "Charging sessions for March 2026",
              "quantity": 1,
              "unit_amount": 1842
          },
          {
              "amount": 658,
              "description": "Reservation fees",
              "quantity": 2,
              "unit_amount": 329
          }
      ],
      "metadata": {},
      "paid_at": null,
      "payment_method": null,
      "period_end": "2026-05-02T00:26:13.544Z",
      "period_start": "2026-04-01T00:26:03.228Z",
      "status": "draft"
  }
  ```
</ResponseExample>

## Parameters

<ParamField body="description" type="string">
  Human-readable memo that appears on the invoice.
</ParamField>

<ParamField body="due_date" type="string">
  Override the default due date . RFC 3339 UTC timestamp with millisecond precision, e.g. `2026-03-03T14:05:23.789Z`.
</ParamField>

## More parameters

<ParamField body="metadata" type="object">
  Set of key-value pairs that you can attach to an object.
</ParamField>

## Returns

Returns the updated invoice.
