---
title: "Receive PO Item"
method: PUT
path: "/v2/po/{poID}/items/{poItemID}"
tags: ["Routes", "Purchase Orders", "Items"]
---

# Receive PO Item

`PUT /v2/po/{poID}/items/{poItemID}`

This request marks a quantity of a PO item as having been received and generates a bill for the receipt of the item.

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| quantity | Int | Required | A positive number representing the received number of items. The sum of all receipts cannot be greater than the total quantity on the PO item., For example: if a PO item has a quantity of 5, then we use this request to receive 3, that will mark 3 of the PO item as received and generate a bill for that receipt of 3 PO items. If we run the same request again to receive another 3, the total would be 6 and the request would be rejected with an error. |

Return data description

| Property | Description |
| --- | --- |
| transactionID | The unique ID of the transaction created by this request. |
| prID | The unique ID of the PR (Bill) created by this request. |

## Request body

- object
  - `quantity` integer

## Response `200`

Receive PO Item

- object
  - `transactionID` integer
  - `prID` integer

## Other responses

- `400` — The request was malformed — either invalid JSON syntax or a validation failure (missing required field, wrong type, etc.).
- `401` — No `Authorization` header was provided on the request.
- `403` — The supplied credentials are invalid, the customer account is inactive, or the credentials do not have permission to perform this action.
- `404` — The referenced resource does not exist or is not visible to the authenticated customer.
- `409` — The request conflicts with the current state of the resource (e.g. a uniqueness constraint or a referenced parent that is in the wrong state).
- `429` — The per-minute or per-hour rate limit for this credential and method has been exhausted. Inspect the `X-RateLimit-*` headers to determine when to retry.
- `500` — An unhandled server-side error. The body message is generic (`System unavailable...`) when the underlying cause is a database fault; otherwise it reflects the raised error.

---

[API](https://skmtc.dev/limblecmms/apis/limble-api-v2.md) · [All operations](https://skmtc.dev/limblecmms/apis/limble-api-v2/llms.txt) · [OpenAPI document](https://skmtc.dev/limblecmms/apis/limble-api-v2/revisions/154a31ea03f0?raw)
