Skip to main content
Odoo Community Association

Budget Control on Purchase with Stock

Alpha License: AGPL-3 ecosoft-odoo/budgeting

This module bridges purchase and stock budget control with a product-category inventory recognition policy and a company fallback:

  • Vendor Bill: posting the bill releases the PO commitment and records budget actual. Outgoing stock operations do not affect budget.

  • Stock Issue Valuation: posting the bill affects neither actual nor the PO commitment. Confirming an outgoing operation replaces the traceable PO commitment with a stock commitment; posting its valuation entry replaces that stock commitment with budget actual.

Each product category can use Company Default, Vendor Bill, or Stock Issue Valuation. The resolved policy is captured independently on each purchase order line and stock move, so mixed-policy purchase orders are supported and later configuration changes do not rewrite confirmed transactions. Returns preserve the original stock move policy.

Services and other non-storable products always use Vendor Bill. Stock Issue requires automated inventory valuation. It also applies to outgoing quantities that did not originate from a purchase (for example, manufactured stock) when their product category uses Stock Issue; a Vendor Bill category intentionally excludes all of its outgoing stock operations from budget.

Lot-tracked products trace their source PO lines through completed receipts. When a lot was received on several PO lines, each outgoing move line prefers the source with the same analytic accounts, then the oldest receipt. If no source has matching analytics, receipt FIFO still releases the original PO commitment when stock is issued to another project. Different outgoing moves can therefore release different PO lines even when they share one lot.

Non-lot products use company- and budget-period-scoped product FIFO across received PO lines, ordered by PO date. Quantity is converted between stock and purchase UoMs, and remaining commitment caps use company-currency values. Cancelling an outgoing operation restores its PO commitment. A stock return reverses the issue actual and, for lot-tracked products, restores the source PO commitment for the returned lots: they are unissued stock again. The restore is a new entry dated on the return, so a return in a later period does not reopen the period of the original issue. Returns of multi-step deliveries (e.g. OUT after PICK) follow the delivery chain to the operation that committed budget. Returning a return issues the lots again and releases the commitment again. Non-lot product returns do not restore PO commitment yet. Returned stock that is later scrapped or sent back to the vendor keeps its PO commitment until it is closed manually.

Table of contents

Configuration

  1. In Budget > Configuration > Settings, choose the company’s Default Inventory Budget Actual Source.

  2. On each Product Category, choose Company Default, Vendor Bill, or Stock Issue Valuation under Inventory Valuation.

  3. Categories using Stock Issue must use automated inventory valuation.

The category setting is company-specific. Services and non-storable products always use Vendor Bill. Company and category changes apply to new PO-line and stock-move snapshots; finish open purchase/delivery flows before changing a policy for the same product.

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.

Credits

Authors

  • Ecosoft

Contributors

Maintainers

Current maintainer:

Saran440

This module is part of the ecosoft-odoo/budgeting project on GitHub.

You are welcome to contribute.

Metadata

Release files for odoo-addon-budget-control-purchase-stock 18.0.2.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for odoo-addon-budget-control-purchase-stock 18.0.2.1.2
File Interpreter ABI Platform
odoo_addon_budget_control_purchase_stock-18.0.2.1.2-py3-none-any.whl Python 3 none any Details

Release files / odoo_addon_budget_control_purchase_stock-18.0.2.1.2-py3-none-any.whl

Download URL odoo_addon_budget_control_purchase_stock-18.0.2.1.2-py3-none-any.whl
Size 54.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0a94417586d3c9d5186559669ba91f9058299a9b71fbdbdc2be2911eb8edf220
BLAKE2b-256 checksum
How to use checksums
e5cb198fdc4af0a24fe587fe5a2c9315cfc19cb3d61c15babdde09108c415262
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

18.0.2.1.2 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page