Discounts Manager for Products


An amazing WooCommerce extension to implement multiple discount criterias with ultimate convenience.

Discounts Manager for Products is compatible with WooCommerce and s2Member Plugin.


woocommerce, discounts, percentage, s2Member, sales, memership, weight, membership levels, cart discounts, quantity

Video Tutorials

1) Overview:

2) Setup membership levels and discount criteria with WooCommerce

Some examples of usage

If the customer orders more than 5 items of a given product

  • You may want to feature the following discount policy in your store: if the customer
    orders more than 5 items of a given product, he/she will pay the price of this order
    line lowered by 10%.

Offering a 5% discount if the customer orders more than 10 items

  • Or you may want a different policy, for example offering a 5% discount if the customer
    orders more than 10 items of a product and a 10% discount if he/she orders more than
    20 items.

When the customer orders more than 10 items (say, 15, 20, etc.)

  • Discounts Plus supports flat discounts in currency units as well,
    enabling you to handle scenarios like deducting fixed value of, say $10 from the item subtotal.
    For example, when the customer orders more than 10 items (say, 15, 20, etc.), a discount of $10
    will be applied only on the subtotal price.

The settings for discounts are simple yet extensive, allowing wide range of discount
policies to be adopted in your store.

Here is the list of the main features:

  • Possibility of setting percentage Discounts Plus or flat (fixed) Discounts Plus in currency units.
  • Discounts Plus for product variations is supported to treat them separately or by shared quantity when discounting.
  • Discount is better visible and is available on several locations (see below).
  • Discount is visible on the Checkout page
  • Discount is visible on the Order Details page
  • Discount is visible in WooCommerce order e-mails and invoices as well.
  • Showing the applied discount when hovering over the item price in the cart.
  • Possibility of easily changing the CSS of the price before and after discount.
  • Discounts Plus can or cannot be applied if a coupon code is used, depending on configuration.
  • HTML markup is allowed in information about the Discounts Plus offer in Product Description.
  • Discounts Plus can be disabled more easily in the Product Options page.
  • Compatibility with WooCommerce 2.0.x, 2.1.x, 2.2.x.

** If you like Discounts Manager for Products, please also check out more premium plugins: **


This WordPress Plugin is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or any later version. This free software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this software. If not, see


  • Features at a Glance
  • WooCommerce Products Listing
  • WooCommerce Product Discount Criterias
  • WooCommerce Cart View – Need Discounts? (Pro Feature)
  • WooCommerce Cart View – Need Discounts? Clicked (Pro Feature)
  • WooCommerce Cart View – Discount Option Selected (Pro Feature)
  • WooCommerce Cart View – Discounts On Multiple Products (Pro Feature)
  • WooCommerce Cart View – Boost Your Sales With This Plugin (Pro Feature)
  • WooCommerce Cart – Order Review (Pro Feature)
  • Setup Discounts with s2member Plugin
  • Gabriel & Jose’s Logic
  • Discount Available Contionally – No Shipping or Only Shipping
  • Global Criteria
  • Category Based Criteria
  • Cart Amount Based Criteria
  • Error Messages (Customization)
  • WooCommerce Settings Area
  • How multiple categories based discount work?


  1. Download the latest version and extract it in the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress

Once the plugin is activated, you can use it as follows:

  1. First navigate to WooCommerce settings. Under the Discounts Plus tab, find the global
    configuration for Discounts Plus. Make sure “Discounts Plus Enabled” is checked and optionally
    fill information about discounts which will be visible on the cart page. You can include HTML
    markup in the text – you can, for instance, include a link to your page with your discount
    policy. In case you need the plugin to work well with product variations, make sure that the
    “Treat product variations separately” option is unchecked. Since version 2.0 you
    may choose to use a flat discount applied to the cart item subtotal. Optionally you may also
    modify the CSS styles for the old value and the new value which is displayed in the cart.
    Save the settings.

  2. Navigate to Products and choose a product for which you want to create a discount policy.
    In the Product Data panel, click Discounts Plus and optionally fill information about the discount
    which will be visible in the product description.

  3. Click “Define discount criteria” button to create a policy. Quantity (min.) means minimal
    number of ordered items so that the (second textbox) Discount applies. It is possible to
    add up to five discount lines to fine-tune the discount setting.


How it works with WooCommerce single products?

How can you apply multiple discounts to a product through categories?

How doest it work with multiple products with categories based discounts?

Are multiple discounts supported? How many levels of discounting may be applied?

Yes, multiple discounts (related to a single product) are supported. Currently it is possible to
set up to 5 discount lines. That should be enough for reasonable fine-tuning of the discount.

Is only a percentage discount implemented?

Since version 2.0 another type of discount is added, allowing you to set a fixed discount in currency units
for the cart item subtotal.

Will the discount be visible on WooCommerce e-mails and Order status as well?

Yes. Since version 2.0, this feature has been implemented.

Is it possible to handle discount for product variations as a whole?

Yes, in case you have several product variations in your store and you need to apply the discount
to all the purchased variations, please upgrade to the latest version of Discounts Plus.
This functionality can be disabled in Discounts Plus settings.

