Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -11,50 +11,64 @@ Dropship to subcontractor

In the *Dropship to Subcontractor* workflow, a company purchases the components of a product from a
vendor, who delivers them directly to the subcontractor for manufacturing. The subcontractor then
ships the finished product back to the contracting company.
ships the finished product back to the company.

The following documentation covers how to configure a subcontracted product and trigger the
The following documentation covers how to configure a subcontracted product and walk through the
*Dropship to Subcontractor* workflow.

.. note::
This document uses the term *company* to refer to the internal company requiring subcontracted
goods, and the term *subcontractor* to refer to the external vendor handling the outsourced
production of the subcontracted goods.

.. _manufacturing/subcontracting_dropship/config:

Configuration
=============

To use the *Dropship to Subcontractor* workflow, contractors must first configure subcontracted
To use the *Dropship to Subcontractor* workflow, companies must first configure subcontracted
products with a :ref:`vendor pricelist <purchase/products/pricelist>` and a
:ref:`subcontracting-type BoM <manufacturing/subcontracting_dropship/config/bom-config>`. Each
component must then be configured with the appropriate :doc:`route
<../../inventory/shipping_receiving/daily_operations/use_routes>`.
:ref:`subcontracting-type BoM <manufacturing/subcontracting_dropship/config/bom-config>` specifying
the product's components. Companies must then :ref:`configure each component
<manufacturing/subcontracting_dropship/config/component-config>` by specifying a dropship vendor and
an appropriate route.

The pricelist allows the company to purchase the product from the vendor (subcontractor) through
a |PO|. The |BoM| allows the product to be manufactured externally by the subcontractor.
:doc:`Routes <../../inventory/shipping_receiving/daily_operations/use_routes>` are applied to each
component in order to be properly sent from the dropshipping vendor to the subcontractor.

.. important::
In order to configure product components for dropshipping, make sure that the *Dropshipping*
feature is enabled in the Odoo settings.

The pricelist allows the contracting company to purchase the product from the vendor (subcontractor)
through a |PO|, while the |BoM| allows the product to be manufactured externally by the
subcontractor. Routes are applied to each component in order to be properly sent from the
dropshipping vendor to the subcontractor.
To do so, navigate to either the **Inventory** or **Purchase** app, then click
:menuselection:`Configuration --> Settings`. Finally, in the *Logistics* section, enable the
:guilabel:`Dropshipping` setting.

.. _manufacturing/subcontracting_dropship/config/product-config:

Configure product vendor
------------------------

To configure a product's vendor for subcontractor dropshipping, navigate to
:menuselection:`Inventory app --> Products --> Products`, and select a product, or :doc:`create a
new one <../../inventory/product_management/configure/type>`.
To configure a product's vendor for dropship subcontracting, navigate to :menuselection:`Inventory
app --> Products --> Products`, and select a product, or :doc:`create a new one
<../../inventory/product_management/configure/type>`.

On the product form, click the *Purchase* tab and add the product's subcontractor as a vendor by
clicking :guilabel:`Add a line`. Select the subcontractor in the :guilabel:`Vendor` drop-down menu.

Then, enter the price of the product in the :guilabel:`Price` field.
Then, enter the price of the product in the :guilabel:`Unit Price` field.

Finally, set a :doc:`lead time <../../inventory/warehouses_storage/replenishment/lead_times>` for
the product in the :guilabel:`Delivery Lead Time` field to specify the number of days for the
subcontractor to receive components, produce the product, and deliver the finished good.
Finally, set a :doc:`Lead Time <../../inventory/warehouses_storage/replenishment/lead_times>` for
the product in the corresponding field to specify the number of days for the subcontractor to
receive components, produce the product, and deliver the finished good.

.. note::
Contractors do not need to configure manufacturing lead times on a |BoM|. Instead, provide only a
single *Delivery Lead Time* on the vendor pricelist, factoring in the duration for the
Companies do not need to configure manufacturing lead times on a |BoM|. Instead, provide only a
single :guilabel:`Lead Time` on the vendor pricelist, factoring in the duration for the
subcontractor to receive the components from the dropship vendor, manufacture the product, and
deliver the finished good back to the subcontractor.
deliver the finished good back to the company.

.. _manufacturing/subcontracting_dropship/config/bom-config:

Expand Down Expand Up @@ -85,8 +99,8 @@ Configure components
--------------------

When dropshipping to subcontractors, each component of a product must have a specified vendor and
have the *Dropship Subcontractor on Order* route enabled. This allows the components to be properly
dropshipped from the vendor to the subcontractor.
have the *Dropship* route enabled. This allows the components to be properly dropshipped from the
vendor to the subcontractor.

To specify a component's vendor, select the component's name in the :guilabel:`Components` tab, and
click the :icon:`oi-arrow-right` :guilabel:`(Internal link)` arrow.
Expand All @@ -98,12 +112,12 @@ click the :icon:`oi-arrow-right` :guilabel:`(Internal link)` arrow.
On the component product form, click the :guilabel:`Purchase` tab. Add a vendor by clicking
:guilabel:`Add a line`. Then, select the vendor in the :guilabel:`Vendor` field.

Next, to configure the route, click on the *Inventory* tab and select the :guilabel:`Dropship
Subcontractor on Order` route in the :guilabel:`Routes` section.
Next, to configure the route, click on the *Inventory* tab and select the :guilabel:`Dropship` route
in the *Routes* section.

Repeat the process for every component dropshipped to the subcontractor.

.. image:: subcontracting_dropship/dropship-inventory-routes.png
.. image:: subcontracting_dropship/dropship-subcontracting-routes.png
:alt: Route for a component to be dropshipped to a subcontractor.

.. _manufacturing/subcontracting-dropship/workflow:
Expand All @@ -115,17 +129,17 @@ The *Dropship to Subcontractor* workflow begins by :ref:`creating a PO
<manufacturing/subcontracting-dropship/workflow/create-po>` to purchase the product from the
subcontractor (1).

The contractor (Your Company) then confirms the *subcontractor* |PO| (2). This creates an |RfQ| to
purchase the components from the vendor, as well as a receipt to transfer the final product.
The company then confirms the *subcontractor* |PO| (2). This creates an |RfQ| to purchase the
components from the vendor, as well as a receipt to transfer the final product.

Next, the contractor :ref:`confirms the RfQ
Next, the company :ref:`confirms the RfQ
<manufacturing/subcontracting-dropship/workflow/confirm-rfq>`, turning it into a *vendor* |PO| and
creating a dropship order to send the components from the vendor to the subcontractor (3). Once the
contractor :ref:`validates the dropship
company :ref:`validates the dropship
<manufacturing/subcontracting-dropship/workflow/validate-dropship>` order, the subcontractor begins
to manufacture the final product with the components and ships it to the contractor when done.
to manufacture the final product with the components and ships it to the company when done.

Once the product has been produced and received, the contractor :ref:`validates the receipt
Once the product has been produced and received, the company :ref:`validates the receipt
<manufacturing/subcontracting-dropship/workflow/process-receipt>` (6) to trigger :ref:`inventory
moves <manufacturing/subcontracting-dropship/workflow/track-inventory>` from the subcontractor to
the company's stock (4, 5).
Expand All @@ -147,14 +161,14 @@ Select the subcontracted product in the :guilabel:`Product` field, and enter the
:guilabel:`Quantity` field.

