Stock Picking Auto Journal Entry (Odoo 19)
by Odoo DevHouse https://apps.odoo.com/apps/modules/browse?author=Odoo%20DevHouse$ 75.01
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Inventory (stock)
• Invoicing (account) • Discuss (mail) |
| Lines of code | 266 |
| Technical Name |
stock_valuation_account_move |
| License | OPL-1 |
| Website | https://apps.odoo.com/apps/modules/browse?author=Odoo%20DevHouse |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Inventory (stock)
• Invoicing (account) • Discuss (mail) |
| Lines of code | 266 |
| Technical Name |
stock_valuation_account_move |
| License | OPL-1 |
| Website | https://apps.odoo.com/apps/modules/browse?author=Odoo%20DevHouse |
Stock Picking Auto Journal Entry
This module restores Odoo 18-style stock valuation journal entries that Odoo 19 no longer creates automatically at picking validation time. Perfect for businesses requiring immediate accounting entries for inventory movements with per-category control.
Every time your warehouse validates a receipt or delivery, your inventory value changes. Your accounting team expects a journal entry to reflect this immediately - so the books stay in sync with the warehouse floor.
Odoo 19 removed this. It no longer posts journal entries at picking validation time. The general ledger shows no change until an invoice is raised - creating a gap between physical inventory and your financial statements.
This module closes that gap. Install it, flip a switch on your product categories, and journal entries are back - posted the moment a picking is validated.
Why does this matter to finance?
Month-end close, stock audits, and management reporting all depend on the GL reflecting
current inventory value. Without picking-time journal entries, finance teams face manual
accrual entries every period and cannot reconcile the balance sheet until all invoices
are processed.
Selective and Safe: Activate per product category with a single checkbox. Categories without the switch enabled follow standard Odoo 19 behavior - zero disruption to other products.
- Immediate Journal Entry on Picking Validation - posted automatically the moment the warehouse validates a receipt or delivery
- Per-Category Opt-In Control - enable only for the product categories that need real-time accounting; others keep standard Odoo 19 behavior
- Stock Input & Output Transit Accounts Restored - two interim accounts re-added to product categories, powering proper three-way matching
- Correct COGS on Customer Invoices - COGS credit line uses Stock Output account instead of hitting stock valuation directly
- Correct Account on Vendor Bills - purchase lines use Stock Input account to offset against the receipt transit entry
1. Configure Product Category
Enable "Journal on Move Creation" and set up Stock Input/Output accounts for real-time valuation.
2. Validate Purchase Receipt
When a receipt is validated, a journal entry is immediately posted: Debit Stock Valuation / Credit Stock Input.
3. Validate Sales Delivery
Delivery validation posts: Debit Stock Output / Credit Stock Valuation, maintaining proper interim accounting.
Installation & Configuration
- Install the Module: Install through Odoo Apps or manually copy to addons path
- Restart Server & Update: Restart Odoo and update the app list
- Navigate to Categories: Go to Inventory -> Configuration -> Product Categories
- Enable Real-Time Valuation: Set Inventory Valuation to "Automated"
- Enable Feature: Check "Journal on Move Creation" for categories needing immediate entries
- Configure Accounts: Set Stock Journal, Stock Input Account, and Stock Output Account
Step 1: Configure Product Category
Navigate to Inventory -> Configuration -> Product Categories.
Select or create a product category. Set Inventory Valuation to "Automated".
Step 2: Enable the Feature
Check the box "Journal on Move Creation". This acts as a master switch for this category.
Step 3: Set Up Accounting Accounts
Go to the Accounting tab (visible with accounting access rights):
- Stock Journal: The journal where valuation entries will be posted
- Stock Input Account: Interim account for receipts (e.g., "Goods Received Not Invoiced")
- Stock Output Account: Interim account for deliveries (e.g., "Goods Delivered Not Yet Invoiced")
Step 4: Validate a Transfer
Create and validate a purchase receipt or sales delivery for a product in this category.
The system will automatically create and post a journal entry with the configured accounts.
Step 5: Process Invoices
When you validate a vendor bill from the PO, it will use the Stock Input Account.
When you validate a customer invoice from the SO, it will use the Stock Output Account.
This completes the three-way matching accounting flow.
Typical Account Flow
Receipt: DR Stock Valuation / CR Stock Input
Vendor Bill: DR Stock Input / CR Accounts Payable
Delivery: DR Stock Output / CR Stock Valuation
Customer Invoice: DR COGS / CR Stock Output
Multi-National Operations
Proper interim accounts for goods in transit across borders with full audit trail.
Manufacturing Companies
Immediate raw material valuation upon receipt and finished goods valuation upon delivery.
Distribution Centers
Real-time inventory valuation for high-volume operations requiring immediate accounting.
Immediate Accounting Visibility
Real-time financial impact of inventory movements with no delay.
Audit Compliance
Complete trail from stock move to journal entry with proper interim account clearing.
Selective Activation
Enable only for specific categories, not a global system-wide change.
Smooth Upgrade Path
Bridges Odoo 18 to Odoo 19 accounting behavior without disrupting core functionality.
Do You Need Assistance or Have a Feature Request?
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module