[IMP] inventory: update landed costs doc

closes odoo/documentation#8669

X-original-commit: db6288f9a1
Signed-off-by: Brandon Seltenrich (brse) <brse@odoo.com>
This commit is contained in:
Brandon Seltenrich (BRSE) 2024-04-04 11:27:51 -04:00
parent 210effcd22
commit 6b13865e4d
12 changed files with 145 additions and 52 deletions

View File

@ -1,81 +1,174 @@
======================================================= ============
Integrating additional costs to products (landed costs) Landed costs
======================================================= ============
.. _inventory/reporting/landed_costs: .. _inventory/reporting/landed_costs:
The landed cost feature in Odoo allows the user to include additional costs (shipment, insurance, .. |RfQ| replace:: :abbr:`RfQ (Request for Quotation)`
customs duties, etc.) into the cost of the product. .. |PO| replace:: :abbr:`PO (Purchase Order)`
.. |FIFO| replace:: :abbr:`FIFO (First In First Out)`
.. |AVCO| replace:: :abbr:`AVCO (Average Costing)`
When shipping products to customers, the landed cost is the total price of a product or shipment,
including all expenses associated with shipping the product.
In Odoo, the *Landed Costs* feature is used to take additional costs into account when calculating
the valuation of a product. This includes the cost of shipment, insurance, customs duties, taxes,
and other fees.
Configuration Configuration
============= =============
First, go to :menuselection:`Inventory --> Configuration --> Settings --> Valuation` and activate To add landed costs to products, the *Landed Costs* feature must first be enabled. To enable this
the :guilabel:`Landed Costs` feature. Odoo also gives the option to set a :guilabel:`Default feature, navigate to :menuselection:`Inventory app --> Configuration --> Settings`, and scroll to
Journal` in which the landed costs accounting entries will be recorded. the :guilabel:`Valuation` section.
.. image:: integrating_landed_costs/landed-costs-setting.png Tick the checkbox next to the :guilabel:`Landed Costs` option, and click :guilabel:`Save` to save
changes.
Once the page refreshes, a new :guilabel:`Default Journal` field appears below the :guilabel:`Landed
Costs` feature in the :guilabel:`Valuation` section.
Click the :guilabel:`Default Journal` drop-down menu to reveal a list of accounting journals. Select
a journal for which all accounting entries related to landed costs should be recorded.
.. image:: integrating_landed_costs/integrating-landed-costs-enabled-setting.png
:align: center :align: center
:alt: Activate the landed cost feature in Inventory settings. :alt: Landed Costs feature and resulting Default Journal field in the Inventory settings.
Add costs to products Create landed cost product
==========================
For charges that are consistently added as landed costs, a landed cost product can be created in
Odoo. This way, a landed cost product can be quickly added to a vendor bill as an invoice line,
instead of having to be manually entered every time a new vendor bill is created.
To do this, create a new product by going to :menuselection:`Inventory app --> Products -->
Products`, and clicking :guilabel:`New`.
Assign a name to the landed cost product in the :guilabel:`Product Name` field (i.e. `International
Shipping`). In the :guilabel:`Product Type` field, click the drop-down menu, and select
:guilabel:`Service` as the :guilabel:`Product Type`.
.. important::
Landed cost products **must** have their :guilabel:`Product Type` set to :guilabel:`Service`.
Click the :guilabel:`Purchase` tab, and tick the checkbox next to :guilabel:`Is a Landed Cost` in
the :guilabel:`Vendor Bills` section. Once ticked, a new :guilabel:`Default Split Method` field
appears below it, prompting a selection. Clicking that drop-down menu reveals the following options:
- :guilabel:`Equal`: splits the cost equally across each product included in the receipt, regardless
of the quantity of each.
- :guilabel:`By Quantity`: splits the cost across each unit of all products in the receipt.
- :guilabel:`By Current Cost`: splits the cost according to the cost of each product unit, so a
product with a higher cost receives a greater share of the landed cost.
- :guilabel:`By Weight`: splits the cost, according to the weight of the products in the receipt.
- :guilabel:`By Volume`: splits the cost, according to the volume of the products in the receipt.
.. image:: integrating_landed_costs/integrating-landed-costs-landed-cost-product.png
:align: center
:alt: Is a Landed Cost checkbox and Default Split Method on service type product form.
When creating new vendor bills, this product can be added as an invoice line as a landed cost.
.. important::
To apply a landed cost on a vendor bill, the products included in the original |PO| **must**
belong to a *Product Category* with its *Force Removal Strategy* set to |FIFO|, and its *Costing
Method* set to |AVCO|.
Create purchase order
===================== =====================
Receive the vendor bill Navigate to :menuselection:`Purchase app --> New` to create a new request for quotation (RfQ). In
----------------------- the :guilabel:`Vendor` field, add a vendor to order products from. Then, click :guilabel:`Add a
product`, under the :guilabel:`Products` tab, to add products to the |RfQ|.
After a vendor fulfills a purchase order and sends a bill, click :guilabel:`Create Bill` on the Once ready, click :guilabel:`Confirm Order` to confirm the order. Then, click :guilabel:`Receive
purchase order to create a vendor bill in Odoo. If the vendor bill includes landed costs, such as Products` once the products have been received, followed by :guilabel:`Validate`.
custom duties, tick the box in the :guilabel:`Landed Costs` column on the vendor bill invoice line.
.. image:: integrating_landed_costs/landed-costs-field-vendor-bill.png Create vendor bill
------------------
Once the vendor fulfills the |PO| and sends a bill, a vendor bill can be created from the |PO| in
Odoo.
Navigate to the :menuselection:`Purchase app`, and click into the |PO| for which a vendor bill
should be created. Then, click :guilabel:`Create Bill`. This opens a new :guilabel:`Vendor Bill` in
the :guilabel:`Draft` stage.
In the :guilabel:`Bill Date` field, click the line to open a calendar popover menu, and select the
date on which this draft bill should be billed.
Then, under the :guilabel:`Invoice Lines` tab, click :guilabel:`Add a line`, and click the drop-down
menu in the :guilabel:`Product` column to select the previously created landed cost product. Click
the :guilabel:`Save manually (cloud with arrow)` icon to update the draft bill.
.. image:: integrating_landed_costs/integrating-landed-costs-checkboxes.png
:align: center :align: center
:alt: Enable Landed Costs option on vendor bill line. :alt: Landed Costs column checkboxes for product and landed cost.
For charges that are always landed costs, create a landed cost product in Odoo. That way, the In the :guilabel:`Landed Costs` column, the product ordered from the vendor does **not** have its
landed cost product can be quickly added to the vendor bill as an invoice line instead of manually checkbox ticked, while the landed cost product's checkbox **is** ticked. This differentiates landed
entering the landed cost information every time a vendor bill comes in. costs from all other costs displayed on the bill.
First, create a new product in :menuselection:`Inventory --> Products --> Products --> Create`. Additionally, at the top of the form, a :guilabel:`Create Landed Costs` button appears.
Next, name the landed cost product. Then, set the :guilabel:`Product Type` to :guilabel:`Service`.
A landed cost product must always be a service product type. After that, go to the
:guilabel:`Purchase` tab and check the box next to :guilabel:`Is a Landed Cost`. Finally, click
:guilabel:`Save` to finish creating the landed cost product.
If this product is always a landed cost, you can also define it on the product and avoid having to .. image:: integrating_landed_costs/integrating-landed-costs-create-button.png
tick the box on each vendor bill.
.. image:: integrating_landed_costs/product-is-landed-cost.png
:align: center :align: center
:alt: Option to define a product as a landed cost. :alt: Create Landed Costs button on vendor bill.
Once the landed cost is added to the vendor bill (either by checking the :guilabel:`Landed Cost` Add landed cost
option on the invoice line or adding a landed cost product to the bill), click the ===============
:guilabel:`Create Landed Costs` button at the top of the bill. Odoo automatically creates a landed
cost record with the set landed cost pre-filled in the :guilabel:`Additional Costs` product lines.
From here, decide which picking the additional costs apply to by clicking :guilabel:`Edit` and
selecting the picking reference number from the :guilabel:`Transfers` drop-down menu. Finally,
click :guilabel:`Save`.
.. image:: integrating_landed_costs/warehouse-transfer-landed-costs.png Once a landed cost is added to the vendor bill, click :guilabel:`Create Landed Costs` at the top of
the vendor bill.
Doing so automatically creates a landed cost record, with a set landed cost pre-filled in the
product line in the :guilabel:`Additional Costs` tab.
From the :guilabel:`Landed Cost` form, click the :guilabel:`Transfers` drop-down menu, and select
which transfer the landed cost belongs to.
.. image:: integrating_landed_costs/integrating-landed-costs-transfers-menu.png
:align: center :align: center
:alt: Use a warehouse transfer to cover a landed cost in the accounting journal. :alt: Landed cost form with selected receipt transfer.
After setting the picking, click :guilabel:`Compute` on the landed cost record. Then, go to the .. tip::
:guilabel:`Valuation Adjustments` tab to see the impact of the landed costs. Finally, click In addition to creating landed costs directly from a vendor bill, landed cost records can *also*
:guilabel:`Validate` to post the landed cost entry to the accounting journal. be created by navigating to :menuselection:`Inventory app --> Operations --> Landed Costs`, and
clicking :guilabel:`New`.
The user can access the journal entry that has been created by the landed cost by clicking on the After setting the picking from the :guilabel:`Transfers` drop-down menu, click :guilabel:`Compute`
:guilabel:`Journal Entry`. (at the bottom of the form, under the :guilabel:`Total:` cost).
Click the :guilabel:`Valuation Adjustments` tab to see the impact of the landed costs. The
:guilabel:`Original Value` column lists the original price of the |PO|, the :guilabel:`Additional
Landed Cost` column displays the landed cost, and the :guilabel:`New Value` displays the sum of the
two, for the total cost of the |PO|.
Once ready, click :guilabel:`Validate` to post the landed cost entry to the accounting journal.
This causes a :guilabel:`Valuation` smart button to appear at the top of the form. Click the
:guilabel:`Valuation` smart button to open a :guilabel:`Stock Valuation` page, with the product's
updated valuation listed.
.. note:: .. note::
The product that the landed cost is applied to must have a product category set to a :abbr:`FIFO For a :guilabel:`Valuation` smart button to appear upon validation, the product's
(First In, First Out)` or an :abbr:`AVCO (Average Costing)` method. :guilabel:`Product Type` **must** be set to :guilabel:`Storable`.
.. image:: integrating_landed_costs/landed-cost-journal-entry.png To view the valuation of *every* product, including landed costs, navigate to
:align: center :menuselection:`Inventory app --> Reporting --> Valuation`.
:alt: Landed cost journal entry
.. note:: .. note::
Landed cost records can also be directly created in :menuselection:`Inventory --> Operations --> Each journal entry created for a landed cost on a vendor bill can be viewed in the *Accounting*
Landed Costs`, it is not necessary to create a landed cost record from the vendor bill. app.
To locate these journal entries, navigate to :menuselection:`Accounting app --> Accounting -->
Journal Entries`, and locate the correct entry, by number (i.e. `PBNK1/2024/XXXXX`).
Click into the journal entry to view the :guilabel:`Journal Items`, and other information about
the entry.
.. image:: integrating_landed_costs/integrating-landed-costs-journal-entry.png
:align: center
:alt: Journal Entry form for landed cost created from vendor bill.