Search 1.9 billion lines of Odoo code on GitHub

purchase_consignment_delivery_expense

Author: Numigi
License: no license
Branch: 11.0
Repository: Numigi/odoo-purchase-addons
Dependencies: product, product_supplier_info_helpers, and purchase_consignment
Languages: PO File (49, 10.7%), Python (373, 81.4%), and XML (36, 7.9%)
Other branches: 12.0, 14.0, TA#49456, TA#50304, and qtip_20220127_1938

<h1 class="title">Purchase Consignment Delivery Expense</h1> <p>This module extends <code>purchase_consignment</code>.</p> <p>When delivering a consigned product, a journal entry is created to recognize the cost of the product.</p> <div class="contents topic" id="table-of-contents"> <p class="topic-title first">Table of Contents</p> <ul class="simple"> <li><a class="reference internal" href="#context" id="id1">Context</a></li> <li><a class="reference internal" href="#hypothesis" id="id2">Hypothesis</a></li> <li><a class="reference internal" href="#module-design" id="id3">Module Design</a></li> <li><a class="reference internal" href="#configuration" id="id4">Configuration</a></li> <li><a class="reference internal" href="#usage" id="id5">Usage</a></li> <li><a class="reference internal" href="#known-issues" id="id6">Known Issues</a><ul> <li><a class="reference internal" href="#supplier-invoice" id="id7">Supplier Invoice</a></li> <li><a class="reference internal" href="#standard-price" id="id8">Standard Price</a></li> </ul> </li> <li><a class="reference internal" href="#contributors" id="id9">Contributors</a></li> </ul> </div> <a name="context"></a> <h2><a class="toc-backref" href="#id1">Context</a></h2> <p>A consigned product has no inventory value. Therefore, in vanilla Odoo when delivering the product, no journal entry is created.</p> <p>If the cost of these products is recognized at the purchase invoice, the matching of revenues and charges principle is not followed.</p> <a name="hypothesis"></a> <h2><a class="toc-backref" href="#id2">Hypothesis</a></h2> <p>This module is designed based on the asumption that the supplier invoice for a consigned product is received after the product is sold (delivered).</p> <a name="module-design"></a> <h2><a class="toc-backref" href="#id3">Module Design</a></h2> <p>The global approach in this module is to use a transit account to accrud the cost of delivered products.</p> <p>This transit account is most likely a current liability. It is credited when delivering a product.</p> <p>When the supplier invoice is received, the transit account is debited.</p> <a name="configuration"></a> <h2><a class="toc-backref" href="#id4">Configuration</a></h2> <p>In the form view of a product category, I find a new section <code>Automated Expense on Delivery</code>.</p> <img alt="static/description/product_category.png" src="static/description/product_category.png" /> <p>In the section, I find a box that allows to activate the feature for this category.</p> <p>The feature is only usable if:</p> <ul class="simple"> <li><code>Consignment</code> is checked</li> <li>The cost method is <code>Standard Price</code></li> <li>The inventory valuation is <code>Manual</code></li> </ul> <p>If I check the box, 3 new fields appear:</p> <ul class="simple"> <li>Journal</li> <li>Expense Account</li> <li>Transit Account</li> </ul> <img alt="static/description/product_category_automated_expense.png" src="static/description/product_category_automated_expense.png" /> <p>These fields are used for generating the journal entry when delivering a product from this category.</p> <a name="usage"></a> <h2><a class="toc-backref" href="#id5">Usage</a></h2> <p>I setup a product in the <code>Consigned Products</code> category.</p> <img alt="static/description/product_form.png" src="static/description/product_form.png" /> <p>When validating a delivery order for this product, a journal entry is created.</p> <img alt="static/description/delivery_order_done.png" src="static/description/delivery_order_done.png" /> <img alt="static/description/journal_entry.png" src="static/description/journal_entry.png" /> <p>I notice that the journal entry contains the journal and the expense and transit accounts defined on the category.</p> <a name="known-issues"></a> <h2><a class="toc-backref" href="#id6">Known Issues</a></h2> <a name="supplier-invoice"></a> <h3><a class="toc-backref" href="#id7">Supplier Invoice</a></h3> <p>There is for now no constraint or automation on the supplier invoice.</p> <p>The account selected for the consigned product on the invoice line should be the transit account.</p> <p>It is the responsibility of the user properly configure the system so that this account is automatically selected on the invoice.</p> <a name="standard-price"></a> <h3><a class="toc-backref" href="#id8">Standard Price</a></h3> <p>The standard price (cost) defined on the product is used to compute the expense when delivering the product.</p> <p>This price may be different from the actual unit price on the supplier invoice.</p> <p>There is no automation for balancing the transit account in case of an imbalance.</p> <a name="contributors"></a> <h2><a class="toc-backref" href="#id9">Contributors</a></h2> <ul class="simple"> <li>Numigi (tm) and all its contributors (<a class="reference external" href="https://bit.ly/numigiens">https://bit.ly/numigiens</a>)</li> </ul>