Zen Cart custom software development, Zen Cart modules, Zen Cart Expert eCommerce with Zen Cart!

OpenCart Discount chooser

OpenCart Discount Chooser

An OpenCart discounting module allowing vendors to promote related items.

Example Discounts: I have provided several examples of OpenCart Discount Chooser discounts.

Relevance: OpenCart 2.3. Does not work with 3.x

Current Version: 1.0
Occasionally, new features are documented prior to being publicly available; please check the version history to ensure the feature you want is available in your version.

Support Thread: Discount Chooser Support Thread

Cost: $45.00 (Note: this low price covers software only for self-installation.)

Buy Now

Would you like to ask me questions before buying? I'm happy to help likely purchasers make the right decision. Please use my contact form.

Installation Difficulty: Easy

Installation Instructions: click here

Common Installation Issues: click here

Location: OpenCart Extensions page, under Order Totals

Download: Discount Chooser On OpenCart Extensions Page

FAQ: click here

Video: You can watch a discount being created and tested in Discount Chooser for OpenCart in this video:

Additional discounting ideas are shown in examples of OpenCart Discount Chooser discounts.

Here's a longer video, showing three examples of discounts that can be created with Discount Chooser.


Discount Chooser is a discounting module for OpenCart. It allows you to create discounts based on items which are currently in the cart, such as:
  • Buy one, get one free
  • Buy one, get one half off
  • Buy one item from a category, get another item from that category at a discount
  • Buy two of one item, get another item at a percentage discount
  • Buy one of one item, get your choice of several other items for a fixed dollar off discount
I haven't completed the software yet, but you can see the progress I'm making by following the story of Discount Chooser for OpenCart Development on my blog.

Discount Chooser Mega Module allows you to specify up to 12 conditions (required purchases) of products or categories, and up to 12 possible gifts or discounted items. This means you can create "buy-one-get-one" style discounts with lots of flexibility in setting both the requirements and the discount.

Discount Chooser Initial Screen

OpenCart Discount Chooser Admin Panel

The initial screen for Discount Chooser (which you reach from Admin > Catalog > Discount Chooser Offers) shows a list of the discounts you have created so far. You can see there are two discounts; one is "Buy an iPhone, get a Palm Treo Pro free," and the other is "Buy a Sony VAIO, get a SyncMaster for 50% off."

You can temporarily disable a discount using the power button at the right, or completely remove it using the trash can button. (There is no edit capability yet.) Here's what discounts look like when they are temporarily disabled:

Discount Chooser Initial Screen with Disabled Discounts

OpenCart Discount Chooser Admin Panel

Note the strikethrough on the offer text and the "N" in the Active column.

Looking at the top right, you see a "plus sign" button. This brings you to a new screen which permits you to create another discount.

Discount Chooser New Discount Screen

OpenCart Discount Chooser Admin Panel

At the top of the screen you see the "conditions" required to get the discount - what the cart needs to contain. At the bottom, you see the discounted items and how much they are discounted by.

Discount Chooser Discount Creation

This is what the screen looks like for one possible discount.

OpenCart Discount Chooser Admin Panel

This discount is the first one we saw on the listing page: "Buy an iPhone, get a Palm Treo Pro free." Here are the lists for the conditions and for the discounted items. As you can see, only specific numeric values (or All Products/One Each of) are permitted.

OpenCart Discount Chooser Conditions Dropdown

OpenCart Discount Chooser Gifts Dropdown

Checkout Process displaying Discount Chooser Discount

Shopping Cart page showing Discount Chooser discount

Checkout page showing Discount Chooser discount

Above you can see the shopping cart page and the checkout page with the Discount Chooser discount. Discount Chooser is an order total module, so it is shown as a line item in the checkout; the prices of individual items are not reduced.

Examples of Discount Chooser Discounts

You can see the discounts configured below running in a live shop in this video:

Here's what these three discounts look like in a list. We'll walk through them one by one so you can see them being created.
OpenCart Discount Chooser Admin Panel

Discount Chooser Example 1

OpenCart Discount Chooser Admin Panel

In example 1, the customer can buy a MacBook Pro, and get any 2 items from the Nikon D300, Canon EOS 5D and Samsung Galaxy Tablet for free. So a customer could buy the MacBook and get two Nikon D300s for free, or they could get a Nikon D300 and a Samsung Galaxy Tablet for free.

Discount Chooser Example 2

OpenCart Discount Chooser Admin Panel

In example 2, the customer can buy a MacBook Pro, and get one each of from the Nikon D300, Canon EOS 5D and Samsung Galaxy Tablet for free. So if the customer got the MacBook and get two Nikon D300s, and a Samsung Galaxy Tablet, the tablet would be free but only one of the Nikon cameras would be. They could add on a Canon EOS 5D, but not a second Nikon camera for free.

Discount Chooser Example 3

OpenCart Discount Chooser Admin Panel

In this one, we'll flip it around. If the customer buys the Nikon D300, Canon EOS 5D and Samsung Galaxy Tablet, they get a MacBook Pro for $300 off. It's a "kit" discount.

Category Handling

Note that a Category is defined as "any ancestor category" in OpenCart Discount Chooser. Ancestors are determined using the product_to_category table.

Men's Clothing  (Category 7)
     ---->  Shirts (Category 12)
            -------> shirt A 
                     shirt B
                     shirt C 
     ---->  Discounted Shirts (Category 13)
            -------> shirt A 
                     shirt D
                     shirt E 
In this example, the parent category of "shirt A" can be category 12 (Shirts) or category 13 (Discounted Shirts), or category 7 (Men's Clothing). (This is different from Better Together, which uses just the parent category when matching to categories.)

Installation Instructions:

  1. Back up everything! Try this in a test environment prior to installing it on a live shop.
  2. Copy the contents of the folder you have unzipped to the root directory of your shop. All files are new; there are no overwrites. There is one vqMod, so you must have vqMod running in your cart.
  3. Login to admin and in Extensions > Extensions > Order Totals you will see 'Discount Chooser' listed along with all the other modules available. Click the "+" button to install it, and change the Status to Enabled.
  4. Go to Catalog > Discount Chooser Offers. Click the "+" sign at the top to add Discount Chooser offers. Once you have offers, they may be enabled or disabled using the power button, or deleted using the trash can button on the right hand side of each offer.

Installation Problems:

The most common installation problems for this module are as follows:
  1. During the installation of Discount Chooser, performing the step Extensions > Extensions > Order Totals > Better Together > Install, and then setting Status to Enabled.
  2. Sometimes the problem will be shown in the OpenCart error log - check in Admin > System > Maintenance > Error Logs


Look for "Discount Chooser Marketing" as a separate extension coming soon.

Major Versions

  • 1.0 06/07/17 First Release


Q: What's the difference between Better Together and Discount Chooser?
A: Better Together only permits pairs of items to be discounted together, such as two products, or one product and one item from a specific category. Discount Chooser permits the creation of "Buy 2, get 1", "Buy 3 get 1," or "Buy some number, get a choice of some number." So Better Together can be thought of as a subset of Discount Chooser.

I charge a fee of $45 for OpenCart Discount Chooser. The fee covers software only; installation is extra if you require help. Buy Discount Chooser!
The fee covers software only; installation is extra if you require help.

If you prefer, you may Buy Discount Chooser on the OpenCart Marketplace.