---
title: "CreatePOsFromInventory"
method: POST
path: "/api/PurchaseOrder/CreatePOsFromInventory"
tags: ["PurchaseOrder"]
---

# CreatePOsFromInventory

`POST /api/PurchaseOrder/CreatePOsFromInventory`

<b>Permissions Required: </b> GlobalPermissions.Inventory.PurchaseOrder.EditPurchaseOrderNode
<b>Rate limit: </b><span style="background-color:#0272d9;color:white;padding:4px 8px;text-align:center;border-radius:5px; font-size: small;"><b>150</b></span> / minute

## Request body

- PurchaseOrderCreatePOsFromInventoryRequest
  - `request` CreatePOsFromInventoryRequest
    - `ToCreate` MyInventoryPOCreationItems[] — A list of items that should either be added to a PO, either new or existing, depending on data
      - `IsNew` boolean — Denotes item should be added to a new PO
      - `PurchaseOrderId` string, uuid — If this is populated with a valid PurchaseOrderId, the item will be added to that PO
      - `OpenOrderItemsBound` string[] — List of open order items to be bound to the PO item
      - `StockItemId` string, uuid — Linnworks stock item Id
      - `SupplierId` string, uuid — Linnworks supplier Id
      - `SupplierName` string — Linnworks supplier name
      - `OustandingPOQuantity` integer — The amount of stock that has been requested in POs, but not delivered
      - `SuggestedReorderAmount` integer — The amount that has been calculated to reorder, which can be based on reoder point functionality, the average of previous POs or up to minimum level
      - `QuantityInDraftPOs` integer — The amount of stock already in a PO in pending state
      - `ItemTitle` string — Stock item title
      - `SKU` string — Stock item SKU
      - `ImageURL` string — The main stock item image file name
      - `SupplierAssigned` boolean — States whether an item has data for the requested supplier
      - `CalculationMethod` 'Error' | 'MinimumLevel' | 'PreviousPOs' | 'ReorderPoint' | 'OpenOrders' — This describes how the suggested order quantity was calculated
      - `ErrorMessage` string — Description of any errors encountered while suggesting quantities
      - `CanBeOrdered` boolean — Defines whether an item can be ordered if the item has an error associated with it
      - `ErrorCode` 'NO_ERROR' | 'ABOVE_MIN_LEVEL' | 'SUPPLIER_NOT_FOUND' | 'NO_DEFAULT_SUPPLIER' | 'STOCK_LEVEL_UNKNOWN' | 'UNSPECIFIED_RP_ERROR' | 'NO_PREVIOUS_POS' | 'BELOW_SUPPLIER_MINIMUM' | 'NO_MINIMUM_LEVEL' | 'ITEM_UNTRACKED' | 'UNSUPPORTED_OO_REQUEST' | 'UNSUPPORTED_CALC_TYPE' — Error code for the corresponding error message
      - `SupplierPackSize` integer — Pack size for the given item
      - `MinimumOrderQuantity` integer — Minimum Order Quantity for the given supplier
      - `RequestedSupplierId` string, uuid
    - `LocationId` string, uuid — Linnworks stock location id

## Response `200`

OK

- CreatePOsFromInventoryResponse
  - `PurchaseOrders` object — A dictionary where the key is supplier Id and the tuple represents the purchase order id and the external invoice number for that PO
  - `SkippedStockItems` string[]

---

[API](https://skmtc.net/linnworks/apis/authenticate-api.md) · [All operations](https://skmtc.net/linnworks/apis/authenticate-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/linnworks/authenticate-api/versions/0123569a22fb/schema)
