---
title: "Finalize invoice"
method: POST
path: "/invoices/{id}/finalize"
tags: ["Invoices"]
---

# Finalize invoice

`POST /invoices/{id}/finalize`

Use when locking an invoice for payment (e.g. after review). Once finalized, line items are locked; invoice can be paid or voided.

## Path parameters

- `id` string, required

## Response `200`

OK

- SuccessResponse
  - `message` string

## Other responses

- `400` — Invalid request
- `500` — Server error

## Changes

> 108 revisions in range; 4 could not be searched.

- **2026-07-15** `f8ecf435d25d` — 2 warning
  - added the new `not_implemented` enum value to the `code` response property for the response status `400`
  - added the new `not_implemented` enum value to the `code` response property for the response status `500`
- **2026-05-18** `8ec2edea6b20` — 4 warning
  - removed the optional property `details` from the response with the `400` status
  - removed the optional property `details` from the response with the `500` status
  - added the new `too_many_requests` enum value to the `code` response property for the response status `400`
  - added the new `too_many_requests` enum value to the `code` response property for the response status `500`
- **2026-04-06** `95af41a12111` — 4 warning, 8 info
  - removed the optional property `error` from the response with the `400` status
  - removed the optional property `error` from the response with the `500` status
  - removed the optional property `success` from the response with the `400` status
  - removed the optional property `success` from the response with the `500` status
  - …8 more

[Change history](https://skmtc.dev/flexprice/apis/flexprice-api/changes/invoices/:id/finalize/post.md)

---

[API](https://skmtc.dev/flexprice/apis/flexprice-api.md) · [All operations](https://skmtc.dev/flexprice/apis/flexprice-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/flexprice/flexprice-api/revisions/9cd0dab91f5c/schema)
