WooCommerce Extended Coupon Features

Wordpress Plugin
Download latest - 3.2.9



Download Stats

Today 140
Yesterday 76
Last Week 1,523
All Time 128,941

"WooCommerce Extended Coupon Features" adds functionality to the WooCommerce coupons and allows for automatic discount rules. Very easy to use, the functionality is conveniently integrated to the WooCommerce Edit Coupon panel.

Requires: * WooCommerce 3.0 or newer (5.0+ recommended) * PHP 5.6 or newer (7.2+ Recommended) * WordPress 4.9 or newer

Full documentation is available at www.soft79.nl.

  • Auto coupons: Allow coupons to be automatically added to the users cart if its restrictions are met,
  • Apply coupon via an url,
  • Restrict coupon by shipping method,
  • Restrict coupon by payment method,
  • Restrict coupon by a combination of products
  • Restrict coupon to certain customer roles
  • (PRO) Add free products to the customer's cart based on coupon rules
  • (PRO) Allow a cart discount to be applied based on quantity / subtotal of matching products
  • (PRO) Set Auto Coupon priorities (Useful for 'Individual Use Only'-coupons)
  • (PRO) Restrict coupon by shipping zone
  • (PRO) Allow coupon for first purchase only
  • (PRO) API to allow developers to use functions of this plugin

For more information or the PRO version please visit www.soft79.nl

Example: Auto coupon

Let the customer have a discount of $ 5.00 when the cart reaches $ 50.00.

  1. Create a coupon, let's name it auto_50bucks and enter a short description e.g. $ 50.00 order discount
  2. On the General tab: Select discount type Cart discount, and set the coupon amount to $ 5.00
  3. On the Usage restrictions tab: Set minimum spend to $ 50.00 and check the Auto coupon-box

Voila! The discount will be applied when the customer reaches $ 50.00 and a descriptive message will be shown.

If the restrictions are no longer met, it will silently be removed from the cart.

Example: Apply coupon via an URL

Apply coupon through an url like this:

  1. Use the url www.example.com/url-to-shop?apply_coupon=my_coupon&fill_cart=123

Voila! Any coupon can be applied this way. Please note that an empty cart can not contain any coupons. Download the free Cart Links for WooCommerce-plugin to handle the 'fill_cart'-part of the url.

This plugin has been tested in combination with WP-Multilang.

Releases (50 )

Version Release Date Change Log
3.2.9 2022-06-10

Release Date - 2022-01-16 - FIX: Last update broke BOGO. (Thanks for informing us, Celian)

3.2.8 2021-11-19

Release Date - 2021-11-19 * FIX: Remove autocoupon, better detection if it was removed manually * FIX: (PRO) Free products: Better variation attributes support

3.2.7 2021-02-13

Release Date - 2021-02-13 * FIX: User restrictions on backend orders

3.2.6 2021-01-16

Release Data - 2021-01-16 * (PRO) FIX: Don't display free product selection when there are no items to choose from * FEATURE: 'Table Rate Shipping' by WooCommerce compatibility

3.2.1 2020-08-19

Release Date - 2020-08-18 * (PRO) FEATURE: Filter 'wjecf_free_products_to_apply_for_coupon' * (PRO) FEATURE: Filter 'wjecf_bogo_products_to_apply_for_coupon'

3.1.4 2020-03-28

Release Date - 2020-03-28 * (PRO) FEATURE: Restrict coupon by shipping zone

3.1.2 2019-09-18

Release Date - 2019-09-18 * (PRO) FEATURE: Filter wjecf_is_first_purchase

3.1.0 2019-05-21

Release Date - 2019-05-21 * TWEAK: Remove domainname from redirect url after using ?apply_coupon= * (PRO) FIX: Free products: Don't apply a product that is not purchasable * (PRO) TWEAK: Call WC core add_to_cart instead of custom add_to_cart-function * (PRO) TWEAK: Free product selection: Show variation attributes in product title

3.0.5 2018-11-10

Release Date - 2018-11-10 * (FREE) FIX: 'Auto coupons'-settings not visible in FREE version * (PRO) FIX: Limit discount to: in combination with WC < 3.2 * (PRO) FIX: Added quantity to 'woocommerce_add_cart_item_data'-filter (Fixes crash WooCommerce Product Addons)

2.6.5 2018-10-28

Release Date - ????-??-?? * FIX: Limit discount to: in combination with WC < 3.2

3.0.4 2018-10-21

Release Date - 2018-10-12 * FIX: Auto coupons: silently remove invalid coupons * FIX: WPML compatibility issue with "CATEGORIES AND" * (PRO) FIX: CSS of the column system (box-sizing: border-box)