Is the plugin i18n ready?

Yes, the plugin supports localization files. You can add support for your language as well by the standard process.

Can you provide an example of setting a percentage Discounts Plus?

Sure. Below is an example of setting a Discounts Plus for a product with three discount lines.

  1. Quantity (min.) = 3, Discount (%) = 5
  2. Quantity (min.) = 8, Discount (%) = 10
  3. Quantity (min.) = 15, Discount (%) = 15

If the customer orders, say, 12 items of the product which costs $15 per item, the second
discount line will apply. The customer then pays 12 * 15 = 225 dollars in total minus
10%, which yields $202.5. Note that this discount policy only applies to the concrete product — other
products may have their own (possibly different) discount policies.

Can you provide an example of setting a flat Discounts Plus?

Example for flat discount follows:

  1. Quantity (min.) = 10, Discount ($) = 10
  2. Quantity (min.) = 30, Discount ($) = 20

If the customer orders, say, 15 items of the product which costs $10 per item, the first discount
line will apply and the customer will pay (15 * 10) – 10 dollars. If the customers orders
50 items, the second discount line will apply and the final price will be (50 * 10) – 20 dollars.
Setting Discounts Plus couldn’t have been easier.


ሓምለ 7, 2020 1 reply
hello you talk about the premium package but where is it? where is your website? how much does it cost? what are the extra features? thank you
ሚያዝያ 29, 2020 2 replies
Hello Thanks for your great and good plugin How can I delete 2 decimal places for a dollar currency? I use another currency that is not in dollars That’s why I don’t want the two decimal places to show the dollar Thankful
ሚያዝያ 18, 2020 1 reply
Installed this plugin and asked for support to change a small format issue plus an extention of the limitation on the number of discount criteria. I would have been happy to purchase the Pro version but was advised not to as it would solve problems not related to mine! The issue was resolved in the free version. Big shout-out. And by the way, if you ever find yourself in need of a tool to put a discount on the 2nd, 3rd, 4th item and so forth but not on the first: this plugin will do the trick.
ሕዳር 4, 2019
Was using this plugin for some months with no complains whatsover. Unfortunately after a wordpress update an error occured. After reporting this on the support page it was fixed within the hour! My faith in humanity is restored 🙂
ሓምለ 9, 2019 1 reply
The plugin works perfectly and is very easy to use. The free version is fine, maybe I will buy the paid version later. I have made a Dutch translation for this plugin (.po and .mo files)
መጋቢት 10, 2019 1 reply
1. It shows incorrect amount in the cart even if discount condition is not met (should have shown correct price without discount but shows 120% of correct price) 2. it doesn’t calculate discount percentage correctly if working on variation products If anyone decides to use then should test it thoroughly before releasing it live to customers
Read all 24 reviews

Contributors & Developers

