# Inventory app

{% hint style="info" %}
This article focuses on using the Returns app. For information on APIs and customizations, see the [global-inventory-hub](https://docs.fulfillmenttools.com/documentation/by-pillar/global-inventory-hub "mention") section.
{% endhint %}

The Inventory app supports operational processes for inventory management in stores and warehouses. This includes accepting goods and transferring stock between storage locations. The [Inventory Android app](https://play.google.com/store/apps/details?id=com.ocfulfillment.inventoryapp\&gl=DE) is available for Android devices.

When you open the app, there are three options to choose from:

* [Inbound](#inbound)
* [Storage and relocation](#storage-and-relocation)
* Production: Opens the Operations app

## Inbound

The inbound section in the Inventory app supports handling the receipt of goods. You can accept items, perform a brief quality inspection, and stow the items in an inbound location. An administrative view of all closed and pending inbound processes is available in Backoffice in the [inbound](https://docs.fulfillmenttools.com/documentation/backoffice/facility-view/inventory/inbound "mention") section.

### Incoming goods

When opening the inbound section, you'll see an overview of all expected deliveries based on information within purchase orders.&#x20;

<figure><img src="https://content.gitbook.com/content/Lrrr5jgTsDuR38gNJIrm/blobs/D212fgm6zxzs50txgP83/mups-inbound_10.png" alt="" width="193"><figcaption></figcaption></figure>

For each entry in the overview, the app displays the supplier name in the headline, and the subtitle shows the value configured in the field `tenantInboundProcessId`, along with the status of the delivery.&#x20;

There are four statuses that apply to an inbound process:

* **Open**: The delivery hasn't arrived, or the receipt of goods hasn't been completed.
* **Closed**: The delivery was confirmed to be complete, the items were checked and placed in a storage location, or the delivery was cancelled.
* **Partial delivery**: The delivery has arrived, and items were checked and placed in a storage location, but some items are missing.
* **On hold**: If a process is on hold, the app displays a modal asking for confirmation before a user can start the process.
  * Example use cases:
    * Some items were missing, and the order should only be stowed once the complete delivery has arrived.
    * Items are damaged, and a supervisor must check the order before items can be stowed or written off.

The entries shown in the overview will only show deliveries with statuses Open, Partial delivery, or On hold. Closed deliveries won't show in the app.

You can search for specific processes by purchase order ID or supplier name, and filter entries by status and date.

### Goods acceptance in the Inventory app

You can start a goods receipt by either tapping on one of the entries or by scanning the delivery note. To scan, a user taps the symbol in the right corner and scans the barcode on the delivery note with an MDE device.

{% stepper %}
{% step %}
**Select the product you've received**

Upon opening an entry in the inbound overview, the user receives an overview of all items that are expected to arrive.

Tapping an entry starts the inbound process. For each product that has arrived, the user can indicate the total quantity and the quantity of rejected items.

<div><figure><img src="https://content.gitbook.com/content/Lrrr5jgTsDuR38gNJIrm/blobs/8RSrHhpLmIGXBwkm1VJG/mups-inbound_09.png" alt="" width="188"><figcaption></figcaption></figure> <figure><img src="https://content.gitbook.com/content/Lrrr5jgTsDuR38gNJIrm/blobs/NAr3XAeeuaFEuKoJ3d2I/mups-inbound_08.png" alt="" width="188"><figcaption></figcaption></figure></div>

You can add a comment and photos to explain, for example, the reasons for rejecting certain items. If at least one product has been confirmed, you can continue to scan the storage location.
{% endstep %}

{% step %}
**Complete acceptance**

You'll be shown a summary of all accepted items and the scanned storage location, and the user can complete the receipt of goods.

<div align="center"><figure><img src="https://content.gitbook.com/content/Lrrr5jgTsDuR38gNJIrm/blobs/bVeXffb2OrB8OyRSnnLm/mups-inbound_06.png" alt="" width="188"><figcaption></figcaption></figure></div>
{% endstep %}
{% endstepper %}

#### Partial deliveries

You can complete the receipt of goods without accepting all items. In that case, the entry receives the status `Partial delivery`. The process remains in that status until you either accept the rest of the delivery or cancel it.

<figure><img src="https://content.gitbook.com/content/Lrrr5jgTsDuR38gNJIrm/blobs/D212fgm6zxzs50txgP83/mups-inbound_10.png" alt="" width="193"><figcaption></figcaption></figure>

If a subsequent delivery arrives that belongs to the same entry, you can continue the receipt of goods by tapping on the entry. In that case, you can edit the quantity and condition of items that have not been accepted. Items that have already been accepted can't be edited. If all remaining items have arrived in the subsequent delivery, the process status to `closed`, and the entry is no longer visible in the overview.

#### Products with stock properties

You can enter values for [stock properties](https://docs.fulfillmenttools.com/documentation/by-pillar/global-inventory-hub/stock/stock-properties) during the receipt of goods. If stock properties are configured for a product, you'll be directed to a different product detail page upon scanning or tapping on a product in the inbound overview.

<figure><img src="https://content.gitbook.com/content/Lrrr5jgTsDuR38gNJIrm/blobs/1tGhvtl1yRV3Z4srQiof/mups-inbound_05.png" alt="" width="193"><figcaption></figcaption></figure>

In the detail page, you can add values for stock properties such as an expiry date or batch number.

<figure><img src="https://content.gitbook.com/content/Lrrr5jgTsDuR38gNJIrm/blobs/cqYph42CHO58FVZF58b1/mups-inbound_04.png" alt="" width="193"><figcaption></figcaption></figure>

If there are different properties for the same product, you can add several property sets (for example, several expiry dates) by scanning or selecting the product again and tapping the **+** button on the product detail page.

After adding the stock property information, you can enter the total and rejected quantity of received items. If tracking for the respective [stock properties](https://docs.fulfillmenttools.com/documentation/by-pillar/global-inventory-hub/stock/stock-properties) is configured as mandatory, the process can't be completed without entering the property information.

#### Adding attachments to receipts

You can add more details about the delivery or specific items using comments and photos.

You can add comments concerning the whole delivery on the overview page by tapping on the comment icon.

<div><figure><img src="https://content.gitbook.com/content/Lrrr5jgTsDuR38gNJIrm/blobs/gouFgSw9zJKkeeCtQfp7/return-01%20(2).png" alt="" width="188"><figcaption></figcaption></figure> <figure><img src="https://4170739437-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLrrr5jgTsDuR38gNJIrm%2Fuploads%2FBibekqU75auvwT2pbxz9%2Freturn-02%20(1).png?alt=media&#x26;token=b8dce0a1-af2b-4069-8df0-8d2815671ebf" alt="" width="188"><figcaption></figcaption></figure></div>

You can add comments concerning a specific product by tapping on the **Add comment** section in the product detail view. A user can add photos of delivered products by tapping on the **Add photos** section in the product detail view.

<figure><img src="https://4170739437-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLrrr5jgTsDuR38gNJIrm%2Fuploads%2F26m0WQPEEzXgrvYaT1jl%2Fmups-inbound_08.png?alt=media&#x26;token=16982199-1f92-4b9a-a19f-56dca32afd21" alt="" width="188"><figcaption></figcaption></figure>

## Storage and relocation

The storage and relocation section in the Inventory app supports stowing and relocating items within a store or warehouse.

### Relocating goods with the Inventory app

{% stepper %}
{% step %}
**Access storage and relocation**

Open the Inventory app and select **Storage and relocation**. You'll see a screen like below:

<figure><img src="https://content.gitbook.com/content/Lrrr5jgTsDuR38gNJIrm/blobs/buRzIdpdsSmeAXVjKjXL/mups-stowing-10.png" alt="" width="188"><figcaption></figcaption></figure>
{% endstep %}

{% step %}
**Scan the location barcode**

You can either can the barcode of the storage location using your device, or tap the + icon in the top right of the screen to search the available location list.

<p align="center"><img src="https://4170739437-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLrrr5jgTsDuR38gNJIrm%2Fuploads%2Fxtq0hpnqwE9YkmIeV9aq%2FScreenshot_20231013-164219.png?alt=media&#x26;token=5888a242-eaae-4e6a-b4f7-7a58937d6d1a" alt="" data-size="original"></p>

You'll be shown a list of items that are available at the location you've selected.
{% endstep %}

{% step %}
**Select the items to relocate**

Select the items for relocation by selecting them in the list and inputting the number of items you'll be removing. Then tap the **Start stowing** button.

<figure><img src="https://content.gitbook.com/content/Lrrr5jgTsDuR38gNJIrm/blobs/BkAFd6oVIBqxiQsxSdNq/Screenshot_20231013-164439.png" alt="" width="188"><figcaption></figcaption></figure>
{% endstep %}

{% step %}
**Select the new location**

You'll be shown an overview of all the collected products, along with the respective [storage location recommendations](#storage-location-recommendations). Select each item and update its new location. Once each item has been put in place, tap the **Stow** button.

<div><figure><img src="https://content.gitbook.com/content/Lrrr5jgTsDuR38gNJIrm/blobs/yc242YEwRj1x1Q192fm3/mups-stowing-07.png" alt="" width="188"><figcaption></figcaption></figure> <figure><img src="https://content.gitbook.com/content/Lrrr5jgTsDuR38gNJIrm/blobs/4knbbCdrBllPvR9PcYkh/mups-stowing-06.png" alt="" width="188"><figcaption></figcaption></figure> <figure><img src="https://content.gitbook.com/content/Lrrr5jgTsDuR38gNJIrm/blobs/TLMCL4IYfYByDIMA6phz/mups-stowing-05.png" alt="" width="188"><figcaption></figcaption></figure></div>

Repeat this until all items in the list are stowed. Then tap the **Complete** button.
{% endstep %}

{% step %}

<figure><img src="https://content.gitbook.com/content/Lrrr5jgTsDuR38gNJIrm/blobs/4dvRrla1tCWPPj75f9Sl/mups-stowing-03.png" alt="" width="188"><figcaption></figcaption></figure>
{% endstep %}
{% endstepper %}

### Storage location recommendations

When relocating a product to a new location, the Inventory app offers recommendations for storage locations. The system generally recommends locations where the same product is already stored and that contain the fewest products.

The recommendation logic also changes depending on the configured [storage principles](https://docs.fulfillmenttools.com/documentation/by-pillar/global-inventory-hub/storage-locations-and-zones#working-principle). For example, if unmixed storage is enabled, the system prefers locations where the same product with the same stock properties is already stored.

### Products with stock properties

When removing a product with [stock properties](https://docs.fulfillmenttools.com/documentation/by-pillar/global-inventory-hub/stock/stock-properties) from a location, you must specify which items with their corresponding properties are being removed. This step is skipped if all products at the location with the same product ID have identical properties.

<figure><img src="https://content.gitbook.com/content/Lrrr5jgTsDuR38gNJIrm/blobs/PsEGy63NJNofqcFjxnCT/mups-stowing-02.png" alt="" width="188"><figcaption></figcaption></figure>

When stowing products with properties at a location, the app shows each collected property set (for example, expiry date) as a separate line item. The system displays different storage location recommendations depending on the defined properties.

<figure><img src="https://content.gitbook.com/content/Lrrr5jgTsDuR38gNJIrm/blobs/xbb8Ok5Fl7UwwCa8kHRW/mups-stowing-01%20(1).png" alt="" width="193"><figcaption></figcaption></figure>

If unmixed storage is enabled and the user chooses a location for a product with properties, the app displays a modal if items with the same `product ID` and different properties already exist there. The user can skip this modal, select the storage location, and continue the process.

<figure><img src="https://content.gitbook.com/content/Lrrr5jgTsDuR38gNJIrm/blobs/ddNw7OkNhMM28jG41Kgu/mups-stowing-09.png" alt="" width="188"><figcaption></figcaption></figure>