3.0.3 2018-10-21

Release Date - 2018-10-12 * FIX: Auto coupons: silently remove invalid coupons * FIX: WPML compatibility issue with "CATEGORIES AND" * (PRO) FIX: CSS of the column system (box-sizing: border-box)

3.0.2 2018-09-05

Release Date - 2018-09-03 * FIX: Email restrictions compatibility with WooCommerce versions prior to 3.4 * FIX: Individual use conflict * FIX: (FREE) Missing debug template

3.0.1 2018-09-02

Release Date - 2018-09-02 * FIX: Fatal error in FREE version of the plugin * FIX: Require PHP5.4

3.0.0 2018-09-02

Release Date - 2018-09-02 * IMPORTANT: Requires WooCommerce 3.0+ WordPress 4.8+ and PHP 5.3+ * FEATURE: Filter 'wjecf_apply_with_other_coupons' to disallow certain coupon combinations * FEATURE: Update order review on payment/billing email change on checkout page (see settings page) * FIX: Auto-coupon check usase limits per user and respect email restriction wildcards * FIX: Auto-coupon in combination with individual_use respects exception filters * FIX: Coupon queueing: Case sensitive coupon code compare issue * FIX/PERFORMANCE: Rewritten handling of auto-coupons. Performance improvement * (PRO) ENHANCEMENT: Free products: Better handling and performance of cart ajax events * (PRO) FIX: Duplicate notices when enqueuing a coupon * INTERNAL: Removed code for backwards compatibility with WC versions prior to 3.0 * INTERNAL: Rewritten boot-process. Class auto-loading. Code cleanup.

2.6.4 2018-08-17

Release Date - 2018-08-16 * FIX: Download JSON compatiblilty issue with WC 2.6.x * FIX: WPML Translate coupon title

2.6.3 2018-06-04

Release Date - 2018-06-04 * FIX: WJECF_Controller: Don't use wp_get_current_user() for admin-orders * FIX: WJECF_Controller: Don't use WC()->cart->subtotal for admin-orders * FIX: Possible division by zero when calculating multiplier value * FEATURE: Filter 'wjecf_coupon_multiplier_value' to allow overriding the coupon's multiplier value

2.6.2 2018-04-02
  • FEATURE: Auto-coupon compatibility with the 'WooCommerce Free Gift Coupons'-plugin
  • FIX: CATEGORIES AND in combination with variable products
  • FIX: Call to undefined function wc_add_notice()
  • FIX: (PRO) First order purchase: Ignore cancelled/waiting for payment order statuses
  • FIX: (PRO) Auto updater plugins_api return $def instead of false 2018-01-31

Release Date - 2017-12-24 * FIX: (PRO) Possible crash on null reference in filter woocommerce_coupon_get_discount_amount 2017-12-04

Release Date - 2017-12-04 * FIX: Typo 'impode' (Thanks to Constantine for reporting)

2.6.0 2017-12-02

Release Date - 2017-12-02 * ADMIN: Compatibility with coupons added on the Order page from wp-admin (requires WC3.3+) * ADMIN: Show 'settings' link on the plugin screen * INTERNAL: Moved debugging functions to WJECF_Debug. Use template/log.php for output rendering of the log * (PRO) FEATURE: Limit coupon to first time purchase only * (PRO) ENHANCEMENT: Free products: Better grid layout of the free product selector * (PRO) ENHANCEMENT: Free products: Auto submit of selection (works for inputs in container with class 'wjecf-auto-submit') * (PRO) FIX: Free products: Respect "sold individually" when adding free products to the cart * (PRO) FIX: Free products: WC2.6 compatibility (product->get_status())

