---
title: "Recomputes a billing period's invoiceable amount and voucher coverage, and returns the result."
method: POST
path: "/billing-period/{billingPeriodId}/resettle"
tags: ["Billing"]
---

# Recomputes a billing period's invoiceable amount and voucher coverage, and returns the result.

`POST /billing-period/{billingPeriodId}/resettle`

Idempotent. A period that was closed by an operator is left untouched unless reopen is
 set, in which case its write-off is revoked and its real remaining amount comes back for
 review. The response reports skipped with a reason when the period's status puts it
 beyond settlement — invoiced, void or being reconciled.

## Path parameters

- `billingPeriodId` string, required

## Request body

- ResettleBillingPeriodEndpointInput
  - `reopen` boolean — Whether to undo an operator's close before re-settling, bringing the period's remaining amount back for review. Defaults to false, which leaves a closed period alone.

## Response `200`

OK

- ResettleBillingPeriodEndpointOutput
  - `billingPeriodId` string, required — The re-settled billing period.
  - `status` 'Open' | 'Invoiced' | 'Void' | 'Reconciling' | 'PendingReview' | 'Closed', required
  - `netInvoiceableAmount` number, double, nullable — What an invoice for this period would now charge.
  - `voucherCoverage` number, double, nullable — How much of the period's billable usage vouchers absorbed.
  - `settledAt` string, date-time, nullable — When the period was settled by this call.
  - `skipped` boolean, required — Whether the period was left untouched.
  - `skippedReason` string, nullable — Why the period was left untouched, when it was.

## Other responses

- `400` — Bad Request
- `401` — Unauthenticated
- `403` — Forbidden

---

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