Enable Dark Mode!
product-costing-methods-odoo.png
By: Hilar AK

Product Costing Methods in Odoo

Functional Warehouse

Here we are discussing the functional behavior of Odoo on product costing methods. According to the costing method selected for the product or its category the inventory products, actual costs have been calculated.

Odoo has three costing methods:

1. Standard Price
2. Average Price
3. Real Price

The Standard Price costing method will be in default if we didn't specify the costing method in product category form. Let's see how the three product costing methods affects the Odoo product's cost price calculation.

1. Standard Price

The method which doesn't affects the cost price of the product according to the purchase or other inventory adjustments. The cost price usually needs to be changed manually, in case of products costing method is the standard price. In most of the case, this category of product's price is changed periodically about in a year or after a specific period. To set a new product category, you have to follow these steps:

 a) Create a new Product Category.

Eg:  Inventory -> Configuration -> Product -> Product Categories

Create a category for the standard price.


product-costing-methods-odoo-1-cybrosys

Create a product with the created category (standard price).


product-costing-methods-odoo-2-cybrosys

Here the Cost price is manually entered as $10 and selected category for standard price and quantity on hand is 0.

product-costing-methods-odoo-3-cybrosys


To check the functionality let’s make a purchase and check products value on inventory.

product-costing-methods-odoo-4-cybrosys


Here we purchased the standard product greater than product cost price with $15 and received the products. Now let’s checks how this effects on inventory.

product-costing-methods-odoo-5-cybrosys

Here for 10 products, the total inventory value is 100, i.e. it took the actual price selected in product form by not considering the purchase amount. So let's say the standard costing method is not dynamic and need to change manually. It's same if we purchase and update our quantity on hand with the price less than cost price.

2. Average Price

The average price costing method actually varies the cost price according to the total quantity shipped and the purchase price. The cost price is actually dynamically calculated and we don't need to specify the cost price in case of the costing method average price selected. The cost is calculated on the total average price according to the quantity.
To check the functionality follow the process:

 a) Create product category for average prices


product-costing-methods-odoo-6-cybrosys
b) Create a product with the same category with cost price $0.

product-costing-methods-odoo-7-cybrosys
product-costing-methods-odoo-8-cybrosys
 c) Created purchase order and received products with 10 units of unit price $20.
product-costing-methods-odoo-9-cybrosys
The inventory value $200 is now according to the total unit price we purchased and the product cost price is Updated according to the total_inventory value and total quantity, after the inventory values are also updated with the new cost price.
product-costing-methods-odoo-10-cybrosys
Here cost price Updated $0 to $20.
product-costing-methods-odoo-11-cybrosys
Let's do another purchase with a cost price lower than the exact cost price and can see the changes in product cost price.
product-costing-methods-odoo-12-cybrosys
Here purchased and received the average product again with quantity 5 and a unit price of $12. Now the cost price changes as
product-costing-methods-odoo-13-cybrosys
Here the cost price is updated with the average price as $20 to $17.33. Inventory values changed as
product-costing-methods-odoo-14-cybrosys
Inventory values are updated according to the new cost price.
3. Real Price
The most common and widely used costing method actually updates the cost price of the product according to the last outgoing product in inventory. So the removal strategy like LIFO, and FIFO, has a major role in this costing method. The cost price of the product doesn't change until a product is removed from inventory by any of the removal strategies. That's why the process is real-time and is accepted widely.
Let’s create the product category for the real-time costing method.
product-costing-methods-odoo-15-cybrosys

Here we selected the removal strategy as LIFO [Last in First Out] strategy. FIFO will be in default.
The costing method is selected as a real price. Then we created a product of the same category really.

product-costing-methods-odoo-16-cybrosys

Here the cost price is $0 and 0 product in hand. So let's do the two purchase with the unit price $20 for 10 products and $10 for the 5 products respectively.
 a) Purchase for 10 products with $20 unit price and its inventory value.
product-costing-methods-odoo-18-cybrosys
After first purchase the inventory value is 200 for 10 products with $20:
Now the product is updated with 10 on hand but cost price is not changed.
product-costing-methods-odoo-20-cybrosys
    b) Second purchase and receive of 5 products with $10
product-costing-methods-odoo-21-cybrosys
After the second purchase the inventory values are update as ($20 * 10 ) + ($10 * 5).
product-costing-methods-odoo-22-cybrosys
The cost price of the product doesn't get updated where no outgoing of the product is done. So let's make a sale of the real product of quantity 4 and check what the changes are taking place.
Sale 4 real products and t deliver:
product-costing-methods-odoo-23-cybrosys
The quantity on hand is updated with 11. Where we sell 4 from 15 products. The cost price is Updated with $10 where these sold products are triggered according to the LIFO strategy and taken the unit price of the last outgoing product $10 from the last purchase.
product-costing-methods-odoo-24-cybrosys


If you need any assistance in odoo, we are online, please chat with us.



6
Comments

Togar

Could you please share the same scenario in production? So instead of using route Buy, please use Manufacture.. :) I might have some work that needed your help if you interested.. Let's talk..

28/11/2018

-

3:25AM

Kyaw Khine Lin

Thanks for sharing. Would like to check the scenario below scenario. Valuation : FIFO We sell a product which has no inventory yet. So only zero is debited into cost of sales account. We purchase this item and perform goods issue to this sales order. Stock output account is debited with the actual cost of the product from the purchase order. How do we transfer this from stock output account to cost of sales? Is there any configuration to automate this?

23/09/2019

-

6:46PM

Khalifa

Thank you very much for your detailed explanation. However, my question to you is; if I have different cost price for a single product, how can i use different selling price for the product. for example, i bought product X for $10, then i restock the same product X but this time for $15. Using the real time FIFO costing method, how will the selling price change automatically as soon as it's time to sell product X at $15

22/11/2020

-

7:33AM

Hiren Dangar

Nice content of Product Costing method. Anyone can easily understand and implement in own system.

12/03/2019

-

11:04PM

Nilmar Shereef

Hi Surin, These are the default features in Odoo community editions. You just deploy Odoo ERP for your business and enjoy it.

11/06/2018

-

1:30AM

Surin Chitra

How to get this module?

01/02/2018

-

12:40AM



Leave a comment

 


whatsapp
location

Calicut

Cybrosys Technologies Pvt. Ltd.
Neospace, Kinfra Techno Park
Kakkancherry, Calicut
Kerala, India - 673635

location

Kochi

Cybrosys Technologies Pvt. Ltd.
1st Floor, Thapasya Building,
Infopark, Kakkanad,
Kochi, India - 682030.

location

Bangalore

Cybrosys Techno Solutions
The Estate, 8th Floor,
Dickenson Road,
Bangalore, India - 560042

Send Us A Message