Ubercart Discount Coupons

Open Bugs: 
Development Status: 
Seeking co-maintainer(s)
Maintenance fixes only

** Sadly, I no longer have time to give this module the attention it deserves. If anyone is interested in becoming a co-maintainer, please post in the issue queue.

This module provides discount coupons for Ubercart stores.

Coupons are configured at Store administration > Coupons. Global settings for the module are configured at Store administration > Configuration > Coupon module settings.

A checkout pane, a cart pane and a block are available for customers to enter coupon codes, each of which can be enabled or disabled separately. Discounts can be shown as an item in the cart or applied on the checkout page.

Coupons can apply either a fixed price discount or a percentage discount to the order subtotal or to selected product prices. Coupons can be restricted to apply to specific products, product classes, SKUs, or taxonomy terms. Coupons can also be configured so they only apply between certain dates, a fixed number of times, when a fixed order quantity or order subtotal is reached, to specified users or roles, or any combination of these.

Bulk coupon codes can be created, each of which is given a randomised code, which can be individually restricted and distributed to customers as necessary.

A new report is added to the Ubercart reports page, showing you which coupons were used on specific orders and the total discounts that were applied.

In European stores where VAT is applied, the latest version of uc_vat now ensures discounts are now correctly calculated when product prices include tax.

Discount Coupon Purchase module

This submodule allows new coupons to be generated when a specific product is purchased. "Coupon creation" can be added to any product as a product feature. After checkout, a new coupon will be created and the code(s) will be emailed to the purchaser.

Discount Coupon User Registration module

Note: Discount Coupon User Registration has been removed from 7.x-2.x (see below).

This submodule allows coupons to be issued when a new user registers. In User management > User settings, after selecting an available coupon, newly registered users will be added to the restrictions list for the selected coupon and the code will be sent to them by email.


If you are providing 100% discounts using coupons, you may also need UC Free Order Payment Method (Drupal 5/6) or Ubercart Custom Payments (Drupal 7) to skip payment screens at checkout.

Please report any bugs in the issue queue. If you wish to sponsor a new feature, please contact wodenx or longwave.

Drupal 7

*** IMPORTANT NOTE: Ubercart 3.x Release Compatibility ***
Ubercart and uc_coupon for D7 are both under active development. You must make sure that you are using version of uc_coupon that is compatible with your version of Ubercart core.

Ubercart Version uc_coupn version
< 7.x-3.0-rc1 7.x-2.1-alpha3 or earlier
7.x-3.0-rc1 to -rc3 7.x-2.1-alpha4 or later
7.x-3.x-rc4 + 7.x-2.1-alpha6 or later

Note: The initial D7 port was performed in two stages: a basic port (7.x-2.0), and a major enhancement release as (7.x-2.1). The 2.0 branch is now deprecated and no longer supported..

New Features

  • The "Discount Coupon User Registration" (uc_coupon_register) sub-module has been removed from this version. Its functionality has been replaced by a new, more flexible "Discount Coupon Extended Workflow" module, which provides a Rules based implementation. This ships with a disabled default configuration illustrating how to issue a coupon when a new user registers.
  • Full support for multiple tax rates and tax-inclusive prices via uc_taxes (not uc_vat).
  • Additional token support.
  • More than one coupon per order (cf #390900: Multiple Coupons, one order
    ), including additional restriction options to control how coupons may be combined.Note that this feature must be explicitly enabled on the coupon settings page.
  • Automatic coupons (cf #1042438: Automatic application of Coupons Based upon criteria
    and #864478: Auto-apply coupon when conditions fulfilled
    ) via uc_coupon_workflow. Note that this requires enabling multiple coupons per order on the settings page.
  • Hooks for "coupon applied" and "coupon removed" (with associated rules integration through uc_coupon_workflow).
  • Customizable per-coupon line-item title and success messages.

With automatic coupons and customizable titles, it should be possible to use uc_coupon as a more general discount solution.


Original development by BlakeLucchesi, sponsored by Blankstyle and PixelOrganics.

Original Drupal 6 port by j0rd.

Bulk coupon creation and coupon purchase submodule sponsored by Ixis IT.

Drupal 6 port of coupon purchase submodule sponsored by Brett Marlin Creative LLC.

Drupal 7 port by wodenx, sponsored by Fishhound.

Release Dates: