--- alias: user-guide-store-material description: "Store materials within a resource, requiring defined services and specific preconditions for successful execution" --- # Store Material :lock: Material.**Store** ## Overview This operation is used to store a **Material** in a storage **Resource**. !!! smart-barcode "Supports Smart Barcodes" You can use [[smart-barcode-scanning]] to perform this operation. ## Setup To store a **Material** at a given **Step** and **Resource**, it is necessary to: 1. Define a storage **Service** for Queued or Processed **Materials** in the **Step**. The **Service** to use will match the **Material** System State. 2. Have at least one **Resource** with the Storage Service defined above for Queued or Processed **Material**. ## Preconditions * The **Material** exists and it is active. * The **Material** is a Top Most **Material** (it has no parent). * The **Material** is not In Transit or In Store. * The **Material** is currently not associated with any **Resource**. * The **Resource** must have the Processing Type set to Storage and it must be Dispatchable. * The **Material** is either in the Queued or Processed state and a corresponding Queued Storage Service or Processed Storage Service is defined at the current **Material** **Step**; that Queued Storage Service or Processed Storage Service is enabled globally and it is enabled at the **Resource**. * If the **Resource** property Track Positions is `true`, the Used Positions count must be less than the Total Positions count. Also, if the position addresses are not automatically generated, you must provide a valid address and the specified position must be within the defined bounds for the different storage dimensions. * If the **Resource** property Is Product Mix Allowed is `false`, the **Material** must have the same **Product** as other **Materials** already associated with the **Resource**. ## Sequence of Steps 1. Select the **Material** to be stored. 2. If the **Resource** property Track Positions is `true`, provide a valid position. Note that in this case the provided position address must be compliant with the defined **Resource** position address format. 3. If the **Resource** has any Storage Bins configured, a Storage Bin must be specified. A flag can be set to show only the Storage Bins marked with the Preferred Storage Location flag. 4. Press **Store** to complete the transaction. ![Store Material][StoreMaterial] [StoreMaterial]: images/Store_Material_Step1.png