2.5.4 2017-09-23
  • TWEAK: Get coupon description using WC_Coupon::get_description() to respect applicable filters (for example used by Polylang)
  • (PRO) FEATURE: Allow customer to remove 'Auto Coupons' from the cart (see settings page)
  • (PRO) FEATURE: Filter 'wjecf_get_limit_to_options' to allow adding custom 'Limit to'-options
  • (PRO) PERFORMANCE: Free products: Only load js and css when required
  • (PRO) FIX: Free products: "update cart"-button not automatically enabled after selecting a free product (in combination with certain themes (e.g. Flatsome)
  • (PRO) FIX: Free products: Prevent certain plugins from parsing attribute fields containing [products] as shortcode
  • (PRO) FIX: Limit discount to cheapest item failed in WC3.0 in combination with a percent discount
  • (PRO) FIX: Custom fields: Accept WC3.0 core fields (e.g. _price)
  • (PRO) FIX: PHP Warnings in WJECF_Pro_Admin_Auto_Update
2.5.1 2017-05-29
  • (PRO) FEATURE: Free product selection using checkboxes / numeric inputs
  • (PRO) FIX: Free product selection fails if coupon code contains a space
  • FIX: Draft settings not being saved
  • FIX: PHP < 5.5 compatibility
  • FIX: Abstract_WJECF_Plugin log function
  • INTERNAL: Functions add_action_once / add_filter_once. To guarantee execution only once.
  • INTERNAL: Updated the API example; also usable from CLI
  • INTERNAL: Created Sanitizer for form data handling
  • INTERNAL: Reorganised coupon meta handling ( Abstract_WJECF_Plugin::admin_coupon_meta_fields )
2.4.3 2017-04-23
  • FIX: Customer selector WooCommerce 3.0.0 compatibility 2017-04-13
  • FIX: WooCommerce < 2.7 compatibility
2.4.2 2017-04-13
  • FIX: Invalid calculation of subtotal/quantity of matching product since WC 3.0.0
  • FIX: Missing "PRODUCT AND/OR" selector on Admin since WC 3.0.0 (Javascript)
  • FIX: WooCommerce version detection if woocommerce is not installed in /wp-content/plugins/woocommerce directory
2.4.0 2017-04-03
  • FIX: WooCommerce 3.0.0 Compatibility
  • INTERNAL: Also load textdomain from WP_LANG_DIR/woocommerce-jos-autocoupon/woocommerce-jos-autocoupon-LOCALE.mo 2016-12-29
  • FIX: Combining add-to-cart and apply_coupon in a single querystring
2.3.7 2016-10-30
  • PERFORMANCE: Admin could hang in some occasions on a jQuery-selector
  • FIX: Suppresed warnings were displayed by the Query Monitor plugin if pro files are missing
  • FIX: WPML Compatibility
  • FIX: Invalid textdomain in woocommerce_coupon_error (Thanks, 7o599)
  • (PRO) FIX: 'Limit discount to' skipped non-matching products on cart % discount
  • (PRO) FEATURE: Limit discount to every nth (matching) item in the cart
2.3.6 2016-09-22
  • FIX: Compatibility with WooCommerce < 2.3.0 for coupon by url
  • COSMETIC: On the admin page, moved AND/OR selector near the product/categories input
  • (PRO) Filter matching products by custom field.
2.3.4 2016-06-22
  • FIX: WooCommerce 2.6 and UPS / USPS Shipping method compatibility ( those plugins use : as separator )
  • FIX: Coupon by url (hook on wp_loaded instead of init)
  • FIX: Admin pages invalid parsing of Chosen inputboxes WooCommerce < 2.3.0
  • FIX: Free product on WooCommerce < 2.3.0
  • INTERNAL: Rewritten overwrite_success_message methods
  • (PRO) Ajax 'Apply coupon' support for free product selection on cart and checkout page. (OVERRIDEABLE TEMPLATE FILES UPDATED!)
  • (PRO) FEATURE: Remember coupons that are not valid when applying (on the cart page) and apply them automatically when they validate
2.3.3 2016-05-14
  • FIX: limit_usage_to_x_items: Removed call to get_discount_amount from coupon_has_a_value; it is redundant and caused limit_usage_to_x_items to change
  • (PRO) FEATURE: Filters wjecf_free_product_amount_for_coupon, wjecf_bogo_product_amount_for_coupon and wjecf_set_free_product_amount_in_cart
  • (PRO) FEATURE: Keep track of by-url-coupons (?apply_coupon=) and apply when they validate
  • (PRO) FIX: Experimental feature 'Allow discount on cart with excluded items' didn't work since 2.2.3
  • (PRO) FIX: Invalid free product quantity applied when using both BOGO and FREE products in a single coupon.
  • (PRO) FIX: limit_usage_to_x_items: Possible wrong discount on combination of limit_usage_to_x_items and wjecf_apply_discountto
2.3.2 2016-03-28
  • FEATURE: Display custom error message when coupon is invalidated by this plugin
  • FIX: apply_coupon redirected to wrong url when home_url contained a subdirectory
  • FIX: Remove add-to-cart when redirecting for apply_coupon
  • FIX: Auto Coupon Backwards compatability for WooCommerce versions prior to 2.3.0 that don't have hook woocommerce_after_calculate_totals
  • TRANSLATION: Persian. Thanks to Ehsan Shahnazi.
2.3.1 2016-01-18
  • FIX: WPML Compatibility for AND Products / AND Categories
  • FIX: Redirect to page without ?apply_coupon
2.3.0 2015-12-14
  • (PRO) FEATURE: Allow customer to choose a free product
  • (PRO) FEATURE: Setting the priority of auto coupons (Useful for Individual use coupons)
  • (PRO) FEATURE: Display extra columns on the Coupon Admin page (auto coupon, individual use, priority, free products)
  • (PRO) TWEAK: Free products: Display 'Free!' as subtotal for free products, (adaptable with filter 'wjecf_free_cart_item_subtotal' )
  • (PRO) FIX: Free products: Plugin wouldn't always detect the free products in cart and kept appending free products
  • (PRO) Introduction of the API for developers, see wjecf-pro-api.php
  • FEATURE: Filter to only display Auto Coupons on the Coupon Admin page
  • FIX: Compatibilty PHP 5.4
  • FIX: Rewritten and simplified Autocoupon removal/addition routine making it more robust
  • FIX: Multiplier value calculation (as for now only used for Free Products)
  • FIX: Coupon must never be valid for free products (wjecf_free_product_coupon set in cartitem)
  • INTERNAL: Refactoring of all classes
  • INTERNAL: New log for debugging 2015-11-30
  • FIX: When checkbox 'Individual use' was ticked, Autocoupons would be removed/added multiple times
2.2.5 2015-11-29
  • FEATURE: BOGO On all matching products
  • FIX: Changed WooCommerce detection method for better Multi Site support
  • FIX: Free products: Fixed an inconsistency that could cause a loop on removal/adding of free variant products
  • TWEAK: Free products: Hooking before_calculate_totals for most cases but also on woocommerce_applied_coupon, which is required when one coupon is replaced by another
  • INTERNAL: Check if classes already exist before creating them
2.2.4 2015-11-23
  • FEATURE: Online documentation added
  • FEATURE: Use AND-operator for the selected categories (default is OR)
  • FIX: Backwards compatibility with WooCommerce 2.3.7 (WC_Cart::is_empty)
  • FIX: Backwards compatibility with WooCommerce < 2.3.0 (WC_Coupon::is_type, Chosen in stead of Select2)
2.2.3 2015-11-19
  • (PRO) FEATURE: Allow discount on cart with excluded items
  • (PRO) FEATURE: Free products!
  • FEATURE: Allow coupon in cart even if minimum spend not reached
  • FEATURE: New coupon feature: Minimum / maximum price subtotal of matching products in the cart
  • COSMETIC: Admin Extended coupon features in multiple tabs
  • FIX: Create session cookie if no session was initialized when applying coupon by url
  • TWEAK: Auto coupon: Use woocommerce_after_calculate_totals hook for update_matched_autocoupons
  • API: New function: $wjecf_extended_coupon_features->get_quantity_of_matching_products( $coupon )
  • API: New function: $wjecf_extended_coupon_features->get_subtotal_of_matching_products( $coupon )
2.2.1 2015-08-28
  • FIX: Prevent mulitple apply_coupon calls (for example through ajax)
  • FIX: Don't redirect to cart when using WooCommerce's ?add-to-cart=xxx in combination with ?apply_coupon=xxx as this would prevent the application of the coupon.
2.0.0 2015-08-11
  • RENAME: Renamed plugin from "WooCommerce auto added coupons" to "WooCommerce Extended Coupon Features"
  • FEATURE: Restrict coupons by payment method
  • FEATURE: Restrict coupons by shipping method
  • FEATURE: Use AND-operator for the selected products (default is OR)
  • FIX: Validate email restrictions for auto coupons
  • Norwegian translation added (Thanks to Anders Zorensen)
1.1.5 2015-03-20
  • FIX: Cart total discount amount showing wrong discount value in newer WooCommerce versions (tax)
  • Performance: get_all_auto_coupons select only where meta woocommerce_jos_autocoupon
1.1.4 2015-03-16
  • Translation support through .mo / .po files
  • Included translations: Dutch, German, Spanish 2015-03-02
  • FIX: Apply auto coupon if discount is 0.00 and free shipping is ticked
1.1.3 2015-02-27
  • Don't apply coupon if the discount is 0.00
  • Allow applying multiple coupons via an url using *?apply_coupon=coupon_code1,coupon_code2
1.1.2 2015-02-11
  • Minor change to make the plugin compatible with WooCommerce 2.3.1
  • Loop through coupons in ascending order
1.1.1 2014-09-05
  • Tested with Wordpress 4.0
1.1.0 2014-08-30
  • Allow applying coupon via an url using ?apply_coupon=coupon_code
1.0.1 2014-07-30
  • Don't add the coupon if Individual use only is checked and another coupon is already applied.
1.0 2014-07-05
  • First version ever!