If one sets up Tiered Pricing for regular customers only and leave Tiered Pricing empty for B2B customers, these tiered prices will show up at the B2B customers as well, whereas only guest users and B2C users should see them.
As you can see in attached image, this pricing makes no sence in this case as the B2B price is already lower to begin with than the tiered prices.
As soon as tiered pricing has been setup for the B2B customers as well, it will show the correct tiered prices. But in my case I don't want to setup Tiered Pricing for B2B customers for some of my products.
P.S. As I would like to have Tiered pricing for registered B2C customers only as well, it would be nice to have price fileds for the B2C group as well on the Product edit page. (As I already mentioned in a different ticket as well)
I saw your screenshots and I understand what you are saying.
I don't have a solution at this moment to apply dynamic rule discounts to the price table. The dynamic rules are very costly in performance - there are thousands of lines of code for discounts alone checking all possible rules and combinations and conditions (e.g. some rules can apply only for >20 items in cart, etc with multiple conditions). We had to build a caching system in the plugin because the rules were too costly in performance. So prices are always cached. WooCommerce uses a similar system to cache prices.
To apply rules to the tiered price table, we would have to take all possible prices in the table, and simulate the results for all, which would be a big performance cost, as it has to account for taxes, cart quantities, conditions, etc.
I don't see a way to do this realistically at this moment.
I understand the complexity and I will change some of the settings. Like not showing the discount everywhere, but only at checkout.
This is also one of the reasons I opted for seperate prices and tiered pricing for B2C customers. In this way I can avoid several dynamic rules. With a dynamic rules for discount for B2C customers it also shows the sale label for all products when show pricing everywhere is enabled, where I just want to show a different price for these customers and also a seperate tiered pricing table. Then you also don't have to check if the tiered price is higher than the default price and you can ignore in the code to show a tiered price for other customers if only tiered prices are set at regular prices only. What I mean, if a tiered price is not set for a particular group, then just don't show this list. This approach makes it less complicated in my opinion.
Hope you will implement this in one of your next versions.
If one sets up Tiered Pricing for regular customers only and leave Tiered Pricing empty for B2B customers, these tiered prices will show up at the B2B customers as well, whereas only guest users and B2C users should see them.
As you can see in attached image, this pricing makes no sence in this case as the B2B price is already lower to begin with than the tiered prices.
As soon as tiered pricing has been setup for the B2B customers as well, it will show the correct tiered prices. But in my case I don't want to setup Tiered Pricing for B2B customers for some of my products.
P.S. As I would like to have Tiered pricing for registered B2C customers only as well, it would be nice to have price fileds for the B2C group as well on the Product edit page. (As I already mentioned in a different ticket as well)
Hi Michel,
I saw your screenshots and I understand what you are saying.
I don't have a solution at this moment to apply dynamic rule discounts to the price table. The dynamic rules are very costly in performance - there are thousands of lines of code for discounts alone checking all possible rules and combinations and conditions (e.g. some rules can apply only for >20 items in cart, etc with multiple conditions). We had to build a caching system in the plugin because the rules were too costly in performance. So prices are always cached. WooCommerce uses a similar system to cache prices.
To apply rules to the tiered price table, we would have to take all possible prices in the table, and simulate the results for all, which would be a big performance cost, as it has to account for taxes, cart quantities, conditions, etc.
I don't see a way to do this realistically at this moment.
Hi Stefan,
I understand the complexity and I will change some of the settings. Like not showing the discount everywhere, but only at checkout.
This is also one of the reasons I opted for seperate prices and tiered pricing for B2C customers. In this way I can avoid several dynamic rules. With a dynamic rules for discount for B2C customers it also shows the sale label for all products when show pricing everywhere is enabled, where I just want to show a different price for these customers and also a seperate tiered pricing table. Then you also don't have to check if the tiered price is higher than the default price and you can ignore in the code to show a tiered price for other customers if only tiered prices are set at regular prices only. What I mean, if a tiered price is not set for a particular group, then just don't show this list. This approach makes it less complicated in my opinion.
Hope you will implement this in one of your next versions.
Thanks so far,
Michel