@@ -26,13 +26,13 @@ Choosing the displayed price tax usually depends on a country's regulations or t
2626:menuselection: `Website --> Configuration --> Settings `, select the website, scroll down to the
2727:guilabel: `eCommerce ` section, and under :guilabel: `Display Product Prices ` select between:
2828
29- - :guilabel: `Tax Excluded `: the price displayed on the website is tax-excluded, and the tax is
30- computed at the :ref: `order summary <ecommerce/checkout/review_order >` step;
31- - :guilabel: `Tax Included `: the price displayed on the website is tax-included.
29+ - :guilabel: `Tax Excluded `: The price displayed on the website is tax-excluded, and the tax is
30+ computed at the :ref: `order summary <ecommerce/checkout/review_order >` step.
31+ - :guilabel: `Tax Included `: The price displayed on the website is tax-included.
3232
3333.. note ::
34- This setting is website-specific and can therefore be configured independently for every
35- website in the database.
34+ This setting is website-specific and can therefore be configured independently for every website
35+ in the database.
3636
3737.. tip ::
3838 - Switch the :ref: `Tax indication <ecommerce/products/product-presentation >` toggle on in the
@@ -51,21 +51,22 @@ To display a :doc:`price per unit
5151</applications/inventory_and_mrp/inventory/product_management/configure/uom>` alongside the sales
5252price on the product page, follow these steps:
5353
54- #. Go to :menuselection: `Website --> Configuration --> Settings `, scroll to the
55- :guilabel: `eCommerce ` section, and enable :guilabel: `Product Reference Price `.
56- #. :ref: `Navigate to the product form <ecommerce/products/create-products >`.
57- #. Set the product's :guilabel: `Sales Price ` and select the unit (e.g., :guilabel: `Units `).
58- #. In the :guilabel: `Base Unit Count ` field, enter the number of units in the product, then
59- select the relevant unit from the dropdown list.
54+ Go to :menuselection: `Website --> Configuration --> Settings `, scroll to the :guilabel: `eCommerce `
55+ section, and enable :guilabel: `Product Reference Price `. :ref: `Navigate to the product form
56+ <ecommerce/products/create-products>`.
57+
58+ Set the product's :guilabel: `Sales Price ` and select the unit (e.g., :guilabel: `Units `). In the
59+ :guilabel: `Base Unit Count ` field, enter the number of units in the product, then select the
60+ relevant unit from the dropdown list.
6061
6162.. example ::
6263 Imagine you want to sell a 2-liter bucket of paint for $60, i.e., $30 per liter.
6364
6465 .. image :: prices/prices-per-unit.png
6566 :alt: Cost per unit pricing on the product form.
6667
67- The price per units, in this case per liter, is shown next to the sales price on the
68- product page.
68+ The price per units, in this case per liter, is shown next to the sales price on the product
69+ page.
6970
7071 .. image :: prices/price-cost-per-unit-page.png
7172 :alt: Unit pricing on the product page.
@@ -84,6 +85,7 @@ Pricelists
8485Pricelists in Odoo allow to manage flexible pricing rules and to offer different prices and
8586discounts based on currencies, time periods, purchase volumes, :ref: `customers' location
8687<ecommerce/prices/geoip>`, and/or customer type.
88+
8789To enable pricelists for eCommerce, go to :menuselection: `Website --> Configuration --> Settings `,
8890scroll down to the :guilabel: `eCommerce ` section, enable :guilabel: `Pricelists `, and
8991:guilabel: `Save `. Then, click :guilabel: `Pricelists ` or go to :menuselection: `Website --> eCommerce
@@ -97,17 +99,17 @@ In the :guilabel:`Ecommerce` tab, configure options specific to online sales, su
9799
98100.. tip ::
99101 - If you are using several websites and you want to use the same pricelist on several of them,
100- you need to duplicate the pricelist for each website. If you do not assign any
101- website, the pricelist will not be used, unless it is :ref: `selectable
102+ you need to duplicate the pricelist for each website. If you do not assign any website, the
103+ pricelist will not be used, unless it is :ref: `selectable
102104 <ecommerce/prices/selectable-pricelists>`.
103105 - Pricelists can also be :ref: `assigned to a specific customer
104106 <sales/products/customer-pricelist-application>`.
105107
106108.. note ::
107109 - When pricelists are enabled in the Sales app, they are automatically enabled in the eCommerce
108110 app, and vice versa.
109- - In the list of pricelists, order the pricelists by priority: the first takes
110- precedence over the second, the second over the third, and so on.
111+ - In the list of pricelists, order the pricelists by priority: the first takes precedence over
112+ the second, the second over the third, and so on.
111113 - It is also possible to create specific pricelists for :ref: `variants
112114 <products/variants/configure-variants>`.
113115
@@ -120,8 +122,8 @@ Selectable pricelists
120122---------------------
121123
122124Selectable pricelists are useful, for example, when selling products in :doc: `multiple currencies
123- </applications/sales/sales/products_prices/prices/currencies>` and allow customers to
124- choose a pricelist using the catalog's pricelist selector located next to the :ref: `search bar
125+ </applications/sales/sales/products_prices/prices/currencies>` and allow customers to choose a
126+ pricelist using the catalog's pricelist selector located next to the :ref: `search bar
125127<ecommerce/catalog/top-bar>`.
126128
127129.. image :: prices/pricelist-selector.png
@@ -160,8 +162,8 @@ as needed. For instance, select :guilabel:`European Union` to apply the pricelis
160162states.
161163
162164To create a new country group, click :guilabel: `Search more ` in the dropdown list, then
163- :guilabel: `New `. Add a :guilabel: `Group Name ` and select the relevant :guilabel: `Countries `.
164- Use :ref: `Custom filters <search/custom-filters >` if needed.
165+ :guilabel: `New `. Add a :guilabel: `Group Name ` and select the relevant :guilabel: `Countries `. Use
166+ :ref: `Custom filters <search/custom-filters >` if needed.
165167
166168.. note ::
167169 Each country group must contain at least one country.
@@ -190,24 +192,24 @@ Use :ref:`Custom filters <search/custom-filters>` if needed.
190192 - `EU prices with discounts ` with the `EU ` country group assigned
191193 - `US prices ` with the `US ` country group assigned
192194
193- If the :guilabel: `Selectable ` option is enabled for `EU regular prices ` and
194- `US prices `, and the customer is from the European Union, only the pricelists
195- `EU regular prices ` and `EU prices with discounts ` will be available. However, since the
196- `EU prices with discount ` list is not selectable, it will disappear once the customer selects
197- the `EU regular prices ` list and prices will be displayed based on the `EU regular prices `
198- pricelist on the catalog.
195+ If the :guilabel: `Selectable ` option is enabled for `EU regular prices ` and `US prices `, and
196+ the customer is from the European Union, only the pricelists `EU regular prices ` and `EU
197+ prices with discounts ` will be available. However, since the `EU prices with discount ` list
198+ is not selectable, it will disappear once the customer selects the `EU regular prices ` list
199+ and prices will be displayed based on the `EU regular prices ` pricelist on the catalog.
199200
200201Pricelist application
201202---------------------
202203
203204On the ecommerce, the *default * pricelist is automatically selected for public, non-logged in users
204205when no country group is assigned. If :ref: `GeoIP and country groups <ecommerce/prices/geoip >` are
205- used, public users see the pricelist of their country group by default. :ref: `Logged-in users
206- <ecommerce/customer_accounts/shop-access>` with
207- :ref: `assigned pricelists <sales/products/customer-pricelist-application >` see the assigned
208- pricelist by default **if it is assigned to the website ** they are visiting. If not, the website's
209- default pricelist is applied (i.e., the first available pricelist assigned to the website and
210- without a country group, following the sequence order).
206+ used, public users see the pricelist of their country group by default.
207+
208+ :ref: `Logged-in users <ecommerce/customer_accounts/shop-access >` with :ref: `assigned pricelists
209+ <sales/products/customer-pricelist-application>` see the assigned pricelist by default **if it is
210+ assigned to the website ** they are visiting. If not, the website's default pricelist is applied
211+ (i.e., the first available pricelist assigned to the website and without a country group, following
212+ the sequence order).
211213
212214Assigned pricelists take precedence over country-based pricelists, when applicable, unless the
213215assigned pricelist is linked to a different country group.
@@ -217,8 +219,8 @@ assigned pricelist is linked to a different country group.
217219 :guilabel: `United States ` pricelist is applied.
218220
219221 A different visitor, also from the United States, has the :guilabel: `Loyal Customer Discount `
220- pricelist assigned in their contact form. This assignment takes precedence over the country
221- group assignation, so the :guilabel: `Loyal Customer Discount ` is applied.
222+ pricelist assigned in their contact form. This assignment takes precedence over the country group
223+ assignation, so the :guilabel: `Loyal Customer Discount ` is applied.
222224
223225 .. image :: prices/pricelists-example.png
224226 :alt: An example of various pricelists assigned to a website.
@@ -232,10 +234,9 @@ Discounts
232234Discounts programs
233235------------------
234236
235- To enable :doc: `discount programs </applications/sales/sales/products_prices/loyalty_discount >`
236- for your ecommerce, go to :menuselection: `Website --> Configuration --> Settings `, scroll
237- down to the :guilabel: `eCommerce ` section, and enable the :guilabel: `Discounts, Loyalty & Gift
238- Card ` feature.
237+ To enable :doc: `discount programs </applications/sales/sales/products_prices/loyalty_discount >` for
238+ your ecommerce, go to :menuselection: `Website --> Configuration --> Settings `, scroll down to the
239+ :guilabel: `eCommerce ` section, and enable the :guilabel: `Discounts, Loyalty & Gift Card ` feature.
239240
240241:ref: `Configure <sales/products/loyalty-programs >` the discount program, make sure the
241242:guilabel: `Website ` option is enabled, and add the relevant :ref: `Pricelist
@@ -253,12 +254,11 @@ alongside it.
253254.. image :: prices/price-strikethrough.png
254255 :alt: Price strikethrough.
255256
256- To display a permanently discounted price, navigate to :menuselection: `Website --> Configuration
257- --> Settings `, scroll down to the :guilabel: `eCommerce `, enable the :guilabel: `Comparison
258- Price ` option, and :guilabel: `Save `. Then, :ref: `go to the product form
259- <ecommerce/products/create-products>`, enter the new (discounted) price in the
260- :guilabel: `Sales Price ` field and the original one (strikethrough) in the
261- :guilabel: `Compare to Price ` field.
257+ To display a permanently discounted price, navigate to :menuselection: `Website --> Configuration -->
258+ Settings `, scroll down to the :guilabel: `eCommerce `, enable the :guilabel: `Comparison Price ` option,
259+ and :guilabel: `Save `. Then, :ref: `go to the product form <ecommerce/products/create-products >`,
260+ enter the new (discounted) price in the :guilabel: `Sales Price ` field and the original one
261+ (strikethrough) in the :guilabel: `Compare to Price ` field.
262262
263263.. note ::
264264 The :guilabel: `Compare to Price ` field must contain a price that is higher than the
@@ -272,9 +272,9 @@ Price` option, and :guilabel:`Save`. Then, :ref:`go to the product form
272272Discounted pricelists
273273---------------------
274274
275- It is also possible to create :ref: `pricelists with discounts <sales/products/price-rules >`.
276- To do so, :ref: `create a pricelist <sales/products/pricelist-configuration >` and
277- :ref: ` configure the discount <sales/products/price-rules >`.
275+ It is also possible to create :ref: `pricelists with discounts <sales/products/price-rules >`. To do
276+ so, :ref: `create a pricelist <sales/products/pricelist-configuration >` and :ref: ` configure the
277+ discount <sales/products/price-rules>`.
278278
279279If a :ref: `pricelist <ecommerce/prices/pricelists >` contains a :ref: `Discount
280280<sales/products/price-rules>` price type, the price is striked through for applicable customers,
@@ -291,18 +291,18 @@ E-commerce promotional code
291291---------------------------
292292
293293To offer a discounted pricelist for customers with a specific discount code, access the relevant
294- :ref: `pricelist form <ecommerce/prices/pricelists >`, go to the :guilabel: `Ecommerce ` tab, and add
295- an :guilabel: `E-commerce Promotional Code `, e.g., `SUMMERSALE10% `. Then, go to the :guilabel: `Sales
296- Price ` tab, click :guilabel: `Add a line `, and :ref: `configure the discount
297- <sales/products/price-rules>`. When a customer inserts the code during the :ref: `checkout process
298- <ecommerce/checkout/review_order>`, this discount is granted according to the :guilabel: `Sales
299- Price ` configuration.
294+ :ref: `pricelist form <ecommerce/prices/pricelists >`, go to the :guilabel: `Ecommerce ` tab, and add an
295+ :guilabel: `E-commerce Promotional Code `, e.g., `SUMMERSALE10% `.
296+
297+ Then, go to the :guilabel: `Sales Price ` tab, click :guilabel: `Add a line `, and :ref: `configure the
298+ discount <sales/products/price-rules>`. When a customer inserts the code during the :ref: `checkout
299+ process <ecommerce/checkout/review_order>`, this discount is granted according to the
300+ :guilabel: `Sales Price ` configuration.
300301
301302.. note ::
302- Make sure that the :ref: `Promo Code <ecommerce/checkout/review_order >` option
303- in the website editor is enabled and, if using :ref: `country groups
304- <ecommerce/prices/country-groups>`, that the discounted pricelist has the same country group
305- assigned as the non-discounted pricelist.
303+ Make sure that the :ref: `Promo Code <ecommerce/checkout/review_order >` option in the website
304+ editor is enabled and, if using :ref: `country groups <ecommerce/prices/country-groups >`, that the
305+ discounted pricelist has the same country group assigned as the non-discounted pricelist.
306306
307307.. _ecommerce/prices/hide-prices :
308308
@@ -313,14 +313,15 @@ Some businesses, such as :ref:`B2B shops <ecommerce/b2b_b2c/prices>` or companie
313313or custom items, often prefer to showcase their products online without displaying their prices.
314314
315315To hide product prices on the ecommerce, go to :menuselection: `Website --> Configuration -->
316- Settings `, enable :guilabel: `Prevent Sale of Zero Priced Product ` in the :guilabel: `eCommerce `
317- section, and enter a redirect URL in the :guilabel: `Button URL ` field. The
318- :guilabel: `Add to Cart ` button on the product page is then replaced by a :guilabel: `Contact us `
319- button, which can be :ref: `customized <ecommerce/checkout/prevent-sale >` if needed.
316+ Settings `, check the :guilabel: `Hide Add To Cart ` checkbox in the :guilabel: `eCommerce ` section.
317+ Select :guilabel: `0 price products ` from the :guilabel: `For ` dropdown menu. Enter a redirect URL in
318+ the :guilabel: `Link URL ` field.
320319
321- After enabling this feature, either set the price to `0 ` for all desired products or create a
322- :ref: `pricelist <ecommerce/prices/pricelists >` with all product prices set to `0 `. Ensure the
323- pricelist is assigned to the correct website and is listed first among the website's pricelists.
320+ The :guilabel: `Add to Cart ` button on the product page is then replaced by a :guilabel: `Contact us `
321+ button, which can be :ref: `customized <ecommerce/checkout/prevent-sale >` if needed. After enabling
322+ this option, either set the price to `0 ` for all desired products or create a :ref: `pricelist
323+ <ecommerce/prices/pricelists>` with all product prices set to `0 `. Ensure the pricelist is assigned
324+ to the correct website and is listed first among the website's pricelists.
324325
325326.. tip ::
326327 - Ensure no pricelist used on the ecommerce has been marked as :guilabel: `Selectable ` to prevent
@@ -330,5 +331,23 @@ pricelist is assigned to the correct website and is listed first among the websi
330331 <sales/products/customer-pricelist-application>` a regular pricelist (with actual prices) to
331332 customers with :ref: `portal access <portal/access >`.
332333
334+ Preventing direct sales by categories
335+ -------------------------------------
336+
337+ Choosing the :guilabel: `Specfic categories ` option allows product prices to display, but prevents
338+ direct sales from the website. Go to :menuselection: `Website app --> Configuration --> Settings `, check
339+ the :guilabel: `Hide Add To Cart ` checkbox in the :guilabel: `eCommerce ` section.
340+
341+ Select :guilabel: `Specific categories ` from the :guilabel: `For ` dropdown menu. Select **at least
342+ one ** desired product category from the :guilabel: `Categories ` dropdown menu. Enter a redirect URL
343+ in the :guilabel: `Link URL ` field.
344+
345+ After enabling this option, navigate to :menuselection: `Website app --> eCommerce --> Products ` and
346+ modify all the desired products to the chosen :ref: `product category
347+ <ecommerce/catalog/categories>`.
348+
349+ .. image :: prices/zero-price-setting.png
350+ :alt: Sample of the Specific categories option configuration for the Hide Add To Cart setting.
351+
333352.. seealso ::
334353 :doc: `../customer_accounts `
0 commit comments