Reopen invoice

View as Markdown
## Reopen invoice Re-checks a **closed** invoice (expired or invalid) against the connector and settles it if it turns out it was actually paid. If it comes back to `New`, the background cron picks it up again on its next sweep. This replaces the deprecated `PATCH /v1/invoice/:id/reopen`. ### Auth `x-api-key` header with **`Merchant.invoice.patch`**. Also accepts JWT user (`methods: [API_KEY, JWT_USER]` — POS tokens are **not** accepted here). ### Path params - `id` (required): the invoice id. ### Errors - **400** `Only closed (expired/invalid) invoices can be reopened.` — the invoice is not in a reopenable status. ### Side effects Records a `REOPENED` invoice event (actor `API_USER`) and then runs `checkAndFinalize`. There is **no request body**; the response is `{ status }`. --- **Notas:** Handler: invoiceCreationService.reopen. Auth methods are [API_KEY, JWT_USER] only — narrower than most invoice endpoints. Complements POST /v1/invoice/:id/cancel.

Authentication

x-api-keystring
API Key authentication via header

Path parameters

idstringRequired
Id of the closed invoice to reopen.

Headers

x-application-account-idstringOptional

Scope the request to a specific store / account instead of the one resolved from the API key. Aliases: the x-account-id header, or the application_account_id / account_id query parameter.