[IMP] sales: updated amazon order management
closes odoo/documentation#6363 Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
This commit is contained in:
parent
a61189725a
commit
b01133bfef
@ -1,131 +1,174 @@
|
||||
============================
|
||||
Manage Amazon orders in Odoo
|
||||
============================
|
||||
=======================
|
||||
Amazon order management
|
||||
=======================
|
||||
|
||||
Synchronization of orders
|
||||
=========================
|
||||
Order synchronization
|
||||
=====================
|
||||
|
||||
Orders are automatically fetched from Amazon, and synchronized in Odoo, at regular intervals.
|
||||
|
||||
Orders are automatically fetched from Amazon and synchronized in Odoo at regular intervals.
|
||||
The synchronization is based on the Amazon status: only orders whose status has changed since the
|
||||
last synchronization are fetched from Amazon. For **FBA** (Fulfilled by Amazon), only **Shipped**
|
||||
and **Canceled** orders are fetched. For **FBM** (Fulfilled by Merchant), the same is done for
|
||||
**Unshipped** and **Canceled** orders. For each synchronized order, a sales order and a customer are
|
||||
created in Odoo if they are not yet registered.
|
||||
last synchronization are fetched from Amazon. This includes changes on either end (Amazon or Odoo).
|
||||
|
||||
When an order is canceled in Amazon and was already synchronized in Odoo, the corresponding sales
|
||||
order is automatically canceled in Odoo.
|
||||
For *FBA* (Fulfilled by Amazon), only *Shipped* and *Canceled* orders are fetched.
|
||||
|
||||
For *FBM* (Fulfilled by Merchant), the same is done for *Unshipped* and *Canceled* orders. For each
|
||||
synchronized order, a sales order and customer are created in Odoo (if the customer is not already
|
||||
registered in the database).
|
||||
|
||||
.. note::
|
||||
To force the synchronization of an order whose status has not changed since the last
|
||||
synchronization, activate the :ref:`developer mode <developer-mode>`, navigate to your Amazon
|
||||
account and modify the date under :menuselection:`Orders Follow-up --> Last Order Sync`. Pick a
|
||||
date anterior to the last status change of the order that you wish to synchronize and save.
|
||||
When an order is canceled in Amazon, and was already synchronized in Odoo, the corresponding
|
||||
sales order is automatically canceled in Odoo.
|
||||
|
||||
Force synchronization
|
||||
=====================
|
||||
|
||||
In order to force the synchronization of an order, whose status has **not** changed since the
|
||||
previous synchronization, start by activating the :ref:`developer mode <developer-mode>`. This
|
||||
includes changes on either end (Amazon or Odoo).
|
||||
|
||||
Then, navigate to the Amazon account in Odoo (:menuselection:`Sales app --> Configuration -->
|
||||
Settings --> Connectors --> Amazon Sync --> Amazon Accounts`), and modify the date under
|
||||
:menuselection:`Orders Follow-up --> Last Order Sync`.
|
||||
|
||||
Be sure to pick a date that occurs prior to the last status change of the desired order to
|
||||
synchronize and save. This will ensure synchronization occurs correctly.
|
||||
|
||||
|
||||
.. tip::
|
||||
To synchronize immediately the orders of your Amazon account switch to :ref:`developer mode
|
||||
<developer-mode>`, head to your Amazon account and click on **SYNC ORDERS**. The same can be done
|
||||
with pickings by clicking on **SYNC PICKINGS**.
|
||||
To immediately synchronize the orders of an Amazon account, switch to :ref:`developer mode
|
||||
<developer-mode>`, head to the Amazon account in Odoo, and click :guilabel:`Sync Orders`. The
|
||||
same can be done with pickings by clicking :guilabel:`Sync Pickings`.
|
||||
|
||||
Manage deliveries in FBM
|
||||
========================
|
||||
|
||||
When a **FBM** (Fulfilled by Merchant) order is synchronized in Odoo, a picking is created along
|
||||
with the sales order and the customer. You can either ship all the ordered products to your customer
|
||||
at once or ship products partially by using backorders.
|
||||
Whenever an FBM (Fulfilled by Merchant) order is synchronized in Odoo, a picking is instantly
|
||||
created in the *Inventory* app, along with a sales order and customer record. Then, decide to either
|
||||
ship all the ordered products to the customer at once, or ship products partially using backorders.
|
||||
|
||||
When a picking related to the order is confirmed, a notification is sent to Amazon who will, in
|
||||
turn, notify the customer that the order (or a part of it) is on its way.
|
||||
When a picking related to the order is confirmed, a notification is then sent to Amazon, who, in
|
||||
turn, notifies the customer that the order (or a part of it) is on its way.
|
||||
|
||||
.. important::
|
||||
Amazon requires to provide a tracking reference with each delivery. You'll need to assign a
|
||||
carrier. If the carrier doesn't automatically provide a tracking reference, you'll need to set
|
||||
one manually. This concerns all marketplaces.
|
||||
Amazon requires users to provide a tracking reference with each delivery. This is needed to
|
||||
assign a carrier.
|
||||
|
||||
If the carrier doesn't automatically provide a tracking reference, one must be set manually. This
|
||||
rule applies to all Amazon marketplaces.
|
||||
|
||||
.. tip::
|
||||
- If your chosen carrier isn't one supported by Odoo, you can still create a carrier bearing its
|
||||
name (e.g. create a carrier named `Colissimo`). This name is case insensitive, but be careful
|
||||
about typos, as Amazon won't recognize them.
|
||||
- Create a delivery carrier named `Self Delivery` to inform Amazon that you make your own
|
||||
deliveries. You still have to enter a tracking reference.
|
||||
- Keep in mind that the customer is notified by email about the delivery, and the carrier and
|
||||
tracking reference are displayed in the email to the customer.
|
||||
If the chosen carrier isn't supported by Odoo, a carrier with the same name can still be created
|
||||
(e.g. create a carrier named `easyship`). The name used is **not** case sensitive, but be mindful
|
||||
to avoid typos. If there are typos, Amazon will **not** recognize them. Next, create a delivery
|
||||
carrier named `Self Delivery` to inform Amazon that the user will make the deliveries. Even with
|
||||
this route, a tracking reference still **must** be entered. Remember, the customer is notified by
|
||||
email about the delivery, and the carrier, along with the tracking reference, are displayed in
|
||||
the email to the customer.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`/applications/inventory_and_mrp/inventory/shipping_receiving/setup_configuration/third_party_shipper`
|
||||
:doc:`../../../inventory_and_mrp/inventory/shipping_receiving/setup_configuration/third_party_shipper`
|
||||
|
||||
Follow deliveries in FBA
|
||||
========================
|
||||
|
||||
When a **FBA** (Fulfilled by Amazon) order is synchronized in Odoo, a stock move is recorded for
|
||||
each sales order item so that it is saved in your system. Inventory managers can find such moves
|
||||
in :menuselection:`Inventory --> Reporting --> Product Moves`. They pick up products in a specific
|
||||
inventory location called **Amazon**. This location represents your stock in Amazon's warehouses
|
||||
and allows you to manage the stock of your products under the FBA program.
|
||||
When an FBA (Fulfilled by Amazon) order is synchronized in Odoo, a stock move is recorded in the
|
||||
*Inventory* app for each sales order item. That way, it's saved in the system.
|
||||
|
||||
Inventory managers can access these stock moves by navigating to :menuselection:`Inventory app -->
|
||||
Reporting --> Moves History`.
|
||||
|
||||
For FBA orders, the stock move is automatically created in Odoo by the Amazon connector, thanks to
|
||||
the shipping status of Amazon. When sending new products to Amazon, the user should manually create
|
||||
a picking (delivery order) to transfer these products from their warehouse to the Amazon location.
|
||||
|
||||
.. tip::
|
||||
To follow your Amazon (FBA) stock in Odoo, you can make an inventory adjustment after
|
||||
replenishing it. You can also trigger an automated replenishment from reordering rules on the
|
||||
Amazon location.
|
||||
To follow *Amazon (FBA)* stock in Odoo, make an inventory adjustment after replenishing stock. An
|
||||
automated replenishment from reordering rules can also be triggered on the Amazon location.
|
||||
|
||||
.. tip::
|
||||
The Amazon location is configurable by Amazon account managed in Odoo. All accounts of the same
|
||||
company use the same location by default. It is however possible to follow the stock by
|
||||
marketplace. First, remove the marketplace for which you want to follow the stock separately from
|
||||
the list of synchronized marketplaces. Then, create another registration for this account and
|
||||
remove all marketplaces, except the one to isolate from the others. Finally, assign another stock
|
||||
location to the second registration of your account.
|
||||
The Amazon location is configurable by accessing the Amazon account managed in Odoo. To access
|
||||
Amazon accounts in Odoo navigate to :menuselection:`Sales app --> Configuration --> Settings -->
|
||||
Connectors --> Amazon Sync --> Amazon Accounts`.
|
||||
|
||||
Issue invoices and register payments
|
||||
====================================
|
||||
All accounts of the same company use the same Amazon location, by default. However, it is possible
|
||||
to follow the stock filtered by marketplace.
|
||||
|
||||
To do that, first remove the marketplace, where the desired stock to follow separately can be found,
|
||||
from the list of synchronized marketplaces, which can be found by navigating to
|
||||
:menuselection:`Sales app --> Configuration --> Settings --> Connectors --> Amazon Sync --> Amazon
|
||||
Accounts`.
|
||||
|
||||
Next, create another registration for this account, and remove all marketplaces--- **except** the
|
||||
marketplace this is desired to be isolated from the others.
|
||||
|
||||
Lastly, assign another stock location to the second registration of the account.
|
||||
|
||||
Invoice and register payments
|
||||
=============================
|
||||
|
||||
Issue invoices
|
||||
--------------
|
||||
|
||||
Sending invoices to Amazon customers directly from Odoo is not feasible due to Amazon's policy of
|
||||
not sharing customer email addresses. Instead, it is possible to manually upload the invoices
|
||||
generated on Odoo to the Amazon backend.
|
||||
Due to Amazon's policy of not sharing customer email addresses, it is **not** possible to send
|
||||
invoices directly to Amazon customers from Odoo. However, it **is** possible to manually upload the
|
||||
generated invoices from Odoo to the Amazon back-end.
|
||||
|
||||
In addition, for your B2B clients, it is currently required to manually retrieve VAT numbers from
|
||||
the Amazon backend before creating the invoice in Odoo.
|
||||
Additionally, for B2B clients, it is currently required to manually retrieve VAT numbers from the
|
||||
Amazon back-end **before** creating an invoice in Odoo.
|
||||
|
||||
.. note::
|
||||
For :doc:`TaxCloud <../../../finance/accounting/taxes/taxcloud>` users: invoices created from
|
||||
Amazon sales orders are **not** synchronized with TaxCloud, since Amazon already includes them in
|
||||
its own tax report to TaxCloud. (decommissioning TaxCloud integration in Odoo 17+)
|
||||
its own tax report to TaxCloud.
|
||||
|
||||
.. warning::
|
||||
TaxCloud integration will be decommissioned in Odoo 17+.
|
||||
|
||||
Register payments
|
||||
-----------------
|
||||
|
||||
As customers pay Amazon as an intermediary, creating a dedicated *Bank* journal (for example, named
|
||||
`Amazon payments`) with a dedicated *Bank and Cash* intermediary account is recommended.
|
||||
Since customers pay Amazon as an intermediary, creating a dedicated *Bank* journal (e.g. named
|
||||
`Amazon Payments`), with a dedicated *Bank and Cash* intermediary account is recommended.
|
||||
|
||||
In addition, as Amazon makes a single monthly payment, selecting all the invoices linked to a single
|
||||
payment is necessary when registering payments. Use the dedicated `Amazon payments`
|
||||
:guilabel:`Journal` and select :guilabel:`Batch Deposit` as the :guilabel:`Payment Method`. Then,
|
||||
select all the payments generated and click :menuselection:`Actions --> Create batch payment -->
|
||||
Validate`.
|
||||
Additionally, as Amazon makes a single monthly payment, selecting all the invoices linked to a
|
||||
single payment is necessary when registering payments.
|
||||
|
||||
To do that, use the appropriate :guilabel:`Journal` dedicated to Amazon payments, and select
|
||||
:guilabel:`Batch Deposit` as the :guilabel:`Payment Method`.
|
||||
|
||||
Then, select all the generated payments, and click :menuselection:`Actions --> Create batch payment
|
||||
--> Validate`.
|
||||
|
||||
.. tip::
|
||||
The same can be done with vendor bills from Amazon dedicated to commissions. When the balance is
|
||||
received in the bank account at the end of the month and the banks statements are recorded,
|
||||
credit the Amazon intermediary account by the amount received.
|
||||
This same action can be performed with vendor bills from Amazon dedicated to commissions.
|
||||
|
||||
Follow your Amazon sales in sales reporting
|
||||
===========================================
|
||||
When the balance is received in the bank account at the end of the month, and the bank statements
|
||||
are recorded, credit the Amazon intermediary account by the amount received.
|
||||
|
||||
As a sales team is set on your account under the tab **Order Follow-up**, this helps you give quick
|
||||
glances at the figures in just a few clicks in Sales reporting. By default, your account's sales
|
||||
team is shared between all of your company's accounts.
|
||||
Follow Amazon sales in sales reporting
|
||||
======================================
|
||||
|
||||
If you wish, you can change the sales team on your account for another to perform a separate
|
||||
On the Amazon account profile in Odoo , a sales team is set under the :guilabel:`Order Follow-up`
|
||||
tab.
|
||||
|
||||
This gives quick access to important metrics related to sales reporting. By default, the Amazon
|
||||
account's sales team is shared between all of the company's accounts.
|
||||
|
||||
If desired, the sales team on the account can be changed for another, in order to perform a separate
|
||||
reporting for the sales of this account.
|
||||
|
||||
.. tip::
|
||||
It is also possible to perform reporting on a per-marketplace basis in a similar fashion. First,
|
||||
remove the marketplace you wish to track separately from the list of synchronized marketplaces.
|
||||
Then, create another registration for this account and remove all marketplaces, except the one to
|
||||
isolate from the others. Finally, assign another sales team to one of the two registrations of
|
||||
your account.
|
||||
It is also possible to perform reporting on a per-marketplace basis.
|
||||
|
||||
First, remove the desired marketplace from the list of synchronized marketplaces.
|
||||
|
||||
To access the list of synchronized marketplaces in Odoo, navigate to :menuselection:`Sales app
|
||||
--> Configuration --> Settings --> Connectors --> Amazon Sync --> Amazon Accounts`.
|
||||
|
||||
Then, create another registration for this account, and remove all other marketplaces **except**
|
||||
the one to isolate.
|
||||
|
||||
Lastly, assign another sales team to one of the two registrations of the account.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`features`
|
||||
|
Loading…
Reference in New Issue
Block a user