This question has been flagged

Why would they have changed this in odoo 17? In the release notes it says:

FIFO product costs

The cost of FIFO products is now set to the average price of the remaining quantities.


Seems dumb to me. This is a huge problem, and I'm guessing not just for me!


So anyway, how can I revert that change? Is there a fork that didn't implement that? Or is there some other method to automatically charge the customer based on the cost of the oldest inventory?

I was going to set a pricelist to use the cost of the product, but then if I have a part that cost $30, and the next purchase of it was only $10, the total valuation would be $40, which is what the "cost" field is calculated from. Now the cost is $20 each. Then you sell the first one for $20 (valued at $30 in the valuation report) and it decreases the total value of your stock to $10. Which in turn, changes your product cost to $10. So now we've lost $10 because of AVCO valuation applying to FIFO product categories.


Of course I could just use AVCO across the board, which works perfectly, but that isn't a fix, and I would much rather change the price after my existing stock is gone.

Avatar
Discard
Author

I did a little more research on this and it looks like odoo 16 and older didn't do any cost calculation on the product? Maybe? Having it do AVCO for FIFO products is still useless and confusing, though.

There is not a single cost for a product using FIFO. We used to show the cost of the last product delivered. We now show the average of what is left. This is only when you look at the product. We use the FIFO cost for calculating cost of operations.

Author

I see. Thanks for the reply. I think I'd prefer the last cost, rather than a completely useless average that gets skewed any time there's a price change.
Do you know why FIFO hasn't been implemented correctly in the product listing yet? It seems like it would be a common thing for people to want, considering you can setup a pricelist to use the cost as a factor.