Lots and serial numbers are used to trace items from the point of manufacturing to the point of sale. They are allocated during manufacturing & occasionally added while the product is being packed. Lots are collections of numbers or codes applied to a collection of products sharing a similar attribute, whereas serial numbers are distinct numbers allocated to a particular object. The Odoo ERP Software also uses a lot and serial numbers to track product movement throughout the supply chain, helping identify product sources in case of recalls or quality issues in its Inventory Application. When items reach their expiry date, Odoo's traceability feature removes them from bulk storage, making inventory management and manufacturing more difficult for expanding enterprises. The Odoo 17 Inventory platform simplifies tasks and ensures quick completion of tasks.
The blog will guide you through the process of configuring or creating Lot Numbers and Serial Numbers inside the latest Enterprize edition of the Odoo 17 Inventory platform.
Configuring Lots, Serial Numbers, and Traceability
You can activate the Lots & Serial numbers inside the āTraceabilityā tab of the āSettingsā page of the āConfigurationā menu, as shown below.
Also, enabling the āDisplay Lots & Serial Numbers on Invoicesā option inside the āValuationā tab will be helpful to display the product lot numbers inside any order invoices that contain this specific product.
Product Traceability Inside Product Forms
To check the traceability of the product inside forms, we can go to the āInventoryā tab section of the form view of any product. While you are configuring product data inside your inventory, the product is trackable in two different ways. Now, Letās look at a product configuration form as shown below.
Inside the āTRACEABILITYā section of the Inventory tab, you can see various āTrackingā options such as āBy Unique Serial Numbers,ā āBy Lots,ā and āNo Tracking.ā Despite some differences, both function in the same way. When it comes to lots, it's the amount set aside for specific items that are purchased and kept in a single pack. On the other hand, the serial number is the special code or number needed for every single item in stock.
Operation Types and Setting Traceability
We can also set a traceability option within the operation types form. To configure various operation types, go to the āOperation Typesā section of the āConfigurationā menu.
Opening a new configuration form or checking the available operation type from the dashboard will give you the details of the specifics of that particular operation type.
You can see the various inventory operations inside the āType of Operationsā field, including Receipt, Delivery, Internal Transfer, Manufacturing, Repair, and Dropship.
Inside the āLOTS/SERIAL NUMBERSā section, you can see two options such as "Use existing" and "Create new.ā When purchasing a product, users have the option to select pre-existing lots and serial numbers or generate new ones, as depicted below.
How to track and trace a product using Serial Numbers
If a customer or vendor places a purchase order or any quotation, they can track or trace their product or order using the unique serial number that we have provided in the productās configuration form. So we can set the āTraceabilityā for the product.
To check the tracking and traceability function, go to the āRequest For Quotationsā window of the Odoo 17 Purchase Moduleās āOrdersā menu and create a new purchase order.
Inside the displayed configuration page, provide the essential information of the purchase order, including the Vendor Name, Vendor Reference, Currency, etc. Within the "Products" tab, we have also chosen the product that we have chosen.
Save the form data and products. The serial number can be configured when the product is being delivered after the order has been confirmed using the "Confirm Order" button.
The āReceiptsā smart button will give the details of the product. The admins can validate the product delivery using the āValidateā button placed in the receipts dashboard.
The menu icon provided inside the āOperationsā tab of the Receipt form will take you to a pop-up window as depicted below. You can generate Serial Numbers or Lot Numbers for the ordered products from here.
I have entered some sample serial numbers from SN0001 to SN0007 for a sample demonstration.
Auto Generating Serial Numbers
To simplify the process of assigning serial numbers to numerous products, Odoo offers an automatic solution. To use this feature, click on the āGenerate Serialsā button, and the serial numbers and required number of SNs will be automatically displayed. Also, you can input the product's first serial number (SN) if you want to customize the serial numbers. Then, click the āGenerateā button to generate the necessary serial numbers for your products.
Then, save the serial numbers and validate the purchase order from the configuration page. Inside the receipts page, a āTraceabilityā smart button will appear.
You can check the product serial numbers from this Traceability Report dashboard, as shown below.
Then, you can proceed with the purchase order as usual by validating and confirming the order.
Tracking Products with Lot Numbers
Lot numbers are unique identification codes that are assigned to products and are used to identify particular batches and track their movement through the entire supply chain. Now, we can choose or create a product with the āTraceabilityā as āBy Lotsā from the āProductsā window.
After setting the TRACEABILITY function, create a purchase order with the selected product using the Purchase Module. Edit the order details, Add the Products, and confirm the order.
Confirming the order will display a āRecieptā smart button as in the above scenario, you can open the āRecieptsā dashboard and manually validate the order and products. Inside the validation form, you can use the menu found inside the āOperationsā tab to generate customized Lot numbers. as shown below.
Opening the menu will display another pop-up window, the same as we discussed in the previous sequence number configuration section, as depicted below.
The product name and the demanded quantities will be displayed on the form. We can add the required number of LotNumbers by clicking on the āAdd a lineā button provided in the āLot/Serial Numberā section manually, or you can generate new lot numbers using the āImport Lotsā button.
Generating Lots
Clicking the āImport Lotsā button will take you to another page from where you can generate a Lot number for this whole product package.
I have provided a Lot number for an easy demonstration. The Lot number LT-001 will now be the lot number assigned to these productsā five quantities. Then click on the āGenerateā button to generate lot numbers.
Come back to the order configuration page, save the Lot numbers, and validate the order using the āValidateā button you can view the āTraceabilityā smart button from the top of the form view to check the products by their lot number inside the āReceiptsā page.
Here, I have provided the same lot number for a pack of five products, but we can also provide different lot numbers using the same method. After validating the order, you can proceed with the purchase order.
No Tracking of Products
Here, we can set the āTraceabilityā of the product āAcoustic Block Screensā as āNo Trackingā inside a product configuration form as depicted below.
Create a new purchase order with the chosen product from the Odoo 17 Purchase Module, Edit the order details, and Save and Confirm the order.
The product details are visible within the "Receipt" smartbutton. The pop-up window that we received for generating Lot/Serial Numbers in the previous scenarios, as shown below, will appear if you attempt to open the menu located within the "Operations" tab. Here, we can't produce any tracking Lots or Sequences but only set the stock move locations.
Return to the order configuration page after saving the details of the stock move. We won't receive the "Traceability" smart button and won't be able to track the products using lot or serial numbers if we validate the order.
Using Existing Lot/Serial Numbers
Here, we can check the functionality of setting āUse Existing Oneā in the āLots/Serial Numbersā section of an Operation Type configuration form.
I have selected a Lots/Serial Number option for the āDelivery Ordersā Operation Type. then choose a product and set its āTraceabilityā as āBy Lots.ā
Configuring Lot/Serial Numbers for Products
Odoo also provides an exclusive submenu section to create or configure Lots and Serial Numbers for products. We can use the āLots/Serial Numbersā option from the āProductā menu for this purpose. Opening this menu will show the details of all the Lot/Serial numbers created inside the Inventory database with their Internal Reference, Product, Created On date, Company, and activities as shown below
We can create a new Lot Number using the āNewā button. Edit the required fields in the displayed form.
You can enter the āLot/Serial Numberā and select the āProductā that uses this lot/serial number on the aforementioned form. When a product uses this lot number, the quantity will also automatically update. If the lot/serial number is different from the manufacturer's, use it as an āInternal Reference.ā Here, I have configured a lot number as LOT-000001.
Now, Letās create a delivery order using the purchase module, Edit the required fields, Save the data, and Confirm the purchase order.
Go to the āReceiptā smart button section and try to generate a Lot Number using the menu provided inside the āOperationsā tab section.
Choose the Lot Number that we have created above inside the stock move windowās Lot/Serial Number field and save the data.
Billing and Displaying Lot/Serial Numbers in Invoice
To display Lot/Serial Numbers in your invoices and Delivery Slips, enable the features from the āSettingsā window of the Inventory Module.
Now, you can bill a purchase order after confirming and validating the order using the āCreate Billā button.
After creating the bill and making payments using the āCreate Paymentsā button, you can go to the āRecipetsā section.
Then click on the āDelivery Slipā option available in the āPrintā action menu. This will download the delivery slip of your order, where you can see the product lot numbers, as shown below.
Determining the expiration date of a product via looking up its lot or serial number
There are instances when you may have certain products, such as food items, medications, cosmetics, etc., with a shorter shelf life or expiration date. Odoo 17 offers the ability to specify the expiration dates for individual products based on Lot/Serial Number.
Enable the āExpiration Datesā from the āSettingsā window and go to the product configuration form of the specific product inside your Inventory platform. Here, I am creating a āPIZZAā as the product and opening its configuration form, as depicted below.
Choose a āTraceabilityā and āExpiration Date.ā This will display some extra āDatesā fields inside the form, giving products āExpiration Date,ā which can be set after the receipt date, āBest Before Date,ā āRemoval Date,ā and āAlert Date,ā which makes it possible to enable traceability. These dates can then be used to create a purchase order.
After editing the order details, save and confirm the order. Inside the āReceiptā smart button area, you can see the āDetailed Operationsā smart tab.
You can see a dashboard of the products with their lot/serial numbers and expiration dates under the "Detailed Operations" tab. The two-day expiration date that we have set on the product form is also displayed in the āExpiration Dateā section of the dashboard as below.
You can also provide these expiration dates for a specific lot number from the āLot/Serial Numbersā configuration form available inside the āProductsā menu.
Any product that includes or is associated with this Lot/Serial number will have the corresponding expiration dates once these different expiration dates have been set.
The Odoo system uses lots and serial numbers to track the movements of the products, locating them based on their most recent movement. Although lot and serial numbers are useful, they are not mandatory for every transaction to be completed successfully.
To read more about configuring lots/serial numbers & product traceability in Odoo 16, refer to our blog How to Configure Lots/Serial Numbers & Product Traceability in Odoo 16