[IMP] website/ecommerce: update customer accounts page

task-4459675

closes odoo/documentation#15088

Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Larissa Manderfeld (lman) <lman@odoo.com>
This commit is contained in:
lman-odoo
2025-09-04 11:04:37 +02:00
parent 70f6332d07
commit 2b4db03e84
5 changed files with 122 additions and 73 deletions

View File

@@ -923,7 +923,7 @@ Configuration
After configuring the Peruvian :ref:`electronic invoicing <peru-accounting-settings>` flow, complete
the following configurations for the **eCommerce** flow:
- :ref:`Client account registration <ecommerce/checkout/policy>`;
- :ref:`Client account registration <ecommerce/customer_accounts/checkout-access>`;
- :ref:`Automatic invoice <handling/legal>`;
- :doc:`../../websites/ecommerce/products`: Set the :guilabel:`Invoicing Policy` to
:guilabel:`Ordered quantities` and define the desired :guilabel:`Customer taxes`.

View File

@@ -120,53 +120,6 @@ Customers can reorder items from a previous sales order:
.. image:: checkout/cart-quick-reorder.png
:alt: Quick reorder button
.. _ecommerce/checkout/policy:
Checkout policy
===============
To allow customers to checkout as guests or force them to sign in/create an account, go to
:menuselection:`Website --> Configuration --> Settings`, scroll down to the :guilabel:`eCommerce`
section, and configure the :guilabel:`Sign in/up at checkout` setting. The following options are
available:
- :guilabel:`Optional`: Customers can check out as guests and register later via the order
confirmation email to track their order.
- :guilabel:`Disabled`: Customers can check out as guests without creating an account.
- :guilabel:`Mandatory`: Customers must sign in or create an account at the :ref:`Order summary
<ecommerce/checkout/review_order>` step to complete their purchase.
B2B access management
---------------------
To restrict checkout to selected B2B customers:
#. Go to :menuselection:`Website --> Configuration --> Settings` and enable the
:ref:`Mandatory <ecommerce/checkout/policy>` option in the :guilabel:`eCommerce`
section.
#. In the :guilabel:`General` section of the settings, set the :guilabel:`Customer Account` option
to :guilabel:`On invitation`.
#. Go to :menuselection:`Website --> eCommerce --> Customers`, switch to the :guilabel:`List` view,
and select the customers you wish to grant access to your :doc:`portal
<../../general/users/portal>`.
#. Click the :icon:`fa-cog` :guilabel:`Actions` button, then :guilabel:`Grant portal access`.
#. Review the selected customers in the :guilabel:`Portal Access Management` pop-up and click
:guilabel:`Grant Access`.
Once done, the relevant customers receive an email confirming their account creation, including
instructions on setting a password and activating their account.
.. note::
- You can revoke access or re-invite a customer using the related buttons in the
:guilabel:`Portal Access Management` pop-up.
- Users can only have one :doc:`portal access <../../general/users/portal>` per email.
- Settings are website-specific, so you could set up a B2C website that allows guest checkout and
a B2B website with mandatory sign-in.
.. seealso::
- :doc:`Customer accounts documentation <customer_accounts>`
- :doc:`Portal access documentation <../../general/users/portal>`
.. _ecommerce/checkout/steps:
Checkout steps
@@ -189,6 +142,11 @@ checkout options.
.. note::
Content added through building blocks is **specific** to each step.
.. tip::
Restrict access to the :ref:`shop <ecommerce/customer_accounts/shop-access>` and :ref:`checkout
<ecommerce/customer_accounts/checkout-access>` for specific customers, e.g., in a B2B business
setup.
.. _ecommerce/checkout/review_order:
Order summary

View File

