With the upcoming release of AffiliateWP v2.6, we’ve greatly improved tracked affiliate coupons for sites using WooCommerce.

If you are familiar with AffiliateWP’s affiliate coupon tracking, you know how incredibly powerful it can be for your affiliate program.

However, it can quickly become frustrating when:

  • Newly registered affiliates need to have a tracked affiliate coupon automatically assigned to them
  • Existing affiliates need to have a tracked affiliate coupon
  • You need to manually add an affiliate and also create a tracked affiliate coupon for them.

For each scenario, you would need to manually create a new coupon for every single affiliate who needed one. For sites with many affiliates, this can become a very time-consuming process!

Further time is lost when affiliate coupons need to be updated. What if the coupon’s amount should be set lower, the coupon’s expiry extended, or the products applicable to the coupon changed?

Since every coupon is independent of one another, you would need to go through and update every single coupon.

We can do better.

To help solve these problems and save time, we’ve built upon AffiliateWP’s existing coupon capabilities with dynamic coupons.

For a more technical look into how dynamic coupons work under the hood, check out our development blog.

Dynamic coupons

Dynamic coupons are similar to AffiliateWP’s existing tracked affiliate coupons. They give customers a discount off their purchase, and they award an affiliate with a commission if the customer’s purchase is successful.

Here’s the main difference:

All dynamic coupons automatically inherit their settings from the designated “Coupon Template”.

Setting up dynamic coupons is simple:

  1. Create a coupon in WooCommerce
  2. Visit AffiliateWP’sSettingsCoupons tab
  3. Select the coupon from the “Coupon Template” setting and save.
The new "Coupons" tab where dynamic coupons is set up.
The new “Coupons” tab where dynamic coupons is set up.

Once a coupon is selected as the coupon template, incredible superpowers are bestowed upon your affiliate program:

Coupons can be automatically generated and assigned to new affiliates

There’s no longer any need to manually create and assign a coupon code for every single affiliate who registers (unless you want to of course).

Just enable the “Automatically Generate Coupons” option, and a dynamic coupon will be automatically generated for every new affiliate!

The "Automatically Generate Coupons" options within the Coupons tab.
The “Automatically Generate Coupons” options within the Coupons tab.

This also works with AffiliateWP’s “Require Approval” setting. Only once the affiliate is approved will they receive a dynamic coupon.

Coupons can be generated when an affiliate is manually added

You can now add an affiliate manually and generate a coupon for them at the same time!

A coupon can be created while manually adding an affiliate.
A coupon can be created while manually adding an affiliate.

We’ve also streamlined the process by tying in the “Automatically Generate Coupons” option mentioned earlier.

When enabled, the “Affiliate Coupon” option is checked by default, saving you time when adding more affiliates in the future. Of course, if you don’t want a particular affiliate to receive a dynamic coupon, you can uncheck the option before adding them.

Likewise, if “Automatically Generate Coupons” is disabled, affiliates do not automatically receive a coupon code when they register. You will see the “Affiliate Coupon” option unchecked by default, allowing you to enable it when you’d like the affiliate to receive a dynamic coupon.

Dynamic coupons can be easily updated

Over time, there could be hundreds, if not thousands of dynamic coupons assigned to affiliates. We know how much pain this would cause if every single coupon needed to be updated manually.

Since dynamic coupons inherit their settings, you only need to make one update to the coupon template! Once saved, all dynamic coupons will instantly use the new coupon settings.

This makes adjusting coupon settings extremely simple when a coupon’s expiry, coupon amount, or any other detail needs to change. Since the coupon template can be easily changed, it also allows you to rotate between various coupons, each having their unique settings.

We also wanted to keep your Coupons admin screen in WooCommerce tidy and easy to manage. As a result, only the coupon template will show.

Bulk generate dynamic coupons for existing affiliates

We have included a new tool at AffiliatesToolsCoupons to bulk-generate dynamic coupons for all existing, and active affiliates.

By default, a coupon code is only generated for affiliates who do not already have one, however coupon codes can be overridden by enabling the “Override existing coupon for all affiliates” checkbox option.

