[ADD] eCommerce: Handling orders

Adding a page on handling orders for the eCommerce doc, and removing
older pages. Forward to master.

closes odoo/documentation#3766

Taskid: 3214065
X-original-commit: f6fa482087
Signed-off-by: Aarab Tom (toaa) <toaa@odoo.com>
This commit is contained in:
Tom Aarab (toaa) 2023-03-02 14:17:47 +00:00 committed by Donatienne Pirlot
parent 64fa68e188
commit 24f6c4c55e
41 changed files with 127 additions and 281 deletions

View File

@ -452,4 +452,4 @@ payment method... What best suit your needs.
- :doc:`payment_providers/razorpay`
- :doc:`payment_providers/sips`
- :doc:`payment_providers/stripe`
- :doc:`../websites/ecommerce/shopper_experience/payment_providers`
- :doc:`../websites/ecommerce/checkout_payment_shipping/payments`

View File

@ -143,4 +143,4 @@ orders and in your eCommerce catalog. To do so:
.. seealso::
* :doc:`currencies`
* :doc:`/applications/websites/ecommerce/maximizing_revenue/pricing`
* :doc:`/applications/websites/ecommerce/managing_products/price_management`

View File

@ -25,6 +25,4 @@ products and increase your average cart sizes.
ecommerce/managing_products
ecommerce/checkout_payment_shipping
ecommerce/taxes
ecommerce/shopper_experience
ecommerce/maximizing_revenue
ecommerce/ecommerce_management

View File

@ -0,0 +1,10 @@
:nosearch:
====================
eCommerce management
====================
.. toctree::
:titlesonly:
ecommerce_management/order_handling

View File

@ -0,0 +1,112 @@
==============
Order handling
==============
When a customer orders on your eCommerce, there are **three** record types required to be handle in
Odoo:
- :ref:`Sales orders <handling/sales>`;
- :ref:`Delivery orders <handling/delivery>`;
- :ref:`Invoices & legal requirements <handling/legal>`.
.. _handling/sales:
Sales orders
============
Order and payment status
------------------------
The first step when a customer adds a product to his cart is the creation of a quotation. Orders can
be managed either from the **Website** or :doc:`Sales </applications/sales/sales>` app. eCommerce
orders can automatically be assigned to a specific sales team by going to :menuselection:`Website
--> Configuration --> Settings`. In the **Shop - Checkout Process** section, select a
:guilabel:`Sales Team` or :guilabel:`Salesperson` to handle eCommerce orders.
.. image:: order_handling/handling-salesteam.png
:align: center
:alt: Assignment of online orders to a sales team or salesperson
Orders can be found under :menuselection:`Website --> eCommerce --> Orders/Unpaid Orders`. Each
order goes through a different status:
- **Quotation**: a new product is added to the cart, but the customer has *not* gone through the
checkout process yet;
- **Quotation sent**: the customer has gone through the checkout process and confirmed the order,
but the payment is not yet confirmed;
- **Order**: the customer has gone through the checkout process, confirmed the order, and the
payment is received.
.. image:: order_handling/handling-status.png
:align: center
:alt: Statuses of eCommerce orders
Abandoned cart
--------------
An **abandoned cart** represents an order for which the customer did **not finish** the checkout
confirmation process. For these orders, it is possible to send an **email reminder** to the
customer automatically. To enable that feature, go to :menuselection:`Website --> Configuration -->
Settings` and in the :guilabel:`Email & Marketing` section, enable :guilabel:`Automatically send
abandoned checkout emails`. Once enabled, you can set the **time-lapse** after which the email is
sent and customize the **email template** used.
.. note::
For abandoned cart emails, the customer must either have entered their contact details during the
checkout process; or be logged-in when they added the product to their cart.
.. _handling/delivery:
Delivery orders
===============
Delivery flow
-------------
Once a quotation has been confirmed, a delivery order is automatically created. The next step is to
process this delivery.
Packing eCommerce orders usually requires picking the product, preparing the packaging, printing the
shipping label(s) and shipping to the customer. Depending on the number of orders, strategy, or
resources, those steps can be considered as one or multiple actions in Odoo.
An automatic email can be sent to the customer when the transfer status in Odoo is “done”. To do so,
enable the feature in the settings of the
:doc:`Inventory </applications/inventory_and_mrp/inventory>` app.
.. note::
If customers are allowed to pay when picking up their order in stores or by wire transfer, the
quotation is **not** be confirmed and the stock is **not** be reserved. Orders must be confirmed
manually to reserve products in stock.
.. seealso::
- :doc:`/applications/inventory_and_mrp/inventory/shipping/operation/invoicing`
- :doc:`/applications/inventory_and_mrp/inventory/shipping/operation/labels`
- :doc:`/applications/inventory_and_mrp/inventory/shipping/operation/multipack`
Returns and refunds
-------------------
Customers can only return an order through an online form. It may not be possible to return products
depending on the return strategy or type of product.
Full refunds can be directly sent to customers from within the order interface. A refund-compatible
payment provider needs to be enabled first.
.. seealso::
- :doc:`/applications/sales/sales/products_prices/returns`
- :doc:`/applications/services/helpdesk/advanced/after_sales`
- :doc:`/applications/finance/payment_providers`
.. _handling/legal:
Invoice and legal requirements
==============================
The final step of an ecommerce order is to generate the invoice and send it to the customer.
Depending on the type of business (B2B or B2C), an invoice can either be generated automatically
(B2B) or on demand of the customer (B2C). This process can be automated if (and when) the online
payment is :ref:`confirmed <handling/sales>`.
To automate invoicing, go to :menuselection:`Website --> Configuration --> Settings` and in the
:guilabel:`Invoicing` section, enable :guilabel:`Automatic Invoice`.

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

