How To Manage Prices For B2B And B2C In Odoo

The Most Popular Extension Builder for Magento 2

With a big catalog of 224+ extensions for your online store

Price management is the most effective strategy for handling the delicate balancing act between financial risk and income. Managing product pricing, recognizing upsell or cross-sell opportunities, and limiting margin erosion with ease are all part of this competency.

However, if your company attempts pricing management using technologies such as spreadsheets and databases developed in-house, it will no longer have an advantage over its competitors. Price management allows you to add more tiers to your price structure while reducing the burden of administrative work.

Your capacity to deal with increased complexity in your pricing will improve as a result. You will have the ability to employ a combination of discount-based components, such as dollar or % discounts, based on volume breaks or total expenditure. That’s why today’s tutorial will show you how to manage prices for B2B and B2C in Odoo. So, let’s dive in!

Table of Contents:

The importance of managing prices for B2B and B2C for eCommerce businesses

When dealing with customers, prices are typically expressed with taxes already incorporated into the total price (e.g., in most eCommerce). But when you work in a business-to-business setting, you will typically negotiate costs without including taxes.

Both of these use cases are easily managed by Odoo, provided that you record your prices on the product with either taxes excluded or included, but not both together at the same time. If you manage all of your prices with tax included (or excluded) solely, then you can still easily do sales orders with a price having taxes excluded (or included): that’s straightforward. If you handle all of your prices with tax excluded (or included), then you cannot do that.

This material is solely for the specific use case in which you require two references for the pricing of the same product, and it is not intended for any other purposes (one with tax included and one without tax excluded). The reason why this is such a complicated matter is that the costs that are included and the prices that are not included do not have a symmetrical relationship with one another in any way. Depending on how you enter your prices on the product form, you will thus obtain various results for the price and different taxes. These results will be determined by the price.

How to manage prices for B2B and B2C in Odoo


The most effective strategy for avoiding this complication is to select and adhere to a single method for controlling prices, whether that method is the price without taxes or the price with taxes included. Then, you need to select the one to be the default on the product form (this selection will be displayed on the default tax that is connected with the product) and then allow Odoo to automatically compute the other one based on the price list and the fiscal status. Make the necessary adjustments to the contracts you have with your consumers. This will work without any further configuration on your end, so there is no need to worry about it.


In the event that you are unable to do so and you end up negotiating different rates for different customers, some of which omit tax and others which include it, you must comply with the following:

  • The default price of a product should be recorded on the form without tax, and the applicable tax rate should be adjusted accordingly (price excluded on the product form).
  • Make a pricing list for specific consumers, including VAT in the costs, and send it to them.
  • Establish a new fiscal stance that transforms the tax-exempt status into a tax-included status.
  • Customers who are interested in taking advantage of this pricelist and fiscal position should have both the pricelist and the fiscal position assigned to them.

For the sake of this documentation, we will be referring to the use case described above:

  • Your good’s default retail price is 8.26€ tax excluded.
  • But we want to offer it in our shops and on our eCommerce website for 10 euros, including the tax on that price.


Pick the appropriate setting inside the Website app’s settings if you only use B2C or B2B pricing on your website.


Please follow these procedures if you have both business-to-business and business-to-consumer pricing on the same website:

  • Turn on the developer mode, then navigate to the General Settings > Users & Companies > Groups menu option.
  • Choose to open the Technical / Tax display for Business to Business or the Technical / Tax display for Business to Consumer.
  • Add any users who need access to the price type under the tab labeled Users. Include B2C customers in the B2C group and B2B customers in the B2B group, respectively. Setting your products
  • Your business needs to be set up, so taxes are automatically excluded by default. This is often the configuration that is set as the default, but you may check your Default Sale Tax by going into the Accounting application and selecting Configuration > Settings from the menu.

Once done, you can generate a B2C price list. Configuration > Settings is where you will find the option to activate the pricelist feature for each individual customer within the Sale application. Select this option to charge different prices to each type of consumer. After that, you can make a B2C price list by selecting Configuration > Price Lists from the menu. It is also a good idea, in order to avoid confusion, to rename the default price list as the B2B price list. Then, under the Sales application’s Sales > Products menu, create a product with a price of 8.26 euros, a tax rate of 21% (specified as a tax not included in pricing), and a price on this product for B2C clients of 10 euros.

Setting the B2C fiscal position

Create a B2C fiscal position by going to the accounting program and selecting Configuration > Fiscal Positions from the drop-down menu. The VAT 21% (tax excluded from price) should be mapped onto the VAT 21% using this fiscal position (tax included in price).

Setting the B2C fiscal position

Test by creating a quotation

Using the Sales > Quotations menu option, you may generate a quotation from within the Sale application. The following outcome ought to be expected from you: 8.26€ + 1.73€ = 9.99€.

The next step is to generate a quotation, but before you add your product, be sure to alter both the pricelist and the fiscal position on the quotation to the B2C position. Your consumer should expect a final price of 10.00€, which is the result of adding 8.26€ and 1.74€ together.

Test by creating a quotation

A customer of your shop should behave in the manner mentioned above at all times.

Avoid changing every sale order

Suppose you negotiate a contract with a client and either agree to include or exclude taxes as part of the deal. In that case, one of the options available to you is to set up the price summary and the fiscal position on the order form in such a way that it will be automatically applied to every sale made to this customer.

The customer’s current financial condition may be found on the accounting tab of the customer form, while the price list can be found on the Sales & Purchases tab, which belongs to the customer form.

Avoid changing every sale order

Be aware that this is prone to error: if you specify a financial position in which tax is included in pricing but use a price list in which tax is not included, the prices that are automatically computed for you may be incorrect. Because of this, our standard recommendation to businesses is that they only work with a single price reference.

Wrapping Up

We hope this article has cleared your mind on how to manage prices for B2B and B2C in Odoo. Price management results in accurate pricing decisions and price updates that are delivered in real time. When it comes to offering discounts on products in order to attract new clients, your sales force will be able to make the best choices possible if they have access to price management software. Because the system already contains information about the pre-planned price discounts, a Salesperson can select available discounts while they are entering an order.

They do not need to rely on their ability to recall what discounts are offered and when they can apply them anymore. Your team’s time on pricing administration is cut down significantly when you use price management software. Any adjustments that need to be made to your price regulations and your promotional and customer pricing can be made so rapidly that they take effect immediately.

Increase sales,
not your workload

Simple, powerful tools to grow your business. Easy to use, quick to master and all at an affordable price.

Get Started
avada marketing automation

Explore Our Products:


Stay in the know

Get special offers on the latest news from Mageplaza.

Earn $10 in reward now!

Earn $10 in reward now!

go up