> ## Documentation Index
> Fetch the complete documentation index at: https://www.twicecommerce.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# How to archive stock items

> Take stock out of use without deleting it — what the impact scan tells you, what archiving does to bookings already on the calendar, and how to get the item back.

<Frame caption="Inventory > Stock Items">
  <img src="https://mintcdn.com/twicecommerce/5ARkyCTk5wMAizBn/images/inventory-stock-items-list.webp?fit=max&auto=format&n=5ARkyCTk5wMAizBn&q=85&s=d2a1eceae6c8d7703ea1187be5aa336a" alt="Stock Items table, where items are selected for archiving" width="1920" height="1080" data-path="images/inventory-stock-items-list.webp" />
</Frame>

<Card title="Open in TWICE Admin" icon="external-link" href="https://admin.twicecommerce.com/inventory/stock-items" horizontal>
  inventory/stock-items
</Card>

Archiving is how you retire stock — a bike that was sold, a tent that failed inspection, a batch you no longer rent. The item stops contributing bookable capacity and drops out of the lists, but the record and its history survive, and you can bring it back.

The part that catches people out is what happens to bookings already on the calendar. Archiving releases the item's holds, so orders that had it assigned keep the assignment and lose the reservation behind it. TWICE counts those before you confirm, and this guide covers what to do with them afterwards.

## Prerequisites

<Warning>
  **Required permissions:**

  * `inventory:stock_item:view` — runs the impact scan
  * `inventory:stock_item:manage` — archiving and unarchiving
  * `inventory:stock_item:delete` — deleting an archived item for good

  All four system roles hold all three. A custom role can grant manage without delete, which is the sensible split: archiving is reversible, deleting is not.
</Warning>

<Info>
  **Before you start, decide:**

  * **Archive or fix?** Archiving is for stock leaving service. If the item is only temporarily out — repairs, a seasonal store — set it **Inactive** or book a maintenance reservation instead. Neither releases the holds behind existing bookings; archiving does.
  * **Who takes the bookings?** Archiving does not reassign anything. Have a replacement unit in mind for each affected order, or archive after the current bookings have run.
  * **The whole SKU, or one item?** Archiving a stock item leaves its SKU alone. Archiving the SKU is a separate action with its own warning about the items underneath it.
</Info>

## The Walkthrough

<Steps>
  <Step title="Find the item">
    Open **Inventory > Stock items**. Either tick the rows you want to archive, or open a single item's page.
  </Step>

  <Step title="Start the archive">
    From the table, select **Archive** in the selection toolbar. From an item's own page, select **More** in the top right, then **Archive**.

    Both open the same confirmation dialog.
  </Step>

  <Step title="Read the impact scan">
    Before the dialog is confirmable, TWICE scans what live data still depends on the selection and lists it:

    | What the scan reports                                                      | Meaning                                                                                            |
    | -------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
    | *{'{n}'} upcoming order bookings use the selected stock*                   | Orders that have the item assigned. They will be flagged as conflicts and need a replacement unit. |
    | *{'{n}'} upcoming reservations on the selected stock will lose their hold* | Scheduled events — maintenance, internal holds — whose block disappears.                           |

    Each finding names up to five examples with their dates, and a total count. A selection with nothing depending on it shows no findings at all.

    <Note>The scan counts every hold that has **not yet ended**, which includes one running right now. A rental that is already back is not affected and is not counted.</Note>
  </Step>

  <Step title="Acknowledge">
    Both findings are warnings, so the dialog requires the checkbox **I understand the impact on the items listed above** before **Archive** becomes clickable. If the scan came back empty, there is no checkbox and you can confirm straight away.
  </Step>

  <Step title="Confirm">
    Select **Archive**. TWICE stamps the item as archived and releases every hold that had not yet ended, in one transaction.
  </Step>

  <Step title="Resolve the conflicts it created">
    If the scan reported upcoming order bookings, those orders now carry stock item conflicts — the item is still assigned on paper with no reservation behind it. Go to **Orders**, where a banner reads **Some orders have conflicts**, and select **View orders** to filter to them.

    On each order, open the **Stock Items** tab, find the highlighted item, and use **Change stock item** to swap in an available alternative. The conflict clears once every item on the order holds a valid reservation.

    Read more: [Stock Item Conflicts](/docs/concepts/orders/stock-item-conflicts)
  </Step>
</Steps>

## How do I know it worked?

Three things change, and it is worth checking all three:

* **The item leaves the table.** Stock item lists return active items by default, so an archived item is simply gone from **Inventory > Stock items**.
* **Its own page still opens,** with a warning banner reading **This asset is archived** and an **Unarchive** button in it. Links and bookmarks to the item keep working.
* **It is listed under Settings > Archived assets > Inventory > Stock items,** with the same table tools as the active view.