Visit Tools → Coupons to bulk generate coupons for all active affiliates.
Visit ToolsCoupons to bulk generate coupons for all active affiliates.

Manage coupons on a per-affiliate level

Dynamic coupons can be managed on a per-affiliate level by visiting the Edit Affiliate admin screen.

Provided a coupon template has been configured, you’ll be able to generate a new coupon for any affiliate by clicking the “Generate Coupon” button:

Generating a dynamic coupon for a single affiliate.
Generating a dynamic coupon for a single affiliate.

Likewise, after the coupon code has been created, you can remove it by clicking the “Delete Coupon” button:

A coupon code can be copied from input field, or deleted altogether.
A coupon code can be copied from input field, or deleted altogether.

Coupons can be shown to affiliates immediately after registration

The faster an affiliate receives their coupon code, the more likely they are going to start promoting your site.

We’ve added a new {registration_coupon} email tag. Use this in the “Application Accepted Email”, and an affiliate will see their new coupon code as soon as they receive their acceptance email.

The new {registration_coupon} email tag can be used within the Application Accepted Email
The new {registration_coupon} email tag can be used within the Application Accepted Email.
The affiliate's dynamic coupon will appear within their affiliate approval email.
The affiliate’s dynamic coupon code will appear when they’re accepted into your affiliate program.

New Coupons tab within the Affiliate Area

We’ve introduced a new “Coupons” tab to the Affiliate Area. An affiliate will only see it if they have a dynamic coupon, or if a coupon is manually assigned to them.

The new "Coupons" tab within the Affiliate Area. Shown with the WordPress "Twenty Sixteen" theme.
The new “Coupons” tab within the Affiliate Area. Shown with the WordPress “Twenty Sixteen” theme.

Previously, the Coupons tab was only possible with the Show Affiliate Coupons add-on. If you are using this add-on with AffiliateWP 2.6, you’ll be able to deactivate it and retain all functionality.

Dynamic coupons can be instantly disabled

There may be a time when you decide to turn off dynamic coupons. This can be done by either:

  • Setting the coupon template’s status to draft
  • Deleting the coupon template altogether
  • Unselecting the “Coupon Template” from AffiliateWP’s Coupons screen.

Disabled coupons will no longer work at checkout, and will show a “Coupon does not exist” message to the customer.

Likewise, affiliates will no longer see their dynamic coupon from within the Affiliate Area.

Show an affiliate their coupons with a shortcode

Like the Coupons tab, we’ve integrated the shortcode from the Show Affiliate Coupons add-on.

This allows an affiliate to see all their coupons (both dynamic and manually assigned) anywhere on your site where shortcodes can function. They will only see their coupons if they are an active and logged in affiliate.

New template file

Developers now have access to a new dashboard-tab-coupons.php template file. Modifying this template file will change the appearance of the Affiliate Area’s Coupons tab, as well as the shortcode.

Try dynamic coupons today

Today, we’re releasing a beta version of AffiliateWP v2.6, which includes the first iteration of dynamic coupons. In the coming weeks, we’ll be releasing the official version which may include further refinements.

Make sure to back up your site and database before using beta software.

If you’re using WooCommerce and would like to try dynamic coupons, check that you have opted-in to beta versions.

To enable beta versions, visit AffiliatesSettingsMisc from within the WordPress admin and enable the “Opt into Beta Versions” checkbox. Once changes have been saved, you’ll then see a new update notification on the WordPress Plugins page.

Opt in to the beta version from the Affiliates → Settings → Misc tab.
Opt in to the beta version from the AffiliatesSettingsMisc tab.

If you decide to try the beta we’d love to hear your feedback. Otherwise, look out for the official release of AffiliateWP v2.6 in the coming weeks!

Andrew Munro

