Skip to Content
Menu
This question has been flagged
1 Reply
104 Views

Hi, 

Can someone help to generate a Stock Movement Report in Odoo Online with a format similar to the one shown below. The report should allow me to select a start date and an end date. The system should then:

  • Take the opening balance of each product from the start date,
  • Show all In (incoming quantities) and Out (outgoing quantities) movements during the period,
  • And finally calculate the closing balance as of the end date.
Product Opening In Out Balance
Red Bull Extra  10 15 13 12
7 up Zero Sugar 330ml

20

30

32
18
7D CROISSANT MIDI CHOCOLATE 55G

15

16

20
11
ACTIVIA GRK MIX & GO RASPBE

2

30

8
24
ACTIVIA KAFIR DAIRY DRINK 2 0 20 7 13
Total 47 111 80 78

Avatar
Discard
Best Answer

Hi,


In Odoo Online, you cannot fully automate a stock movement report with opening, in, out, and closing balances. You can use the Inventory Valuation report for opening and closing balances and the Stock Moves report (Pivot view) for in/out movements. With Odoo Studio, you can add fields to separate incoming and outgoing moves, but full automation isn’t possible. The practical approach is to export both reports and calculate balances in Excel. Fully automated reporting requires a custom module on Odoo.sh or on-premise.


Option 1: Use the Inventory Valuation Report (Available in Odoo Enterprise)


    Go to Inventory → Reporting → Inventory Valuation.

    Set your Start Date and End Date in the filters (by adjusting the date range).

    The report already shows the On Hand Quantity (closing balance) for each product.

    You can use the Group By → Product to summarize quantities.



Limitation:

It won’t show “Opening,” “In,” and “Out” separately — it only gives the current valuation or closing balance.

Option 2: Use Stock Moves with Studio Customization

    Go to Inventory → Reporting → Moves.

    Use filters:

        Date ≥ Start Date

        Date ≤ End Date

    Group by Product.

    Add a Pivot View, where:

        “Done Quantity” (quantity_done) shows total movement.

        “To” locations can represent Incoming, and “From” locations represent Outgoing.




You can use Odoo Studio to add:


    A computed field to differentiate In vs Out moves based on the source/destination location.


    Another computed field to calculate the Opening Balance (using total up to Start Date).


Limitation:

You can’t do a full balance calculation directly without code, but this setup lets you manually export data to Excel and compute balances there.


Also, check the Move Analysis Report



Hope it helps

Avatar
Discard