InMotion Hosting Support Center

One of the more common questions we get by new OpenCart users is how to create discounts and specials for products. The instructions below will guide you on how to make your own discounts and specials within your OpenCart website.

How to create discounts for your products

  1. Log into your OpenCart administrative interface.
  2. click on products tabHover over the Catalog option in the upper menu bar and click on Products from the dropdown.
  3. edit product screenThis brings you to a list of your products. Locate the product you want to create the discount for and click on the Edit link.
  4. enter discount dataFrom the product edit page, find and click on the Discount tab.
  5. enter discount dataYou are now on the Discount page. Click on the Add Discount button. Now you can add the data for your discount.
    Customer GroupWhich customer group will be able to get this discount. If you have more than one customer group and want the discount to be available to everyone, you will need to make a separate discount for each group.
    QuantityThe number of units the customer must purchase to get the discount. In our example, they must order 10 units to get them for $88.00 each.
    PriorityDiscounts will be listed in chronological order of the number of items needed. Priority will order how different discounts with the same number of items will display, although we cannot think of a reason this would ever occur.
    PriceThis is the discounted unit price the customer will receive.
    Date StartThis is the start date for the discount. You may leave this blank for it to take immediate effect.
    Date EndThis is the date the discount will end. You may leave it blank for it to be a continuing discount.
  6. Once you have entered the appropriate data, click on the Save button. Below is a screenshot comparison of how the product page displays with and without a discount.
    before discountafter discount created

How to create specials for your products in OpenCart

  1. Log into your OpenCart administrative interface.
  2. Hover over the Catalog option in the upper menu bar and click on Products from the dropdown.
  3. edit product screenThis brings you to a list of your products. Locate the product you want to create the discount for and click on the Edit link.
  4. From the product edit page, find and click on the Special tab.
  5. This brings you to the Specials page. Click on the Add Special button to begin. This will open up data fields for you to fill out.
    Customer GroupWhich customer group will be able to get this special. This is determined by the user data upon login. If you have more than one customer group and want the discount to be available to everyone, you will need to make a separate special for each group.
    PriorityIf you have more than one discount listed, the priority will determine which one is displayed on the product page. The special with the lowest priority number will be the one displayed.
    PriceThis is the price the unit will cost during the special.
    Date StartThis is the start date for the special. You may leave this blank for it to take immediate effect.
    Date EndThis is the date the special will end. You may leave it blank for it to be a continuing special.
  6. Once you have entered the appropriate data, click on the Save button. Below is a screenshot comparison of how the product page displays during and without a special.
    before specialafter special created
Continued Education in Course OpenCart
You are viewing Section 2: 348: Creating discounts and specials for your products in OpenCart 1.5
Section 1: Using Free Cloudflare for SSL on OpenCart 1.5
Section 3: 347: Enabling email alerts within OpenCart 1.5

Support Center Login

Social Media Login

Social Login Joomla

Related Questions

Here are a few questions related to this article that our customers have asked:
Ooops! It looks like there are no questions about this page.
Would you like to ask a question about this page? If so, click the button below!
Ask a Question
n/a Points
2014-06-17 7:54 pm

Thank you for the tips! 

If I would like to set up special price saying 10% off for all products under a particular category, is there an easy way to set this up? I know the Special tab doesn't support percentage setting. Also I tried to avoid setting Special product by product. 

Your advice would be greatly aprpeciated. Thanks.

9,968 Points
2014-06-17 9:55 pm
Hello Elle, and thanks for your comment.

Unfortunately this capability is not build into OpenCart by default. You would probably need to look for a <a href="" target="_blank">percentage special OpenCart extension</a>. It looks like there is one called simply <a href="" target="_blank">Add Percentage to Specials</a> that seems to do what you're asking.

Although I'm not sure if that one will still require you to set a special price per item instead of at the category level. So you might have to look around a bit in the OpenCart extension directory for one that seems to meet your needs just right.

Please let us know if you had any other questions at all!

- Jacob
n/a Points
2014-07-03 5:49 pm

Hi There, I have a situation where I have a product with a retail price of $30, a special price of $27 and a discount price of $25 if 5 or more items are purchased. The problem is when 5 or more items are added to the cart they are added at the special price ($27) not the discount price ($25). Is there a reason for this?



9,968 Points
2014-07-03 5:59 pm
Hello Mike,

When coming up with a price for a product, OpenCart places higher priority on the <strong>Special</strong> price, and it will be used in place of the <strong>Discount</strong> price.

The reason for this is that <strong>Discount</strong> prices are generally treated as longer term reductions in cost. While a <strong>Special</strong> price is considered a shorter reduction term (holiday sale, black Friday, cyber Tuesday, etc.).

