Advanced Coupon Restrictions for WooCommerce Changelog

2.2 – 2026-09-22

  • NEW New “Except” section on the user restrictions, to block chosen customer accounts and email addresses from using a coupon, whatever the other restrictions allow
  • NEW Blocked email addresses accept wildcards, so you can block a whole domain at once, and are checked against the email entered at checkout as well as the account email, so they work for guest customers too
  • NEW New “Only for” section on the user restrictions, to reserve a coupon for chosen customer accounts, which unlike an email restriction cannot be used by anyone who simply knows the address
  • NEW The user roles restriction now has a “Guests (not logged in)” option, so a coupon can be allowed for chosen roles and guest shoppers at the same time, for example customers and guests but not wholesalers
  • NEW The coupons list now links the usage count to the orders that used each coupon
  • TWEAK WooCommerce no longer lists the plugin as untested with the Cart and Checkout blocks
  • TWEAK The license key is now hidden as you type it, instead of being shown in full on the settings screen
  • TWEAK Activating the plugin now takes you straight to its settings page, where the license key goes
  • FIX A coupon that combines a product taxonomy restriction with a quantity or user restriction now enforces both. The taxonomy check could previously re-approve a coupon that a quantity or user rule had already turned down
  • FIX Coupons no longer cause a fatal error when a product or a taxonomy term they were set up with has since been deleted
  • FIX Coupons applied to an order in the admin are now checked against that order’s customer, instead of against the staff member placing it, so user, role and amount-spent restrictions work when you order on a customer’s behalf
  • FIX WPML: tag/category exclusion restrictions now correctly apply in translated languages, not just the coupon’s original language
  • FIX WPML sites using a different domain per language: the license is now recognised as active in situations where it previously read as inactive, switching every restriction off
  • FIX Clearing the license key now actually clears it, instead of leaving the plugin reporting the license as active until the page was reloaded
  • FIX A license key that fails to activate is now cleared and reported with an error, instead of being saved while nothing works
  • FIX Guest shoppers trying a coupon restricted to specific user roles now see a message explaining why, instead of a generic error or, in some cases, the error message left over from another coupon
  • FIX Subscription restrictions applied to an order in the admin now look at that order, so a renewals-only coupon works on a renewal and a coupon excluded from renewals is correctly refused on one
  • FIX Coupon groups can no longer be managed by Editors, matching the capability the menu already required
  • DEV Coupon validation no longer writes PHP warnings to the log when the checkout has no state field
  • DEV Hide the license key field and the renewal link (which includes the license key) on our demo sites
  • DEV Updater v13.4
  • DEV The release ZIP no longer includes CHANGELOG.md
  • DEV Tagging a release now rebuilds the translation template and sends it to our translation site, so new strings are ready to translate straight away
  • DEV Tested up to WordPress 7.2-alpha-63789 and WooCommerce 11.2.0-beta.1

2.1 – 2026-06-04

  • NEW WooCommerce Subscriptions: new restriction tab to allow or disallow coupons for new subscription initial orders and renewal orders
  • FIX “Billing or shipping” country and state restrictions now correctly accept the coupon when at least one address matches, instead of requiring both
  • FIX Postcode interval matching no longer corrupts subsequent exact/wildcard checks when mixed in the same postcode list
  • FIX State and postcode restrictions now work correctly on the blocks checkout
  • DEV Tested up to WordPress 7.1-alpha-62456 and WooCommerce 10.8.0-beta.2
  • Update live from WordCamp Europe 2026

2.0 – 2026-05-25

  • TWEAK Add WooCommerce-style “And” separators between coupon restriction subsection groups in admin
  • FIX Remove debug hardcoded “user spent” value that could bypass spending-based coupon restrictions
  • FIX Correct postcode interval matching for non-numeric ranges in billing and shipping validations
  • FIX Persist saved “Type of address” value on coupon edit screen
  • DEV Remove debug console.log from coupon admin screen script
  • DEV Update GitHub Actions for the Naked Cat Plugins organization
  • DEV Tested up to WordPress 7.1-alpha-62411 and WooCommerce 10.8.1

1.9 – 2026-02-13

  • FIX Build release ZIP GitHub action to make sure WordPress detects a direct upload as the same plugin instead of creating a new folder

1.8 – 2026-02-03

  • FIX False positive restrictions were applied when coupons were automatically generated by 3rd party plugins instead of created in the admin interface
  • FIX Rename filters for taxonomy terms to be excluded to ptwoo_coup_res_tax_exclude_ids instead of ptwoo_coup_res_tax_ids which is for terms to be included
  • DEV Improve WordPress Coding Standards
  • DEV Updater v13.1
  • DEV Implement automated release GitHub actions
  • DEV Tested up to WordPress 7.0-alpha-61557 and WooCommerce 10.5.0-rc.2

1.7 – 2025-07-03

  • NEW New taxonomy “Coupon groups” to allow for better WooCommerce coupons organization
  • DEV Tested up to WordPress 6.9-alpha-60403 and WooCommerce 10.0.0-rc.2

1.6 – 2025-04-17

  • NEW We are now called Naked Cat Plugins 🎉
  • NEW Quantity based restrictions: minimum and maximum number of items in cart
  • NEW Quantity based restrictions: minimum and maximum number of unique products in cart
  • DEV Tested up to WordPress 6.8 and WooCommerce 9.8

1.5 – 2024-11-15

  • FIX Fatal error when WooCommerce is running update routines for 9.4
  • DEV Implement demo mode (for internal usage)
  • DEV Tested up to WordPress 6.7 and WooCommerce 9.4.1

1.4 – 2024-10-30

  • FIX Checkout failed when no postcode restriction was set
  • DEV License validation on websites with WPML set to have different domains per language

1.2 – 2024-10-23

  • FIX Updater

1.1 – 2024-10-15

  • FIX Several i18n strings

1.0 – 2024-10-10

  • First release