"WooCommerce Extended Coupon Features" is an easy-to-use WordPress / WooCommerce plugin that adds functionality to the WooCommerce coupon system.
The functionality is conveniently integrated to the standard WooCommerce Edit Coupon panel therefore the plugin is extremely easy to use. Tested with WordPress versions up to 6.1 and WooCommerce versions up to 7.4.
What can be achieved with this plugin?
Create discounts that will automatically be applied to the customer's cart if certain conditions are met.
Simply configure a coupon as you always would have done and check the box 'Auto Coupon'. The discount will be displayed to the user by the description you enter.
For example: Automatically apply a discount of € 2.50 when the cart reaches € 40.00 as shown in the screenshot.
Give away free products
Create coupons or automatic discounts that will add one or more free products to the customer's cart when the restrictions are met. The product will be showed as a normal cart item, but with 'Free!' instead of the price displayed.
Optionally you can have the customer choose between various free gifts.
Limit discount to certain products only
The 'Limit discount'-option allows you to:
- Limit only the cheapest item in the cart.
- Discount every nth item; for example: Every 3rd item 50% discount.
- Limit discount to only 1 item per order-line.
Extended coupon restrictions
- Restrict coupon by shipping method,
- Restrict coupon by payment method,
- Restrict coupon by customer credentials or customer role
- Restrict coupon by a combination of products (e.g. buy both A and B and get 20% off!)
- Restrict coupon by amount of matching products (e.g. buy three products from category C and get a free product!)
Apply coupon using an url
Now you can easily create a link that will automatically apply a coupon to the user's cart, optionally in combination with a product.
?apply_coupon=coupon_code to the url. If you also want to add products to the cart with the same url, you can use
add-to-cart=product_id and optionally a quantity. Example:
You can find the id of a product on the WooCommerce Products-page.
Example: Auto coupon
Let the customer have a discount of $ 5.00 when the cart reaches $ 50.00.
- Create a coupon, let's name it auto_50bucks and enter a short description e.g. $ 50.00 order discount
- On the General tab: Select discount type Cart discount, and set the coupon amount to $ 5.00
- 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: Free gift
Let the customer choose a free gift if he purchases 2 or more items.
- Create a coupon, let's name it auto_free_gift and enter a short description e.g. Free gift!
- On the Usage restrictions tab: Set minimum quantity of matching products to: 2
- On the Free Products tab: Enter the free products the customer may choose from and tick the box 'Customer must select'
- On the Miscellaneous tab: Tick the box 'Auto coupon'
Now when the cart contains 2 or more items the customer can choose a free gift on the cart or checkout page.
Example: Apply coupon via an URL
Apply coupon through an url like this:
Voila! Any coupon can be applied this way.
Check 'Allow applying when invalid' to allow the customer to apply a coupon while the conditions are not yet met. If the customer opens the url when the conditions of the coupon are not yet met or the cart is empty the coupon won't be applied, instead the a message will be displayed: e.g. "Coupon will be applied once it's conditions are met". This message can be changed. Once the conditions are met the coupon will be applied automatically.
Example: Every 3rd item 50% off
The option 'Limit discount to:' offers a wide range of discounting options. This example shows you how to apply a 50% discount to every 3rd item in the cart:
- Create a coupon with Discount type 'Percentage discount' coupon with a discount value of 50%
- Set 'Minimum amount of matching products' to 3
- Set 'Limit discount to' to 'Every nth item'
- Optionally check the box 'Auto coupon' if the discount must be applied without the use of a coupon code.
What does debug mode do?
- It allows you (or us) to display the coupon settings by adding ?wjecf_dump=COUPON_CODE to the url
- It displays some debug information on the frontend after calling ?wjecf_log=1
- It logs more data to the debug log of the plugin (see wp-admin > WooCommerce > Status > Logs)
How do I upgrade FREE to PRO?
- Purchase the PRO version and download it from your account page
- Go to the wp-admin dashboard of your site
- Go to Plugins
- Deactivate and remove the FREE version of the plugin (don’t worry, no data will be deleted)
- Go to Plugins – Add new
- Click ‘Upload plugin’, upload the downloaded .zip file and click install
- Activate the plugin
Where is the documentation?
Here it is.
Why is the cart not updated after changing the billing email address?
By default WooCommerce doesn’t refresh the cart when changing the billing email address. If you have a coupon that is restricted by email address you need to do the following:
Go to Settings > WooCommerce Extended Coupon Features and enable the option ‘Update order review on billing email change‘.
Why is the cart not updated after changing the payment method?
By default WooCommerce doesn’t refresh the cart when the customer changes the payment method. If you have coupon(s) that may be added/removed when the customer chooses a different payment method you need to do the following:
On the settings page (Settings > WooCommerce Extended Coupon Features) check the box Update order review on payment method change.
Is this plugin translatable?
Yes, all string values are translatable through the supplied POT/PO/MO files. Currently this plugin has been translated to English, Spanish and Dutch.
Using qTranslate X, the coupon message for Auto Coupons can be translated using shorthand tags, e.g.
[:en]This is English[:es]Esto es Español[:].
In WPML translatable items appear in the context woocommerce-jos-autocoupon in “String Translations”.
Translation has been tested with WPML and qTranslate-X. Under certain circumstances WPML has caused some side effects.
How do I create a url that adds a coupon to the cart?
That’s easy! First find the url of the landingpage you want the url to link to. For example:
Optionally, to add a product using the same url, you can append
&add-to-cart=1234 where 1234 is the id of a product. You can find the id of a product on the WooCommerce Products-page.
Why isn’t my question in this list?
Please visit the support forum if you have another question.
Still have questions?
You have a question about functionality of this plugin? Please fill in the form and we'll answer it for you.