It looks like in the OpenCart forums there is talk about a <a href="" target="_blank">vQmod to ignore special price when a discount is set</a>. That might be one possible solution to your problems.

- Jacob
n/a Points
2014-07-03 6:03 pm

Thanks Jacob, I had feeling this was the case. I will look into the vqmod fix.

I appreciate the quick response.



9,968 Points
2014-07-03 6:05 pm
Hello Mike,

No problem at all, if you're interested, we do have a guide on how to <a href="" target="_blank">install vQmod for OpenCart</a> which might assist you.

- Jacob
n/a Points
2014-07-05 11:59 pm

Hi, this is helpful. However, after an order is placed with special or discounted price, you will see the unit price on the invoice is still the regular price but the total price is calculated with discount/ special price. This causes a confusion for customers. Is there any way to fix this ?

9,968 Points
2014-07-06 5:12 am
Hello Jimmy,

Are you running the latest version of OpenCart which is <span style="color: red;"></span>?

I was unable to replicate this problem in my own store. With either a <strong>Discount</strong> or a <strong>Special</strong> activated. I went through as a customer and everything calculated correctly, then after the order was placed I went in on the admin side and printed the invoice and it was correct there as well.

It looks like the data should be coming from your <span style="color: red;">/admin/view/template/sale/order_invoice.tpl</span> file:

<pre class="code_block" style="margin: -10px 0px -30px 0px; line-height: .9em"> &lt;td align="right"&gt;&lt;?php echo $product['quantity']; ?&gt;&lt;/td&gt;
<span style="color: red;">&lt;td align="right"&gt;&lt;?php echo $product['price']; ?&gt;&lt;/td&gt;</span>
&lt;td align="right"&gt;&lt;?php echo $product['total']; ?&gt;&lt;/td&gt;

Please let us know if you're seeing the same thing in your <span style="color: red;">order_invoice.tpl</span> file, and what version of OpenCart you are running.

- Jacob
n/a Points
2014-07-06 11:21 am

Hi, thanks for replying

    i am using 1.5.6 and im seeing the samething in my order invoice.tpl. the following is snapshots.

n/a Points
2014-07-06 11:24 am

Thanks for replying

     I found those 3 lines and they are exactly the same. im useing 1.5.6

9,968 Points
2014-07-06 7:07 pm
Hello again Jimmy,

Thanks for responding with screenshot examples. Just to make sure we're looking at the same invoice screen, how are you getting to that point? Also I'm running <span style="color: red;">OpenCart</span> so not sure if you have an older version than that possibly.

To access the invoice, I am logging into the admin, going to <strong>Sales &gt; Orders</strong>, placing a checkmark to the left of the order, then clicking on <strong>Print Invoice</strong>.

Also, do you have both a special price, and a discount price associated with the item? I'd be interested to know if you just had only one or the other enabled for a product, does it still show the original price on the invoice instead?

Do you have any custom addons, templates, themes, or anything else running on OpenCart? As like I said I'm unable to re-create this behavior on a fresh OpenCart install, so it looks like the functionality to display either a special or discount price on the invoice should be there already.

- Jacob
n/a Points
2014-07-12 5:34 pm

Hi Jacob, I will like to know if there is any part of the opencart that allow a particular product to visible to a particular customer group only, or any plugin that can do that. I only know of the SPECIAL & DISCOUNT, which the product still show for all groups.

11,186 Points
2014-07-14 10:01 am
It appears that there is an OpenCart extension that will allow you to restrict categories to certain customer groups only. While we have never tested this extension, it was recommended on the OpenCart forums and appears to work well.

<a href="">Restrict By Customer Group OpenCart extension</a>
n/a Points
2014-07-14 2:43 pm

Thanks bro, you are awesome

n/a Points
2014-07-18 4:10 pm

I am able to create the discounts and specials, but is there a way to visually show customers that the items is on sale? For example, post the original price crossed out and the sale price in red? I see this a lot on sites and would like that look. Thanks!

31,871 Points
2014-07-18 4:50 pm
Hello Cathy,

The steps above show the original price crossed out and the sale price - but not in red. The original price get's marked out (and it's in red), but the discount price is in black. You can assign it to groups and also to a specific date span. If you want more functionality, then you will need to look for an OpenCart Add-on/Extension.

Hope that helps!

If you have any further questions, please let us know.

Arnel C.
n/a Points
2014-10-14 7:27 am

I am adding dicount on my product but it is not showing on site i am using 1.5.6 version please help.

11,186 Points
2014-10-14 8:56 am
Have you selected the customer groups for the discount to display on? Are your start and end dates set properly?
n/a Points
2014-10-16 1:15 am


Yes by default the "default" group is selected, i don't mde a new group and dates are also correct please help.

22,444 Points
2014-10-16 8:54 am
Hello sid,