@@ -2,42 +2,131 @@
Customer accounts
=================
Having customer accounts on an eCommerce allows customers to access all their documents from a
single place. To access their account, customers must be **logged-in** on the eCommerce website,
click on their **username** in the top-right corner of the screen, and click :guilabel:`My Account`.
From there, customers can access their :guilabel:`quotations`, :guilabel:`orders`,
:guilabel:`invoices`, etc.
Using customer accounts for an ecommerce shop enables you to :ref:`manage customers
<ecommerce/customer_accounts/account-creation>`, control access to the :ref:`shop
<ecommerce/customer_accounts/shop-access>`, the :ref:`checkout
<ecommerce/customer_accounts/checkout-access>`, or the :ref:`customer portal <portal/access>`,
and support both B2B and B2C operations.
After logging in, customers can access their :doc:`customer portal <../../general/users/portal>`
by clicking their username in the top-right corner of the screen and selecting :guilabel:`My
Account`. From there, they can view all their documents in one place, such as quotations, orders,
invoices, and more.
.. image:: customer_accounts/account-log.png
:align: center
:alt: Customer account log-in
.. note::
Customers can only have an account if the
:ref:`sign in/up at checkout <ecommerce/checkout/policy>` option allows for account creation.
:alt: Customer account access
.. tip::
Similarly to the rest of the website, the customer account page can be customized with **content
blocks** and other features through the **website builder**.
The customer account page can be customized with building blocks and other features through
the :doc:`website builder <../website/web_design>`.
.. seealso::
:doc:`/applications/general/users/portal`
.. _ecommerce/customer_accounts/account-creation:
Customer account creation
=========================
You can choose whether customer accounts and document access are available to everyone or restricted
to invited users only. To do so, go to :menuselection:`Website --> Configuration --> Settings`,
and navigate to the :guilabel:`General` section. Under :guilabel:`Customer Account`, select one
of the following options:
- :guilabel:`On invitation`: Customers can only create an account if the website owner sends them
an invitation.
- :guilabel:`Free sign up`: Every website visitor can create an account and sign in. They will
get access to the :doc:`portal <../../general/users/portal>` by default.
To send an email invitation to a customer:
- Go to :menuselection:`Website --> eCommerce --> Customers`.
- Select a customer or click :guilabel:`New` to create one, ensuring an :guilabel:`Email` address
is set.
- Click the :icon:`fa-cog` :guilabel:`(Actions)` icon next to the record's name at the top-left and
select :guilabel:`Grant portal access`.
- In the :guilabel:`Portal Access Management` pop-up, click :guilabel:`Grant Access` to send the
invitation.
.. tip::
To invite multiple customers at once, switch to the customers :icon:`oi-view-list`
:guilabel:`List` view, select several customers, click the :icon:`fa-cog` :guilabel:`Actions`
button, and select :guilabel:`Grant portal access`.
Once done, the customer(s) receive an email confirming their account creation, including
instructions on setting a password and activating their account.
.. note::
- When selecting the :guilabel:`Free sign up`, a clickable :guilabel:`Don't have an account?`
link appears under the login form on the website.
- The :guilabel:`On invitation` option is especially useful for B2B businesses that prefer
to keep :ref:`prices hidden <ecommerce/prices/hide-prices>` on the website and grant access
only to invited customers.
.. tip::
It is possible to configure a website form with a :guilabel:`Create a Customer` :ref:`action
<website/building_blocks/action>` to automatically create a customer record in the backend when
filled in.
Access restriction
==================
It is possible to allow or restrict the documents to which customers have access through the website
builder. Log in your **own** account with your Odoo database credentials, and go to
:menuselection:`Edit --> Customize`. From the website builder menu, enable or disable the documents
customers can have access to.
Once a customer account is created, it is still possible to adjust the access rights
either globally or for individual users:
.. image:: customer_accounts/account-documents.png
:align: center
:alt: Documents to which customers have access to from their account
- :ref:`Revoke access or re-invite a customer <portal/access>`
using the related buttons in the :guilabel:`Portal Access Management` pop-up.
- Restrict :ref:`access to the shop <ecommerce/customer_accounts/shop-access>`;
- Decide whether customers need to create an account to :ref:`complete the checkout
<ecommerce/customer_accounts/checkout-access>`.
.. tip::
It is also possible to define the types of documents customers have access to. To do so, click
your username in the upper-right corner of the website, select :guilabel:`My Account` and open
the :doc:`website builder <../website/web_design>`. On the :guilabel:`Style` tab, enable or
disable access to specific documents as needed.
.. _ecommerce/customer_accounts/shop-access:
Shop access
-----------
To restrict access to the entire online shop for users who are not logged-in, go to
:menuselection:`Website --> Configuration --> Settings`, scroll to the :guilabel:`eCommerce` section
and under :guilabel:`Ecommerce Access`, select :guilabel:`Logged in users`. Select :guilabel:`All
users` if the shop should be visible to every website visitor.
.. tip::
To restrict access to the shop's pricing, use :ref:`pricelists <ecommerce/prices/pricelists>`
with :ref:`country groups <ecommerce/prices/country-groups>`.
.. _ecommerce/customer_accounts/checkout-access:
Checkout access
---------------
To allow customers to checkout as guests or force them to sign in/create an account, go to
:menuselection:`Website --> Configuration --> Settings`, scroll down to the :guilabel:`eCommerce`
section, and configure the :guilabel:`Sign in/up at checkout` setting. The following options are
available:
- :guilabel:`Optional`: Customers can check out as guests and register later via the order
confirmation email to track their order.
- :guilabel:`Disabled`: Customers can checkout as guests without creating an account.
- :guilabel:`Mandatory`: Customers must sign in or create an account at the
:ref:`Order summary <ecommerce/checkout/review_order>` step to complete their purchase.
.. note::
- Settings are specific to each website, allowing you to configure a B2C website with guest
checkout and a B2B website that requires customers to sign in.
- To use the :ref:`wishlist <ecommerce/products/wishlists>` feature, customers must
create an account to save their favorite items for later.
Multi-website account
=====================
If you own multiple websites, you can make customer accounts available across **all** websites.
Then, the customer only needs one account. To do so, go to :menuselection:`Website --> Configuration
--> Settings --> Privacy section`, and enable :guilabel:`Shared Customer Accounts`.
When managing multiple websites, it is possible to make customer accounts available across *all*
websites, allowing each customer to use a single account. To do so, go to :menuselection:`Website
--> Configuration --> Settings`, in the :guilabel:`General` section, enable the :guilabel:`Shared
Customer Accounts` option.
.. note::
When operating both B2B and B2C online shops, it's recommended to use separate websites for each
business model.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.4 KiB

View File

@@ -58,6 +58,8 @@ in your database, if applicable. To add a form to a website page, drag and drop
.. image:: building_blocks/form-block.png
:alt: Example of a form block
.. _website/building_blocks/action:
Action
~~~~~~