---
title: "POST /inventory/{id}/overdraft/settle — pay off the item's open overdraft (ITE-1410) from stock already on one of its real lots, e.g. a lot received before settlement existed or into the wrong item. Same ledger as a receive: oldest overdraft dispenses first, revalued at the lot's cost. 200 with null when there is nothing to settle."
method: POST
path: "/Inventory/{id}/overdraft/settle"
tags: ["Inventory"]
---

# POST /inventory/{id}/overdraft/settle — pay off the item's open overdraft (ITE-1410) from stock already on one of its real lots, e.g. a lot received before settlement existed or into the wrong item. Same ledger as a receive: oldest overdraft dispenses first, revalued at the lot's cost. 200 with null when there is nothing to settle.

`POST /Inventory/{id}/overdraft/settle`

## Request

- Base URL: `https://api.clinicos.vet/backend/business`
- URL: `https://api.clinicos.vet/backend/business/Inventory/{id}/overdraft/settle`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/clinicos/apis/pawthosx-business-api-v1/docs/Inventory/:id/overdraft/settle/post.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `id` string, required

## Request body

- SettleOverdraftDto: Settle an item's open overdraft against stock already on a real lot (ITE-1410).
  - `lotId` string, required
  - `quantity` union: Optional cap; by default as much as the lot and the overdraft allow.
    - number, double
    - string, double
  - `reason` string, nullable

## Response `200`

OK

- OverdraftSettlementDto: What a receive (or a manual settle) applied to the item's overdraft lot (ITE-1410): the receive notice reads "5 applied to overdraft (dispensed 9/30–10/12)".
  - `overdraftLotId` string
  - `sourceLotId` string, nullable: The lot whose stock paid it; null for a write-off by stock count.
  - `quantity` union
    - number, double
    - string, double
  - `overdraftBalance` union: The overdraft lot's balance afterwards; 0 means it is settled and closed.
    - number, double
    - string, double
  - `dispenseCount` union
    - integer
    - string, int32
  - `firstDispensedAt` string, date-time, nullable
  - `lastDispensedAt` string, date-time, nullable

## Other responses

- `400`: Bad Request

## Changes

- **2026-10-21** `85ee96c0bb96`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/clinicos/apis/pawthosx-business-api-v1/changes/Inventory/:id/overdraft/settle/post.md)

---

[API](https://skmtc.dev/clinicos/apis/pawthosx-business-api-v1.md) - [All operations](https://skmtc.dev/clinicos/apis/pawthosx-business-api-v1/llms.txt) - [OpenAPI document](https://skmtc.dev/clinicos/apis/pawthosx-business-api-v1/revisions/099cf36186e0?raw)