“Discounts Manager for Products” is open source software. The following people have contributed to this plugin.




  • Fix: Reduced the number of iterations for item price filter while calculating the discounts. [26/05/2024][Thanks to Sidney Nourry]


  • Fix: Reduced the number of iterations for item price filter while calculating the discounts. [16/05/2024][Thanks to Sidney Nourry]


  • Updating for the WordPress version. [17/01/2024][Thanks to gtcdesign]


  • Fix: Uncaught Error: Call to a member function get_type() on bool. [19/05/2023][Thanks to Rafał Chełpa]


  • Improved version for s2Member (Pro) plugin. [12/05/2023][Thanks to Rafał Chełpa]


  • Improved version for s2Member (Pro) plugin. [19/04/2023][Thanks to Rafał Chełpa]


  • Improved version for WordPress 6.0. [02/06/2022][Thanks to Toby Cryns]






  • Improved version after in depth review by the plugin author and WordPress Plugin Review Team.


  • Free version revised with qty. based discounts.


  • Undefined property: stdClass::$post_type – fixed. [Thanks to eurostratos]


  • Light version revised.


  • Language translation files updated.


  • Discount methods revised and tested to ensure accuracy. [Thanks to Stephen Russell]


  • Uncaught Error: Call to a member function WC->session->get(), fixed. [Thanks to justinmyoung]


  • Discount Label/Caption added on settings page. [Thanks to Don Paul]


  • Settings page revised and discount value ensured in email. [Thanks to Don Paul]


  • WC Membership compatibility revised. [Thanks to Team Ibulb Work and Yonasr]


  • session_write_close() inserted after using session. [Thanks to egocefalo]


  • Made easy to understand premium features. [Thanks to Abu Usman]


  • Made easy to understand premium features. [Thanks to Abu Usman]


  • Made easy to understand premium features.


  • An improvement made in script. [Thanks to seighart]


  • PHP warning on cart page. Fixed. [Thanks to seighart]


  • Tabs introduced for better usability and added visual aids as well. [Thanks to Team Ibulb Work and AndroidBubbles]


  • Updated and improved UI and UX.


  • “Number of decimals” will control the decimal places in this plugin from this version onwards. [Thanks to Behnam Khan]


  • Updated round of discounts on percentage. [Thanks to justinmyoung]


  • Updated for WP 5.4.


  • Another PHP notice fixed. [Thanks to goedebuursilentdisco]


  • Another PHP notice fixed.


  • PHP notice fixed – Product properties should not be accessed directly. [Thanks to amiayu]


  • Improved discount text in emails for percentage discount. [Thanks to]


  • Improved Gabriela & Jose’s Logic. [Thanks to]


  • Sprintf function issue fixed. [Thanks to donmcleman]


  • Improved qty. discount range display. [Thanks to]


  • Fixed a minor javascript file symbol issue. [Thanks to René Baade Pedersen]


  • Fixed a minor echo thing on admin screen. [Thanks to]


  • Pricing scale text is editable from settings page now. [Thanks to Don Paul]


  • Warning: sprintf(): Too few arguments issue resolved. [Thanks to amiayu]


  • %% issue resolved. [Thanks to patowins]


  • Languages added. [Thanks to Abu Usman]


  • WooCommerce get_cart() uncaught fatal error fixed on product page. [David Currie]


  • WooCommerce Memberships compatibility added using class_exists check WC_Memberships_Loader. [David Currie]


  • Flat discount > cart page > subtotal section correction. [David Currie]


  • Flat discount updated price round float number format correction. [Thanks to Tom C]


  • Flat discount updated price formula refined. [Thanks to Sadaf]


  • Pricing scale turned ON by default. [Thanks to Sadaf Parvez]


  • Fixed a few PHP notices regarding undefined variable and wrong usage of parent_id with product object. [Thanks to Sadaf Naz]


  • Fixed a PHP notice regarding undefined variable unit price. [Thanks to mareklukas]
  • Refined a few Premium features regarding weight based discounts. [Thanks to Ryan Chan]


  • Fixed a PHP notice regarding undefined index 0. [Thanks to mareklukas]
  • Fixed a Premium feature regarding settings page. [Thanks to Ryan Chan]


  • Refined pricing scale display area and also fixed the decimal positions. [Thanks to cccnate]


  • Refined and tested varitions discount criteria. [Thanks to Andrea Tarricone]


  • Undefined constant WDP_PER_PRODUCT related warning fixed. [Thanks to Angelo]
  • Protected function get_product_id call corrected. [Thanks to Konstantinos Zachos]


  • Refined the varitions related discount aspect. [Thanks to Andrea Tarricone]


  • Call to undefined method WC_Product_Simple::get_id() error fixed. Changes made in index.php on line 1054. [Thanks to Andrew]


  • Discounts display on product page now added as an option in product page settings. [Thanks to Michiel]


  • Category based discount feature refined and explained in the video tutorial again. [Thanks to Mouring Kolhoff]


  • Added another compatibility with latest version of the WooCommerce. [Thanks to cathydol]


  • s2member compatibility nonce related bug fixed. [Thanks to blastostitch]


  • Display price issue in admin panel price column resolved. [Thanks to Dharmishtha Patel]


  • WooCommerce > Cart Page > Old price was having 4 decimals > Fixed. [Thanks to Nate Melanson]
  • Settings page > turn discounted price as display price on loop and single product pages. [Thanks to Breda McGuigan]


  • User roles are added with multiple selection to ignore. If you don’t want to allow a user role to get discounts. [Thanks to Jim Yow]


  • Weight based discounts improved with multiple quantities. [Thanks to Dimitar Tsankov]


  • Sanitized input and fixed direct file access issues.


  • Discounts available with shipment conditions and can be restricted on user decision. [Thanks to Jon Siddall]
  • Currency symbol position implemented as from WooCommerce settings page. [Thanks to grupa]


  • Discounts available with shipment conditions. [Thanks to Jon Siddall]
  • After discounts applied, prices were missing decimal values. Fixed. [Thanks to Greg Nowak]


  • Weight based discounts introduced. [Thanks to Jon Siddall]


  • Flat discounts refined for variable products. [Thanks to Paul Day]


  • Flat discounts refined.


  • Discounts refined and new features added. [Thanks to Scott McClain]


  • Refining conditions and settings.


  • Checkout process refined. [Thanks to shameemali]


  • Variable products refined. [Thanks to Scott McClain]


  • An important Fatal Error fixed on report. [Thanks to actionarchery]


  • A few warnings were reported and those are fixed. [Thanks to scottmcx]


  • Variable products refined. [Thanks to Jocelyne]


  • Flat discount refined. [Thanks to Andy]


  • Global settings improved. [Thanks to Jose & Gabriela]
  • Global discounts crieteria and per product discount criteria, both are in action at the same time from now.
  • Discount on cart total quanity introduced this time as a new optional logic.


  • Flat discount global settings refined. [Thanks to GP Themes Team]


  • Flat discount per product refined. [Thanks to Paul & NemoPro]


  • A minor issue fixed in flat discount per product. [Thanks to Paul Braoudakis]


  • s2member compatibility added.


  • A few important fixes. [Thanks to nextime]


  • Discounted prices should not be considered for discount again.


  • Discounted prices should not be considered for discount again.


  • Discounted prices on cart page. [Thanks to Alois]


  • Global settings are introduced and a useful widget for discounts detail under product short description. [Thanks to nameez]


  • Releasing 1.0 version.