If the item was on upcoming orders, also check the Orders table for the conflicts banner — that is the work the archive left behind, and it does not clear itself.

## Getting an item back

**Unarchive** returns it to active use, from either the banner on its own page or the selection toolbar in **Settings > Archived assets**. It reappears in the lists and starts contributing capacity again.

Unarchiving does **not** restore the holds that archiving released. Bookings that were reassigned to other units stay where they are, and conflicts you already resolved stay resolved.

## How deleting differs

Delete is a separate action, available only in **Settings > Archived assets** and only on an item that is already archived — there is no way to delete a stock item directly from the Inventory table.

|            | Archive                       | Delete                                                  |
| ---------- | ----------------------------- | ------------------------------------------------------- |
| Where      | Anywhere the item appears     | Settings > Archived assets only                         |
| The record | Kept and readable             | No longer returned anywhere — admin, API, or storefront |
| Reversible | Yes, **Unarchive**            | Not from the admin                                      |
| Permission | `inventory:stock_item:manage` | `inventory:stock_item:delete`                           |

<Warning>Deleting is not reversible from the admin. Archive first, leave it a while, and delete only what you are certain about.</Warning>

Read more: [Archiving and Deletion](/docs/concepts/repeating-patterns/archiving-and-deletion)

## Troubleshooting / Common Pitfalls

<AccordionGroup>
  <Accordion title="The Archive button in the dialog does nothing">
    **Cause:** the impact scan found warnings, and the acknowledgement checkbox below the findings is not ticked. The confirm button stays disabled until it is.

    **What to do:** read the findings, tick **I understand the impact on the items listed above**, then confirm. Switching the selection resets the checkbox on purpose, so a stale acknowledgement cannot carry over to a different set of items.
  </Accordion>

  <Accordion title="Orders started showing conflicts right after I archived">
    **Cause:** this is the archive working as designed. An archived item contributes no capacity, so its holds are released — but the orders keep it assigned, which is exactly the state TWICE flags as a conflict.

    **What to do:** work through the conflicts from the Orders table and swap in replacement units. Nothing clears them automatically; a conflict resolves only when you reassign the item or the order reaches a terminal state.

    Read more: [Stock Item Conflicts](/docs/concepts/orders/stock-item-conflicts)
  </Accordion>

  <Accordion title="The scan showed nothing, but I know the item is booked">
    **Two possibilities.**

    The bookings have already ended. The scan only counts holds whose end is still in the future, because a finished rental is not affected by the archive.

    Or the scan itself failed. An impact scan that errors is non-blocking: the dialog falls back to the plain confirmation with no findings and no acknowledgement checkbox. If you expected findings and got a bare dialog, cancel and try again rather than confirming blind.
  </Accordion>

  <Accordion title="I cannot find the item I archived">
    **Cause:** every list in the admin returns active records by default.

    **What to do:** go to **Settings > Archived assets > Stock items**. That page has no permission gate of its own — every role can open it — and it lists archived items by type with the usual search and filters. Opening the item from there navigates to its normal page.
  </Accordion>

  <Accordion title="I want to take an item out temporarily, not retire it">
    **When this happens:** archiving is a lifecycle move, not an availability one, and it costs you the item's bookings.

    **What to do:** set the item's **Status** to **Inactive** on its General tab, which stops the item being offered for new bookings while the holds behind existing ones stay in place. Or create a reservation on its **Events** tab covering the period it is out — that blocks the dates without changing the item's lifecycle at all.
  </Accordion>

  <Accordion title="Archiving the item did not archive its SKU">
    **When this happens:** stock items and SKUs archive independently. A SKU with no active items left is still an active SKU.

    **What to do:** archive the SKU separately from **Inventory > SKUs** if you are retiring the whole product. Its confirmation warns you about any active stock items still attached.
  </Accordion>
</AccordionGroup>

## Next Steps

<CardGroup cols={2}>
  <Card title="Archived assets" icon="box-archive" href="/docs/settings/archived-assets">
    Where archived items live, and where deleting happens.
  </Card>

  <Card title="Archiving and Deletion" icon="arrows-rotate" href="/docs/concepts/repeating-patterns/archiving-and-deletion">
    The lifecycle behind it, shared by every asset type.
  </Card>

  <Card title="Stock Item Conflicts" icon="triangle-exclamation" href="/docs/concepts/orders/stock-item-conflicts">
    Finding and resolving what an archive leaves on orders.
  </Card>

  <Card title="Register stock items" icon="plus" href="/docs/guides/inventory/register-stock-items">
    The other end of the lifecycle.
  </Card>
</CardGroup>