About the author: Andrew Munro co-founded AffiliateWP in early 2014. His trusty treadmill desk allows him to write code at an incredible 3 mph, making him the fastest developer around.


    1. Thanks you Ihsan. EDD is definitely high on our list of integrations to support with dynamic coupons.

      For the second part of your request, are you wanting the affiliate to be able to customize the coupon code given to them? And/or request a coupon code themselves which could be reviewed by the site admin?

      1. Hello Andrew… I am not able to generate multiple Dynamic Coupons per affiliate? I see in the docutmentation that I should be able to create a coupns at several levels of discount. I have the corespondng Woo Coupon templates, but when I Generate for a new template, it is repalcing any exising coupon…

        1. Hey Steven! It’s not possible yet, but multiple dynamic coupons per affiliate is something we’ll be exploring. For now, the only way to assign multiple coupons to an affiliate is via tracked affiliate coupons (create a coupon in WooCommerce and then assign it to the affiliate manually).

          1. How exactly do we manually assign a coupon to an affiliate. I tried generating a coupon from WC and then adding it into the DB, the Coupon shows for the affiliate but the description is from the automatically assigned coupon. The default/automatic coupon is for 10% discount. The manually added one is for 5% but the text on the right reads 10% even for the 5% coupon.

      2. Yes, the affiliate can post or edit the coupon generated. I really need integration with easy digital downloads because now I use it to sell digital products. Affiliatewp with a coupon system for affiliates really helps the affiliate increase sales.

        Hopefully integration with EDD will come soon.

        thanks Andrew

  1. Also, potentially a way to easily fetch user metadata to serve as the default automatic coupon? ie: {firstname+lastname} Or as Ihsan mentioned, freedom to allow users to choose their own unique one? Thanks

  2. Hello,

    This is of course a great accomplishment. However, in the years I have been running a Shop & Affiliate program I have never had a affiliate request “hejzk8838”
    for a Coupon Code. Affiliates want a Custom Code, something that represents their name, or website, or company name usually followed by 10, or the coupon amount.

    i.e. – website10 or johndoe10

    I don’t see a randomly generated coupon code being desirable to any affiliate. It has to be something that’s easy to say, easy to write, and easy to remember.

    I think the solution is not making it random, but using the first part of the email address plus the coupon amount, or username with coupon amount at the end.

    Maybe add a field that allows you to choose the first part of the code (name / company) and a hyphen and then second part of the code (coupon amount).

    Just my thoughts and what I know our Affiliates would want.


    1. Thanks for your feedback, Justin! Having greater control over how the dynamic coupon codes appear for the affiliate is definitely on our radar for a future release 🙂

    1. Hi Joyce! We’re aiming to release v2.6 in a matter of weeks. If you’re comfortable with using the beta version, see the “Try dynamic coupons today” section above, Thanks!

  3. Please, I have a feature request. Can you make it possible for affiliates to buy coupon with their affiliate commission directly from their affiliate dashboard?. Such that affiliates can click a button to generate a coupon which can be used for discount on products and the corresponding amount is deducted from their account balance. I need this features on my website.

  4. Hello Andrew! Thanks for your post. Is there a way that a single coupon can be applied to simple products and simple subscriptions? On my site I am going to sell subscription courses (multiple payments) and books in pdf (one payment), and I would like the customer to be able to get a discount on all products with the same coupon.

    1. Hi Juan!

      Yes! Dynamic coupons are generated from a WooCommerce coupon’s settings. If your WooCommerce coupon allows your customers to purchase both a simple product or simple subscription, then the dynamic coupon will also allow it. Just make sure you don’t have any usage restrictions on the WooCommerce coupon and it should work just fine.

    1. Hi Richard!

      Sorry, only coupons are generated for the affiliate so automatic checkout discounts are not possible without a WooCommerce extension or custom code snippet.

      You’ll just need one that allows the coupon to be shared within a URL, and then have the coupon automatically applied to checkout. Then affiliates can just take their coupon code and share the URL (with coupon code included) with potential customers.

      Perhaps the smart coupons extension mentioned here: https://www.storeapps.org/woocommerce-url-coupons/

  5. Is there a way to increase the max length of coupon generated? It’s currently limited to 10 characters, which if other usernames have same first 10 characters, they end up with conflicting coupons which cause the other user to get a random coupon code instead.

Leave a Reply to Jay OHare Cancel reply

Your email address will not be published. Required fields are marked *