View File

@ -1,12 +0,0 @@
:nosearch:
===================
Maximize my revenue
===================
.. toctree::
:titlesonly:
maximizing_revenue/reviews
maximizing_revenue/pricing
maximizing_revenue/promo_code

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

View File

@ -1,37 +0,0 @@
================================
Adapt prices to website visitors
================================
This section sheds light on pricing features found in the eCommerce app:
* force a price by geo-localization,
* let the customer choose the currency.
As a pre-requisite, check out how to managing product pricing:
:doc:`/applications/sales/sales/products_prices/prices/pricing`).
Geo-IP automatically applies the right price
============================================
Assign country groups to your pricelists. That way, visitors who aren't
logged in yet will get their own currency when landing on your website.
Once logged in, they get the pricelist matching their country.
Currency selector
=================
In the case that you sell in several currencies, you can let your customers choose
their own. Check the *Selectable* box to add the pricelist to the website drop-down menu, which
can be found in *Pricelists* under the *Products* menu, located in the Website application.
.. image:: pricing/website_pricelist_select.png
:align: center
:width: 50 %
.. seealso::
* :doc:`/applications/sales/sales/products_prices/prices/pricing`
* :doc:`/applications/sales/sales/products_prices/prices/currencies`
* :doc:`promo_code`

Binary file not shown.

Before

Width:  |  Height:  |  Size: 84 KiB

View File

@ -1,43 +0,0 @@
=======================================
How to create & share promotional codes
=======================================
Want to boost your sales for Xmas? Share promocodes through your marketing campaigns
and apply any kind of discounts.
Setup
=====
* Go to :menuselection:`Sales --> Settings` and choose
*Advanced pricing based on formula* for *Sale Price*.
* Go to :menuselection:`Website Admin --> Catalog --> Pricelists` and create a new
pricelist with the discount rule (see :doc:`pricing`).
Then enter a code.
.. image:: promo_code/promocode.png
:align: center
* Make the promocode field available on your *Shopping Cart* page (option in
*Customize* menu). Add a product to cart to reach it.
.. image:: promo_code/promocode_publish.png
:align: center
Once turned on you see a new section on the right side. On clicking *Apply* prices get
automatically updated in the cart.
.. image:: promo_code/promocode_web.png
:align: center
The promocode used by the customer is stored in the system so you can analyze the
performance of your marketing campaigns.
.. image:: promo_code/promocode_backend.png
:align: center
+ Show sales per pricelists...
.. seealso::
* :doc:`pricing`

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 54 KiB

View File

@ -1,59 +0,0 @@
===============================
How to enable comments & rating
===============================
Publishing and monitoring customer experience will help you gain the trust
of new customers and better engage with your community. In 2 clicks, allow
your customer to share their feedback!
.. image:: reviews/comment_post.png
:align: center
Setup
=====
Activate comments & rating from the *Customize* menu of the product web page.
.. image:: reviews/comment_setup.png
:align: center
.. note::
Visitors must log in to share their comments. Make sure they are able to
do so (see Portal documentation).
Review the posts in real time
=============================
Whenever a post is published, the product manager and all the product followers
get notified in their Inbox (*Discuss* menu).
.. image:: reviews/comment_new.png
:align: center
.. note::
By default the user who created the product is automatically set as follower.
Click the product name to open the detail form and review the comment (in the
product discussion thread).
.. image:: reviews/comment_inbox.png
:align: center
Moderate & unpublish
====================
You can easily moderate by using the chatter, either in the product detail form
or on the web page.
To unpublish the post, open the product web page and click the *Published* button
to turn it red (*Unpublished*).
.. image:: reviews/comment_unpublish.png
:align: center
..tip::
You can access the web page from the detail form by clicking the *Published*
smart button (and vice versa).
.. image:: reviews/comment_webpage.png
:align: center

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 124 KiB

View File

