Managing inventory operations in a business may be exhausting and can often result in chaotic situations if adequate planning and operational principles are not followed. Furthermore, inventory operations and their performance are critical to the success of a company's operations and product mobility. With the transition to digitization, businesses have begun launching management software that will ease the company's operations, including inventories.
In Odoo 16 warehouse operations, removal methods are used to choose the best products depending on certain criteria such as increasing the distance for the worker, quality control, or the reason for product expiration. Odoo provides three types of removal strategies: FIFO, LIFO, FEFO, and Closest Location. These methods will aid in the efficient management of our inventory.
Let's discuss these types of strategies one by one
In order to use these strategies, make sure that we have enabled Storage Location, Multi-Step Routes, and Expiration date on Lot & Serial numbers from the inventory settings as shown below.
First In First Out (FIFO)
A First In First Out strategy states that if a product is stocked first, it will go out first in the delivery order if a sales order is confirmed.
To perform this operation, let us create a product named as Demo product with tracking mentioned as By Lots inside the inventory page of the product as shown below. Also add on the vendor under the purchase page of the product.
Along with this, make sure that inside the product category of the product, the removal strategy is set as FIFO and save it.
Once the force removal strategy is set, let's create a purchase order for this product since the On hand of the product is zero, as shown below.
Once the order is confirmed, at the time of reception, we need to add the Lot number for the one quantity of product being purchased because the product tracking is set as By Lots. This can be done from the receipt smart button by mentioning the done quantity under the operations as shown below.
Here you see the lot numbers are assigned as LOT1 confirm it and validate the transfer, and now when you check the traceability report, you see the product and its lot number as shown below.
Once the purchase order is validated, let's create a new purchase order for the same Product if that product is needed to be stocked again.
Here in this purchase order, we have ordered five quantities of the product and confirmed it; once confirmed, let us add on the lot number for the product while validating the receipt as shown below.
After validating the transfer, the traceability report is generated, as shown below.
Now to function out this strategy, let's create a sale order and confirm the sale order.
Once the delivery order is validated, a traceability report is generated, and when we check that report, we can find that the product with Lot number LOT1 will be sent to the customer rather than the LOT2, as shown below.
So this is how the First in First out removal strategy works, where products that are stocked first, will go out first in delivery order if a sales order is confirmed.
Last In First Out (LIFO)
A Last In First Out strategy is the inverse of FIFO, stating that if a product was stocked last, it would go out first in a delivery order if a sales order is confirmed.
To check the operation, let's create a new product, with the product category set as LIFO and tracking mentioned as By Lots inside the inventory page of the product, as shown below.
Here you can see the product category being set as LIFO.
Once the force removal strategy is set, let's create a purchase order for this product since the On hand of the product is zero, as shown below.
Once the order is confirmed, at the time of reception, we need to add the Lot number for the two quantities of product being purchased because the product tracking is set as By Lots. This can be done from the receipt smart button by mentioning the done quantity under the operations as shown below.
Here you see the lot numbers are assigned as CB1, confirm it and validate the transfer, and now when you check the traceability report, you see the product and its lot number as shown below.
Once the purchase order is validated, let's create a new purchase order for the same Product if that product is needed to be stocked again.
Here in this purchase order, we have ordered three quantities of the product and confirmed it. Once confirmed, let us add on the lot number for the product while validating the receipt as shown below.
After validating the transfer, the traceability report is generated, as shown below.
Now to function out this strategy, let us create a sale order and confirm the sale order.
Once the delivery order is validated, a traceability report is generated. and when we check that report, we can find that the product with Lot number CB2 will be sent to the customer rather than the CB1, as shown below.
As shown here, the product that came last to the inventory will go out first in a delivery order if a sales order is confirmed, so this is how LIFO works in Odoo 16.
First Expired First Out (FEFO)
The First Expired, First Out (FEFO) removal approach is distinct from the other two. For FEFO, the expiration date is more relevant than the day the product joined the stock.
Many businesses have expiration dates for their products, which should be maintained accordingly. Tracking and maintaining product supply based on expiration dates is required in the food business, for example, to avoid selling old products to clients.
To perform this strategy, let's create a new product with the product category set as FEFO and tracking mentioned as By Lots, along with that enabling the Expiration date field and adding on the expiration date and other options if needed, such as Best Before Date, Alert date, and Removal date. The Best Before Time is the number of days before the expiration date when the things begin to disintegrate but not to the point where they are harmful. In the Removal Date section, we provide how many days after the expiration date the product became hazardous. In the Alert Date column, we can optionally specify how many days before the expiration date we need to issue an alert. All these dates can be set inside the inventory page of the product, as shown below.
Let's set the removal strategy as FEFO as shown below.
Once the force removal strategy is set, let's create a purchase order for this product since the On hand of the product is zero as shown below.
Once the order is confirmed, at the time of reception, we need to add the Lot number for the five quantities of product being purchased because the product tracking is set as By Lots. This can be done from the receipt smart button by mentioning the done quantity under the operations as shown below.
And here, you can see that the product expiration is 05/02/2023 because inside the product, we have already set the expiration date as 5 days.
After validating the transfer, the traceability report is generated, as shown below.
Once the purchase order is validated, let's create a new purchase order of the same Product if that product is needed to be stocked again. For the product, let's change the Expiration date and set it to 10 days, as shown below.
Let us create a PO and confirm it.
Once the order is confirmed, at the time of reception, we need to add the Lot number for the four quantities of product being purchased because the product tracking is set as By Lots. This can be done from the receipt smart button by mentioning the done quantity under the operations as shown below.
Here you can see that the expiration date is 05/07/2023 this is because for this product we have set the expiration date as 10 days let's confirm and validate the transfer.
After validating the transfer, the traceability report is generated, as shown below.
Now to function out this strategy, let us create a sale order and confirm the sale order.
Once the delivery order is validated, a traceability report is generated, and when we check that report, we can find that the product with Lot number BR1 will be sent to the customer rather than the BR2, for product with lot number BR1, the expiration date was set as 5 days and the product with lot number BR2 the expiration date was set as 10 days as shown below.
As shown here, the product that came that expires first will go out first in a delivery order if a sales order is confirmed, so this is how FEFO works in Odoo 16.
Closest Location
In the Closest Location, products are moved from the location that is closest to them. The name of the nearest location is used to identify, which is done in alphabetical order of the location's name.
If the desired quantity is not available in the selected region while removing or selling items, we must search for the product in the nearest place. In such cases, we can employ this removal approach.
To check the operation, let us create a new product, with the product category set as Closest Location and tracking mentioned as By Lots inside the inventory page of the product, as shown below.
Now let us set the Removal strategy as Closest Location, as shown below.
Now let us create a purchase order for the product with and assign lot numbers once the products are received.
After confirming this, let us validate the receipt and add on the lot number for the product and check the Traceability report.
The Traceability report is shown below with product, date, Lot/Serial, From and To with quantity option.
Here you can see that in this Purchase order, two products are received from the vendor with lot number DS1.
Now let's again create another purchase order for the same product and add a lot number at the time of reception.
After confirming this, let us validate the receipt and add on the lot number for the product and check the Traceability report.
Here you can see that in this Purchase order, three products are received from the vendor with the lot number DS2 to shelf1 location.
Now to function out this strategy, let us create a sale order and confirm the sale order.
After confirming the sale order, let's validate the delivery and check the traceability report.
When the Traceability Report went through, it was noticed that two quantities of the product were removed from one location and two amounts from another. This is due to the fact that we ordered two products for WH/Stock and three products for WH/Stock/Shelf1 and then created a selling order with four amounts. The removal technique was set to the nearest location in the product category as a result of which when the WH/Stock location has a product shortage, then it will take the product from the nearest WH/Stock/Shelf1 location.
This is how the removal strategy works in Odoo 16.