After adding the product, the :guilabel:`Expected Arrival` field is updated with the finished
product's expected delivery date, as configured earlier with the vendor's *Delivery Lead Time*.
product's expected delivery date, as configured earlier with the vendor's *Lead Time*.

Finally, click :guilabel:`Confirm Order` to confirm the |PO|. A receipt is automatically created,
and a :icon:`fa-truck` :guilabel:`Receipt` smart button appears at the top of the form. In addition,
a separate |RfQ| is automatically created to purchase the components from the dropship vendor.

.. note::
This |RfQ| is **not** automatically linked to the |PO|. It is accessed separately on the
This |RfQ| is **not** automatically linked to the |PO|. It must be accessed separately on the
*Requests for Quotation* page.

.. _manufacturing/subcontracting-dropship/workflow/confirm-rfq:
Expand Down Expand Up @@ -202,7 +216,7 @@ received the components. The subcontractor then begins manufacturing the final p
Process receipt
---------------

After the subcontractor completes production, the finished product is shipped to the contractor.
After the subcontractor completes production, the finished product is shipped to the company.

To receive the product into stock, navigate to :menuselection:`Purchase app --> Orders --> Purchase
Orders`, and select the *subcontractor* |PO|.
Expand All @@ -221,14 +235,15 @@ Track inventory moves
---------------------

After validating a receipt, Odoo automatically generates inventory moves to track the movement of
subcontracted products between locations. To view these inventory moves, navigate to
:menuselection:`Inventory app --> Reporting --> Moves History`.
subcontracted products between :doc:`locations
<../../inventory/warehouses_storage/inventory_management/use_locations>`. To view these inventory
moves, navigate to :menuselection:`Inventory app --> Reporting --> Moves History`.

In the *Dropship to Subcontractor* workflow, product components are first sent from the vendors to a
dedicated *Subcontracting Location*. A :ref:`virtual location
<inventory/warehouses_storage/location-type>` called *Production* then consumes the components and
produces the finished good. Once produced, the good then moves back to the *Subcontracting Location*
before finally entering the contractor's stock when the receipt is validated.
dedicated location called *Subcontracting*. Another location called *Production* then consumes the
components and produces the finished good. Once produced, the good then moves back to the
*Subcontracting* location before finally entering the contractor's stock when the receipt is
validated.

.. image:: subcontracting_dropship/dropship-subcontracting-moves.png
:alt: Moves History for the dropship to subcontractor workflow.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.