Wednesday, February 25, 2026
1 change · 19.0
Resolved issues and error corrections
This fix ensures Point of Sale journal entries use the correct product quantity when valuing stock movements, especially when products use different units of measure. It prevents greatly overstated stock valuation and expense amounts, improving accounting accuracy for businesses selling kits or products with non-standard units.
Original PR description
Problem: In `_accumulate_amounts`, when computing the total value of moved quantities on a POS picking, the `quantity` field on `stock.move` is used to inform the total value of the move, used in conjunction with `_get_price_unit`. However, `quantity` will not always represent the correct UoM, and can have unintended consequences. Solution: We will instead opt for `_get_valued_qty`, which will always return the quantity of the moved product in its own default UoM. Steps to replicate (Runbot 19) - Company has perpetual valuation - UoM that is 1:500, called "500 Units" here - Component product tracked in "500 Units", set cost to $1000 - Kit that requires 200 Units of original product --- The value of each kit should be $1000/500u*200u = $400 - AVCO perpetual for both 1. Sell 1 kit on the POS 2. Close the register 3. Navigate to the journal entry for that session, note the expense and valuation lines @ $200,000 --$1000*200u = $200,000, which is wrong opw-5893089