@ -1,11 +0,0 @@
:nosearch:
========
Get paid
========
.. toctree::
:titlesonly:
shopper_experience/payment_providers
shopper_experience/portal

View File

@ -1,62 +0,0 @@
=========================================
Manage orders paid with Payment Providers
=========================================
The moment a payment is officially authorized by a Payment Provider, Odoo *automatically* confirms
the order, which triggers the delivery. And, if you invoice based on ordered quantities, you are
requested to invoice the order, as well.
Lets take a closer look at how to manage orders paid with Payment Providers.
Checking the status of a payment
================================
To check the status of a payment, go to :menuselection:`Website --> Orders --> Orders`. Then, simply
click on the order you wish to check on.
Once you are on the Sales Order page, you will find the payment is confirmed with an automatic note
in the *Chatter*.
.. image:: payment_providers/chatter-transaction.png
:align: center
:alt: payment is confirmed in the chatter of sales order
If the user decides to create an invoice, the payment is directly reconciled. This note in
the *Chatter* includes a link to the Payment entry, which contains various details about the
transaction, along with a link to the related Journal Entry.
.. image:: payment_providers/transaction-info.png
:align: center
:alt: page with details surrounding the specific transaction
.. note:: Specific messages are provided to your customers for every
payment status whenever they are redirected to Odoo after the transaction.
To edit these messages, go to the *Messages* tab of the payment
method.
Automatically generate invoices at order
========================================
When the order is confirmed, you can also choose to have an invoice automatically issued
and paid. This fully-automated feature is designed for businesses that invoice
orders right away.
To do automatically generate invoices at order:
- Go to :menuselection:`Website --> Configuration --> Settings --> Invoicing`.
- Then, under the **Invoicing Policy** option, select *Invoice what is ordered*.
- Then activate *Automatic Invoices* and *Save*.
.. image:: payment_providers/automatic-invoice.png
:align: center
:alt: example of automatic invoice
Capture payment after the delivery
==================================
If the provider handling the payment is configured to capture amounts manually, the order is
confirmed, but the amount is kept on hold. Once the delivery is processed, you can capture the
payment from the related Sales Order.
.. seealso::
- :doc:`../../../finance/payment_providers`
- :ref:`Payment Providers: Place a hold on a card <payment_providers/features/manual_capture>`

View File

@ -1,38 +0,0 @@
===============================================
How customers can access their customer account
===============================================
It has never been so easy for your customers to access their
customer account. Forget endless signup forms,
Odoo makes it as easy as ABC.
They are suggested to sign up (name, email, password) when the order
is placed, and not before.
Indeed, nothing is more annoying than going through a signup process
before buying something.
Sign up
=======
The invitation to sign up shows up when the customer wants to visualize
the order from order confirmation email.
.. image:: portal/portal_odoo_signup.png
:align: center
Customer account
================
Once logged in the customer will access the account by clicking *My Account*
in the login dropdown menu.
.. image:: portal/portal_link.png
:align: center
THere they find all their history. The main address (billing) can also be modified.
.. image:: portal/portal_menu.png
:align: center
.. note::
If the customer is set as a contact of a company in your address book,
they will see all the documents whose the customer belongs to this company.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

View File

@ -1,13 +0,0 @@
:nosearch:
=============
Collect taxes
=============
.. toctree::
:titlesonly:
../../finance/accounting/taxation/taxes/default_taxes
../../finance/accounting/taxation/taxes/fiscal_positions
../../finance/accounting/taxation/taxes/taxes
../../finance/accounting/taxation/taxes/taxcloud

View File

@ -267,7 +267,7 @@ Then, go to :menuselection:`Website --> Products --> Pricelists` to create addit
You can also choose to have a pricelist available *only* on a specific website.
.. seealso::
:doc:`../../ecommerce/maximizing_revenue/pricing`.
:doc:`../../ecommerce/managing_products/price_management`.
.. image:: multi_website/multi_website07.png
:align: center

View File

@ -23,6 +23,7 @@ applications/websites/ecommerce/getting_started/product_page.rst applications/we
applications/websites/ecommerce/shopper_experience/payment_acquirer.rst applications/websites/ecommerce/shopper_experience/payment_providers.rst # payment_acquirer -> payment_providers
applications/websites/ecommerce/maximizing_revenue/upselling.rst applications/websites/ecommerce/products/cross_upselling.rst # /maximizing_revenue/upselling -> /products/cross_upselling
applications/websites/ecommerce/maximizing_revenue/cross_selling.rst applications/websites/ecommerce/products/cross_upselling.rst # /maximizing_revenue/cross_selling -> /products/cross_upselling
applications/websites/ecommerce/shopper_experience/payment_providers.rst applications/websites/ecommerce/checkout_payment_shipping/payments.rst # /shopper_experience/payment_providers -> /checkout_payment_shipping/payments
# developer/howtos