Magento has very powerful tools to manage product prices, so powerful that sometimes even experienced eCommerce professionals may be confused. In this blog post we will explain how pricing works in Magento.
As you see on the infographic above, Magento has number of facets to manipulate product prices. It provides merchant with great level of flexibility, but as many powerful tools product pricing in Magento may be a bit confusing.
Final price that your customer see on the website may depends on the time of visit, customer group she belongs, what exactly website is visited for multis-store Magento, number of products purchased and finally promotions that you currently run.
Let’s dig deeper in how Magento product prices work. We have used Magento 2.2 Open Source as a reference point, but most things below are valid for all not very old Magento 1.X and Magento 2.X versions.
Base product price is the minimal level of pricing that has to exist in Magento. In the simplest case it is defined on global scope level and it is the price that final users see. In some cases you stop here and keep things simple as that.
If you have multi-site Magento installation (your Magento manages multiple websites), you may set different prices (as well as tons of other parameters) for different websites.
Moreover you may set the price in different base currency (on website level) and display currency (storeview level).
Important distinction between base and display currency is that display currency is used for end user convenience only, so she can see approximate product price in her native currency. She’ll still pays actual price set in base currency at the checkout. That display currency is automatically converted from base currency.
For example you may have one website with 2 storeviews: for US in USD and for Australia in AUD. If your base currency is USD and display currency for AU website is AUD, your AU website visitors will see prices in AUD, but still be actually charged in USD.
To really charge customers in AUD you need to setup a separate AU website.
Image above is from Magento 2.2 official documentation. It is a good illustration of the scope in Magento, however may be a bit confusing for pricing. You may not really directly set prices on the scope level below website (store or storeview). You can affect it though through other means, which we discuss below.
Advance pricing screen appears if you click to corresponding URL next to the base price. Main tools you have there are special prices and group/tier prices.
Special prices in Magento are useful if you want to make a temporary website wide discount for one or several products. It has star and end date, when that special price is used. In front-end it appears with base price displayed to show how much you can save).
If you need to restrict discounts on more granular level, read the rest of this article.
Tier and customer group prices
Tier and customer group prices let you set separate prices for
- different customer groups
- depends on quantity of the products purchased
That tools can work in conjunction, so you can:
- Make only discount based on customer group
- Make only discount based on product quantity
- Use both methods
There is also MSRP price in Advanced pricing. You may use this feature if required do not openly display discounts below Manufacturer Suggested Retail Price. Magento allows you to display your sale price on either by gesture or on the later stages of sale (shopping cart or checkout).
Price promotions rules – catalog and shopping cart
The last layer of price management in Magento are catalog and cart price rules. Magento has very flexible set of rules that allows you to give various discounts based on multiple criteria.
- You may give 10% discount on the products in certain category to certain customer group
- You may give 20% off to product X if a customer ordering at least N products Y and M products Z and restrict this discounts by special coupon
- You may … The possibilities are endless.
Promo rules in details is a topic of a whole separate discussion.
What is important to understand is that:
- Promo rules applied after other price manipulation methods described above, so they provide extra discounts
- There maybe multiple promo rules and things can become complicated quickly. So use rule priorities and “Stop other rules processing” feature if you don’t want to give away too much
- Catalog rules affect the price displayed on the website pages before any actions from user other than logging in if the rules are related with customer group
- Cart price rule works after products are added to shopping cart only
Conclusion and references
While it may feel intimidating at the beginning, Magento 2 product pricing features are quite logical and not so hard to use if you know what you do. Important that you can make it as simple or complex as your business requires.