Thank you for contacting us. We are happy to help, but will need some additional information.

Have you tried clearing your browser cache?

Can you provide a link to the website?

What version of OpenCart are you running?

What 3rd party Themes/Addons are you using?

Thank you,
n/a Points
2015-01-08 7:01 am

Hello and happy new year. I'm new to openkart would like to ask. I define these specials normally appear on the homepage. When I click on the product and choose different sizes and colors it doesnot shows the specials. Ιs there a solution to  update automatically and color options and sizes to specials? 

Without use option stock.

36,223 Points
2015-01-12 3:41 pm
Hello Stefanos,

If you could provide some examples of what you are having trouble with that may help us understand. Please be as specific as possible so we may be able to recreate the issue to be able to troubleshoot it better for you.

Kindest Regards,
Scott M
n/a Points
2015-01-24 5:13 am

Hello all.

I'm new to opencart and have a specific need regarding discounts that I hope you can help me with...

If someone buys one product it is £2.50 and any more purchases of this product are at £1.50.

If I use discounts, all of this product's prices are lowered including the first- I need the first to stay at 2.50 and all others to be 1.50.

Any suggestion as to the best way of doing this?

Many thanks


31,871 Points
2015-01-26 12:56 pm
Hello Steve,

It sounds like you may need to get an extension to help with this issue. Basically, it would be a quantity-based discount where you saying that if they buy ONE of the product, then the rest of the purchases for that product are at a discounted price. There are several discount extensions that may work. You will need to check it out to see which one works best for you.

Arnel C.
n/a Points
2015-01-31 12:51 pm

How do i delete images from the Image folder without deleting the folder itself?  Can somebody help me with this.  I ask because as I was in the Image window, I clicked on an image, it was then marked in blue color,but when I hit delete, it deleted my entire folder with all my images. PLEASE HELP!  Thanks a mill.





36,223 Points
2015-02-02 3:00 pm
Hello Abica,

We need a little more information. Please provide the version of OpenCart you are using and step by step instructions on what you are doing so that we may attempt to duplicate. Once we can see what you are doing, we may be able to advise.

Kindest Regards,
Scott M
n/a Points
2015-06-04 12:10 am


After I done setting the special price, my customer said they can't buy the product with speicial price, when check out the product change back to original price. 


How can I make the setting so everyone can buy special price without having log in to purchase? I want the setting to let every customer can buy at special price without log in.


Thank you very much!!!


22,444 Points
2015-06-04 11:25 am
Hello Fyn,

Thank you for contacting us. When you setup the "Special price," make sure you are selecting the correct "Customer Group."

This should ensure it is available for the selected users.

Thank you,
n/a Points
2015-11-21 9:07 pm

How come all the discounts don't apply to the product options? That seems like a massive failre on the dev's side. There should be a native option to be able give a -20% or whatever off the cost of the product total with options included...


Instead of only giving the discount off the base price. I have been looking all over and have found no other way to do this.

n/a Points
2015-11-26 4:48 am


Is there a way to create specials and discounts for multiple customer groups or all groups by default. This can also be done if Opencart has Nested Group facility.


Further, can we get a report of sales by customer groups?

9,090 Points
2015-11-27 5:11 pm
Hello Manish,

You may want to look in a plugin like this one as I do not see a default way to do this. Also this plugin allows you to create reports based on customer groups.

Best Regards,
TJ Edens
n/a Points
2016-01-13 7:42 pm

I have a situation where I created the following inputs as following49 £3.50

99 £3.10199 £2.69All working fine however everything under 49 goes back to the cheapest price which is not true.

If I add value 1 at £3.50 than it changes my display price to £3.50 I would like to have display price at £2.69Can someone help me to create the following discount prices ?

1-49 £3.50

50-199 £3.10

200 -   £2.69

31,871 Points
2016-01-14 2:59 am
Hello Henry,

I looked at this issue with OpenCart and it appears that MULTI discount is not something that is a strong suit of OpenCart's native options for discounts. The best solution for this issue is to look at the extensions that you can purchase: OpenCart Discount module . There are many more modules that can do the same thing, this one is just one example. I hope that helps to solve your problem! If you require further assistance, please let us know!

Arnel C.

Post a Comment

Email Address:
Phone Number:

Please note: Your name and comment will be displayed, but we will not show your email address.

33 Questions & Comments

Post a comment

Back to first comment | top

Need more Help?


Ask the Community!

Get help with your questions from our community of like-minded hosting users and InMotion Hosting Staff.

Current Customers

Chat: Click to Chat Now E-mail:
Call: 888-321-HOST (4678) Ticket: Submit a Support Ticket

Not a Customer?

Get web hosting from a company that is here to help. Sign up today!