From b01133bfeffb74776e9d656f222c0ab21e483502 Mon Sep 17 00:00:00 2001 From: "KC (ksc)" Date: Wed, 8 Nov 2023 13:10:10 -0800 Subject: [PATCH] [IMP] sales: updated amazon order management closes odoo/documentation#6363 Signed-off-by: Zachary Straub (zst) --- .../sales/sales/amazon_connector/manage.rst | 201 +++++++++++------- 1 file changed, 122 insertions(+), 79 deletions(-) diff --git a/content/applications/sales/sales/amazon_connector/manage.rst b/content/applications/sales/sales/amazon_connector/manage.rst index 7c40c2d07..270171a15 100644 --- a/content/applications/sales/sales/amazon_connector/manage.rst +++ b/content/applications/sales/sales/amazon_connector/manage.rst @@ -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 `, 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 `. 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 - `, 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 + `, 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`