Changelog

Version: 8.2.0
Tested Up To: 7.1
Requires WP: 4.7
Requires PHP: 7.4

Version 8.2.0 - 31st August 2026

  • ✨ NewA REST API for connecting external tools, dashboards and AI assistants to your affiliate program, with API keys, scopes and an OpenAPI document. See "Coupon Affiliates > Admin Tools > API".
  • ✨ New(PRO) Webhooks, sending a signed JSON notification to another service whenever a referral, commission, registration or payout happens.
  • ✨ New(PRO) A "Lifetime" tab on the affiliate view page, listing every customer linked to that affiliate, with the linked coupon and expiry date editable from the list. Customers can also be assigned to an affiliate as their lifetime referrer by hand, without waiting for the customer to order on the coupon.
  • ✨ NewHovering the commission amount in the "Coupon Affiliate" panel on an order now shows a full breakdown of how that figure was calculated.
  • ✨ NewRight-to-left support for the affiliate dashboard, applied automatically on sites using a right-to-left language such as Hebrew, Arabic, Farsi or Urdu.
  • ✨ NewA "New Coupon Assigned" email, sent to an existing affiliate when an admin gives them an additional coupon. The "Add New Coupon" and "Add New Affiliate" forms now let you choose which email the affiliate receives, or send none at all, and the email can be edited or turned off under the notification settings.
  • ✨ New(PRO) A "Customise affiliate details fields" panel under the payout statement settings, for renaming the company, address and tax number fields the affiliate fills in, marking any of them as required, hiding the ones you do not need, and adding extra fields of your own. Labels are left blank by default, so nothing changes until you enter your own wording.
  • 🔨 TweakSignificantly sped up the affiliate dashboard, admin reports, leaderboard and every other screen that totals up commission.
  • 🔨 TweakSignificantly sped up the "View Affiliate" page for affiliates with a lot of referrals.
  • 🔨 TweakThe "Referred Orders" tab on the "View Affiliate" page can now be filtered by order status and by coupon, and searched by order number, customer name or email address. The "To" date is also now pre-filled with today's date.
  • 🔨 TweakMade a few improvements to the speed and performance of generating admin reports.
  • 🔨 Tweak(PRO) Improved the speed of loading the "Commission Graph" on the affiliate dashboard.
  • 🔨 TweakImproved the commission handling when more than one coupon was used on the same order.
  • 🔨 TweakUpdated the styling of the "Coupon Affiliate" panel on the edit order page.
  • 🔨 TweakThe "Export Affiliate Users" button on the Coupon Affiliate Users page now sits on the right and opens a panel to choose the group / role and sort order before downloading, matching the export on the Affiliate Orders page.
  • 🔨 TweakImproved the reliability of the "refresh" button on an order's "Coupon Affiliate" panel.
  • 🔨 TweakThe custom "Affiliate" terminology set under the design settings is now applied to the affiliate dashboard, MLA portal and leaderboard, not just the admin area.
  • 🔨 Tweak(PRO) Made around thirty pieces of text on the leaderboard translatable, along with a number of dashboard, portal and settings strings missing from the translation template.
  • 🔨 TweakThe "Non-Affiliate Coupon Settings" are now available in the free version, and have been moved higher up the commission settings tab.
  • 🔨 TweakUpdated the "Admin Tools" page styling and layout.
  • 🔨 Tweak(PRO) Redesigned the PDF payout statement, with a clearer header and a status badge, side-by-side "From" and "Paid To" panels, a tidier items table and a highlighted total that picks up the button colour from your design settings.
  • 🔨 Tweak(PRO) The tax number, and any extra fields you add, are now labelled in the "Paid To" section of a payout statement, so a reference number is no longer printed on a line of its own with nothing to say what it is.
  • 🔨 TweakCustom registration field answers were only saved to the affiliate's profile when the application created a new account, so an applicant who was already logged in had the values on their application but nowhere else - the dashboard "Account Details" and admin user screens showed the fields blank even once accepted. Answers on existing applications can be copied across with the new "Restore Registration Field Answers" tool, which appears under Admin Tools only if your site has any to copy.
  • 🔧 FixedA custom registration field whose label contained an apostrophe or an ampersand (for example "Recipient's full name") never matched its stored answer, so it always displayed as blank, and answers containing an apostrophe displayed as "'".
  • 🔧 Fixed(PRO) On an order with more than one coupon, the granted commission was stored as a single figure that the last coupon overwrote, so the wrong amount was taken back when the order left a completed status. Each coupon now records and removes its own amount.
  • 🔧 FixedRefreshing an affiliate's statistics did not recalculate pending commission on stores using High-Performance Order Storage.
  • 🔧 FixedOn stores in a timezone ahead of UTC, an order placed shortly after midnight was missing from "Referred Orders", the dashboard statistics and the commission graph until later in the day, even though the all-time totals counted it. Date ranges now follow the store's own timezone instead of UTC.
  • 🔧 Fixed(PRO) Lifetime commission was calculated twice on stores using High-Performance Order Storage, and the customer was only linked to their lifetime affiliate on the second run.
  • 🔧 Fixed(PRO) Fixed an issue with the commission balance when re-opening a cancelled order.
  • 🔧 Fixed(PRO) Store credit was taken before payment, and was not returned if the payment failed. It is now returned when an order fails or is cancelled, and taken again if that order is later paid.
  • 🔧 FixedThe Affiliate Portal and MLA Portal pages could return a "404 Not Found" on sites that had never re-saved their settings. The required URL rules are now installed automatically whenever they are missing.
  • 🔧 FixedThe Affiliate Portal slug was not escaped in its URL rule, so an empty slug or one containing punctuation could take over other pages. It is now escaped and falls back to "affiliate-portal".
  • 🔧 Fixed(PRO) Sending a test newsletter added a backslash before every apostrophe and quotation mark in the subject and content. Newsletters sent to affiliates were not affected.
  • 🔧 FixedSettings could silently fail to save when saving all at once on servers with a low PHP "max_input_vars" limit, or when a save was blocked or the database write failed. Bulk saves now fit within the limit, and any failure to save now shows the reason.
  • 🔧 FixedAdding a coupon to an affiliate from the affiliate view page reported that the coupon already existed when a coupon with the same code was sitting in the trash. Codes whose coupon has been deleted can now be used again, and the admin "Add New Affiliate" form no longer blocks a code whose accepted registration points to a deleted coupon.
  • 🔧 Fixed(PRO) Cancelling or failing an order no longer leaves its commission in the affiliate's pending balance, and cancelling a completed order no longer adds the commission back as pending.
  • 🔧 FixedWith the settings page set to "Manual Saving", the "Save Settings" button did nothing at all. A stored currency conversion rate with more decimal places than its field allowed made the browser refuse to submit the form, and choosing "Manual Saving" was itself never saved, so the page reverted to automatic saving.
  • 🔧 FixedSome settings appear on more than one settings tab. When saving all settings at once, changing one of them was undone by the copy on the other tab, which still held the old value. All copies of a setting now update together.
  • 🔧 Fixed(PRO) A payout marked as paid without a payment date recorded against it showed "Nov 30th, -0001" as the date on its statement. Statements now fall back to the date the payout was requested.
  • 🔧 Fixed(PRO) With statement tax turned off, the total on a payout statement was printed without its currency symbol or decimal places, for example "74.71" rather than "$74.71".
  • 🔧 Fixed(PRO) A long "footer text" on a payout statement printed its line breaks as literal "<br/>" tags instead of wrapping onto the next line.

Version 8.1.1 - 7th August 2026

  • ✨ New(PRO) Added a "Remove from a user role or affiliate group" reward to performance bonuses, so affiliates can be moved up through your tiers.
  • 🔨 Tweak(PRO) The affiliate portal now always redirects away when the coupon in the page address is not the viewer's own.
  • 🔨 TweakThe "Add New Affiliate" page now links to the existing user when the username or email address entered is already taken.
  • 🔨 Tweak(PRO) The leaderboard is now built from its shortcode settings rather than values sent by the visitor. Clear any full page cache after updating.
  • 🔨 TweakTightened the security checks on a number of admin and dashboard requests.
  • 🔨 Tweak(PRO) An affiliate group commission rate now always takes priority for affiliates who hold more than one user role.
  • 🔨 Tweak(PRO) The commission rate fields on an affiliate group now accept decimals.
  • 🔨 TweakThe commission shown against an order in the admin now includes fixed amounts, and shows 0.00 once an order is cancelled, refunded or failed.
  • 🔨 TweakThe "Total Sales" column on the admin "Coupons" page now has the coupon discount taken off, matching every other screen.
  • 🔨 Tweak(PRO) The "Commission" column on the dashboard "Rates" tab now accounts for tax. Enable "Include taxes in % commission calculations" for the previous behaviour.
  • 🔨 Tweak(PRO) The "Price" column on the dashboard "Rates" tab now shows the tax included in (or added to) each price.
  • 🔨 Tweak(PRO) An information icon on the "Rates" tab now explains the commission figure where it is not simply the price times the rate.
  • 🔧 Fixed(PRO) Custom commission rates set on products and categories were ignored unless "Commission Priority" was set to products. This changes the commission calculated on new orders for affected stores.
  • 🔧 Fixed(PRO) "Commission Priority" now defaults to "Product Commission Settings" as documented, for stores that never saved the Commission settings tab.
  • 🔧 Fixed(PRO) A "fixed commission per product" amount set on an affiliate group or user role was ignored when the product had its own amount.
  • 🔧 Fixed(PRO) The dashboard "Rates" tab could show a rate an order would not pay. It now resolves rates exactly as the order does.
  • 🔧 Fixed(PRO) The dashboard "Rates" tab ignored the "Include taxes in 'fixed' commission calculations" setting.
  • 🔧 Fixed(PRO) Orders paying a fixed commission with no percentage were skipped by the automatic commission payouts.
  • 🔧 FixedCancelled and refunded orders left their sales and commission in the coupon's all-time statistics. Run "Refresh Statistics" to correct existing coupons.
  • 🔧 FixedThe affiliate dashboard could stay on "Calculating statistics..." and never finish loading, introduced in 8.1.0.
  • 🔧 FixedAffiliates on two coupons whose codes differ only by letter case could be left with a blank dashboard, or "No affiliate dashboard found".
  • 🔧 FixedCoupon error messages could be blanked out at the cart and checkout, so a rejected coupon disappeared with no explanation.
  • 🔧 FixedNew coupons created from a template inherited its usage count and history, so customers could be told the usage limit had been reached.
  • 🔧 FixedAn affiliate application that cannot be saved to the database no longer leaves the applicant with a user account but no application.
  • 🔧 FixedTwo registration failures on servers running MySQL or MariaDB in strict mode.
  • 🔧 FixedThe duplicate application check compared the site's time against the database server's time, discarding genuine applications on sites not set to UTC.
  • 🔧 FixedThe status filter on the Registrations screen did nothing. It now filters immediately and is kept in the page address.

Version 8.1.0 - 29th July 2026

  • ✨ New(PRO) The "Coupon Affiliate" box on the order edit screen now flags when the commission already granted to an affiliate is higher than the current calculated commission for the order (for example, after a partial refund), with a one-click "Deduct" link that removes the difference from the affiliate's unpaid commission balance and updates the granted amount for the order. This also detects refunds that were not allocated to specific line items (amount-only refunds), which the automatic recalculation cannot see.
  • ✨ New(PRO) Added a "Performance Bonuses" section to the "Design" settings tab (shown when performance bonuses are enabled) to customise the colours of the bonuses progress bar (bar and background) and the reward summary box (background and text) on the affiliate dashboard.
  • ✨ NewAdded an option to the "Fraud Prevention" settings to not give commission to affiliates that use their own code.
  • ✨ New(PRO) Added {firstname} and {lastname} merge tags to the "Payouts Emails" settings, so the affiliate's first and last name can be included in the "New Payout Request" and "New Commission Payout" emails.
  • ✨ New(PRO) Added an "Email Greeting Text" option to the "Affiliate Email Reports" > "Report Customisation" settings to customise the greeting at the top of the report email, with {first_name}, {last_name}, {display_name} and {username} merge tags (previously always the affiliate's display name).
  • ✨ NewAdded an "Exclude products the coupon does not apply to from commission" option to "Advanced Calculation Settings" (Settings > Commission). When enabled, products excluded by the coupon's own WooCommerce "Usage restriction" settings - "Products", "Exclude products", "Product categories", "Exclude categories" and "Exclude sale items" - earn no commission, neither percentage nor fixed. Category restrictions include sub-categories, matching how WooCommerce itself applies them. This is useful where certain products should never be commissionable, such as bundles or kits built from individually priced items. It is disabled by default, leaving the existing behaviour unchanged: commission is calculated on every product in the order, because the affiliate referred the sale regardless of which items the discount applied to.
  • 🔨 Tweak(PRO) On the edit user screen (and the "View Affiliate" page "Edit User" tab), the "Store Credit Balance" field has been moved out of the payment settings into its own "Store Credit" section below it, so it is always visible regardless of the affiliate's selected payout method.
  • 🔨 Tweak(PRO) The plugin now declares compatibility with the WooCommerce "Cart and Checkout Blocks" feature, so it is no longer listed as incompatible in the block editor.
  • 🔨 Tweak(PRO) The "Custom Payment Method" #1 and #2 payout methods now have the same "Limit to certain user roles & groups?" option as the other payout methods, so a limit applied to them from an affiliate group can also be seen and changed in the settings.
  • 🔨 Tweak(PRO) Payout method role/group limits on the affiliate dashboard are now checked against the affiliate whose dashboard is being shown, instead of the logged-in user. Previously an admin viewing an affiliate's dashboard was shown the payout methods available to their own user role.
  • 🔨 TweakStatistics rebuilds are considerably faster and no longer time out on coupons with a long history. They are now split into batches by number of orders instead of 20 days at a time, so days with no orders are skipped and a coupon spanning several years finishes in a handful of requests rather than over a hundred; each order's saved data is loaded once per batch instead of re-queried for every value; and the object cache is no longer switched off while orders are processed (which had prevented WordPress from caching that data at all). The "Batch size" option (Settings > Debug) is now the number of orders per request, and the order statuses and date column used to size the work now match those the calculation actually counts - previously a single old cancelled order could add years of empty batches.
  • 🔨 Tweak(PRO) The store credit redemption option now shows on the WooCommerce Cart and Checkout blocks. It previously only appeared on the shortcode based cart and checkout, so on block based checkouts (the default for newer stores) affiliates had no way to apply their store credit balance to an order.
  • 🔨 Tweak(PRO) The store credit checkbox at the cart and checkout now saves your choice more reliably. Previously the choice was only saved on requests where the cart totals were recalculated, which could leave the checkbox unresponsive.
  • 🔨 TweakAffiliate commission can no longer be recorded as a negative amount. Large custom discounts or store credit could previously cause a negative commission to be saved to the order and shown in the admin new order email; the commission is now floored at zero before it is stored.
  • 🔨 TweakOptimised the notifications bell in the admin header, which now also opens instantly on the first click showing the latest notifications, instead of often doing nothing until it was clicked again.
  • 🔨 Tweak(PRO) The store credit checkbox at the cart and checkout is now protected with a security nonce.
  • 🔨 Tweak(PRO) The product commission rates table now verifies a request token tied to the specific coupon it was shown for.
  • 🔨 Tweak(PRO) Corrected the multi-level affiliate relationship check used by the dashboard statistics and statistics refresh requests, which was being tested the wrong way round.
  • 🔨 Tweak(PRO) Removed an unused leftover template file that loaded WordPress directly and could be requested by anyone.
  • 🔧 Fixed(PRO) Fixed an issue where the store credit option could stop appearing at the cart and checkout entirely if the "Wallet System" setting had been saved without a selection, even though store credit still showed as enabled throughout the admin area. An empty selection is now treated as the built-in store credit system.
  • 🔧 Fixed(PRO) Corrected how custom discounts and store credit reduce percentage commission when an order contains products on different commission rates. Previously these order-level discounts were always deducted at the coupon's commission rate, which could over-deduct - and even produce a negative commission - when the products actually earned a lower per-product rate. They are now deducted at the blended rate actually earned across the order's products. This is controlled by a new "Deduct custom discounts & store credit at each order's blended commission rate" setting (Settings > Commission > Advanced Calculation Settings, enabled by default); disable it to revert to the previous behaviour of always deducting at the coupon rate.
  • 🔧 FixedFixed an issue with "Include taxes in fixed commission calculations" enabled, where tax was added to the fixed commission amounts once for every line item in the order instead of once in total, so it compounded on orders containing more than one product.
  • 🔧 Fixed(PRO) Product and category commission percentages entered as a decimal were rounded down to a whole number when commission was calculated, so a product set to 2.5% paid only 2%, and a rate below 1% paid nothing at all. The rate entered in the settings is now used in full.
  • 🔧 Fixed(PRO) Fixed payout methods disappearing from the affiliate dashboard ("No payout methods are available currently") with nothing in the settings to show why. Saving an affiliate group rewrote the role limit of every payout method - including methods that were not shown on that page because they were disabled at the time - to "all of the user roles that exist right now, except this group". Enabling such a payout method later left it unavailable for that group, and any group created afterwards was locked out of it as well. A group's payout methods are now stored as an exclusion for that group alone, only the methods actually shown on the "Edit Affiliate Group" page are changed when it is saved, and groups created later are no longer affected. Existing limits are converted automatically when updating, so groups that were excluded from a payout method stay excluded (you can re-enable a method for a group by ticking it on its "Edit Affiliate Group" page).
  • 🔧 Fixed(PRO) The "Limit to certain user roles & groups?" option in the "Payouts" settings could be applied while being completely invisible - the roles list was hidden because the option was switched off, while the switch itself was hidden because roles were selected, leaving nothing on the page but the label. The switch is now always shown, and switching it off clears the selected roles so a limit can never be left applied by checkboxes that are not visible.
  • 🔧 Fixed(PRO) The "Payouts" settings now list any groups that have a payout method turned off on the "Groups" page, with a link to change it. Previously nothing in the payout method settings showed that a group level limit existed.
  • 🔧 Fixed(PRO) The "Payout Methods" column on the "Groups" page showed the wrong payout methods for every group whenever a payout method had a role limit set, because it compared the group against the wrong part of the setting.
  • 🔧 Fixed(PRO) Limiting the "Wise Bank Transfer" payout method to certain groups had no effect, because the "Edit Affiliate Group" page saved it under a different setting name to the one used by the affiliate dashboard and the payouts settings. Wise Bank Transfer also never appeared in the payout methods list on the "Edit Affiliate Group" page.
  • 🔧 FixedAffiliate dashboards could become permanently stuck on "Calculating statistics...", with "Total Sales" and "Total Commission" showing only "..." in the admin. A coupon's saved statistics were deleted before the rebuild started and only written back at the very end, so a rebuild that did not finish (a request timing out, or the affiliate closing the page) left the coupon with no statistics at all - which triggered another full rebuild on the next page load, indefinitely. Statistics are now kept in place until a rebuild has completed, an interrupted rebuild carries on from where it stopped, a failed request is retried before giving up, and a coupon with recorded usage but no countable orders (all cancelled, or placed before its start date) no longer rebuilds on every single load.
  • 🔧 Fixed(PRO) The "Processing Commission" total is no longer set to zero at the start of a statistics rebuild. It is rebuilt separately and only replaces the stored value once the rebuild has completed, so an interrupted rebuild can no longer leave an affiliate showing 0.00. With pending commission turned off (and in the free version) the stored value is now left untouched, where previously loading a dashboard could clear a manually entered amount.
  • 🔧 FixedThe "Latest Referrals" summary on the "Statistics" tab only searched the last 90 days, so an affiliate whose most recent orders were further back than that saw fewer than 5 referrals - often none at all - while the "Recent Orders" tab listed them correctly. It now looks across the full history; the query is capped by a row limit, so this does not depend on how many orders a coupon has.
  • 🔧 Fixed(PRO) Fixed a "wpdb::prepare() must have a placeholder" notice appearing in the debug log, from the one-time migration that encrypts existing Wise bank details.
  • 🔧 Fixed(PRO) Searching or changing page on the product commission rates table no longer switches it to the default commission rates when the "Show search box" option is turned off. The coupon was read from the search form, so with the form hidden it was sent empty and the table came back showing the default rates instead of the affiliate's.
  • 🔧 Fixed(PRO) The product commission rates table now shows the default rates when it is used without a coupon (the [couponaffiliates-rates] shortcode with no "coupon" set). It previously fell back to the individual commission rates of the author of the page the shortcode was placed on.
  • 🔧 Fixed(PRO) The [couponaffiliates-rates] shortcode now works with coupon codes that contain characters such as "&". The code was being escaped before it was looked up, so it matched no coupon and the table quietly showed the default commission rates instead of that affiliate's.
  • 🔧 Fixed(PRO) The information icon next to a payout method on the affiliate dashboard's "Commission Payouts" tab showed no tooltip when hovered over, so the payout details recorded for that payment could not be read.

Version 8.0.0 - 9th July 2026

  • ✨ NewAdded a new "Bulk Payouts" page that allows you to review all pending payout requests, and pay them all in one-click, for every payout method in one go. It shows the progress for each payout and any failures that occur.
  • ✨ NewAdded a "Refresh Statistics" tool to the admin "View Affiliate" page and the coupon edit page. It recalculates a coupon's all-time statistics directly from the admin area - going through every order one coupon at a time, with a live progress bar and log - without needing to open the affiliate dashboard first. On the "View Affiliate" page you can refresh multiple selected coupons at once, and the coupons table updates as each one completes.
  • ✨ NewAdded all-time statistics boxes (Sales, Commission, Processing, and Unpaid) to the "Coupon Affiliates" box on the coupon edit page, which update automatically after running the new Refresh Statistics tool.
  • ✨ NewAdded a "Reset Start Date" tool to the coupon edit page to set the "Coupon History Start Date" and recalculate the coupon's statistics in a single step.
  • ✨ NewAdded a "Password" field to the admin "View Affiliate" page (Edit User tab) with a button to send the affiliate a password reset email.
  • ✨ NewCompletely modernised the affiliate dashboard "Settings" tab with a clean, boxed layout - the affiliate's account details appear in a card on the left, with each remaining section (notifications, and the PRO payout and statement settings) in its own styled card on the right, each with its own "Save changes" button. Added hooks and filters throughout so the sections can be customised, reordered, added to, or removed.
  • ✨ NewAdded a "Settings Tab Layout" option (under the "Settings Tab" settings) to switch the affiliate dashboard "Settings" tab between the new "Modern (boxed sections)" layout and the original "Legacy (tabs)" layout.
  • ✨ New(PRO) Your registration form custom fields now appear in the "Account Details" section of the affiliate dashboard, pre-filled with the values each affiliate submitted when they registered, so they can view and update them. Includes a new per-field "Editable by user" option to choose which fields affiliates can edit, and an option to show or hide them all.
  • ✨ New(PRO) Registration custom fields are now also shown, pre-filled, and editable on the admin "View Affiliate" page (in the "Edit User" tab under "Basic Information") and on the standard WordPress edit-user profile screen.
  • 👍️ ImprovedCache invalidation is now fully compatible with persistent object caches (such as Redis) - creating a new affiliate, changing coupon assignments, or updating an affiliate's group is now reflected immediately in the admin and affiliate dashboards, without needing to manually flush the object cache.
  • 👍️ ImprovedChanging a user's affiliate group (or role) now instantly refreshes the affiliate users list, admin dashboard widgets, and the user's cached affiliate data, instead of waiting for the caches to expire.
  • 👍️ ImprovedAssigning or unassigning an affiliate coupon now immediately updates the cached dashboard access checks, so newly assigned affiliates get instant access to their dashboard, and removed affiliates lose access straight away.
  • 👍️ ImprovedConsolidated all cache invalidation into a central cache layer, and reduced unnecessary cache clearing (for example, customer registrations no longer clear the admin dashboard caches), improving cache efficiency on busy stores.
  • 👍️ Improved(PRO) The "Export Payouts" button on the admin payouts page now opens a dropdown to customise the export before downloading - filter by status, payment method, and a start/end date range, optionally include each payout's payment details, and choose between a CSV file or a new landscape PDF report containing a table of all the matching payouts.
  • 👍️ Improved(PRO) The "Export Orders" button on the admin "Affiliate Orders" page now opens a dropdown to customise the export before downloading - filter by order status, affiliate group/role, and a start/end date range, and optionally limit it to only orders with an assigned affiliate.
  • 🔨 TweakMade some design changes to the admin settings page.
  • 🔨 TweakRedesigned the "Help & Support" section on the admin settings page.
  • 🔨 TweakFor the "Show customer last name" option on the referred orders table, a new sub-option is available to only show the first letter of the last name.
  • 🔨 Tweak(PRO) For "Scheduled Payout Requests" when set to "Weekly", a new option is available to set the day of the week for the payout request to be generated (defaults to Monday).
  • 🔨 Tweak(PRO) Improved the "how to payouts work" section on the admin payouts page.
  • 🔨 Tweak(PRO) In the "Payouts" settings tab, the "Invoices & PDF Statements" section now includes toggles to enable the "Invoices" and "PDF Statements" features directly, each with a link to its settings once enabled.
  • 🔨 Tweak(PRO) Improved the design of the "Create Payout Requests" admin page.
  • 🔨 Tweak(PRO) On the "Create Payout Requests" admin page, in the "Manual Admin Requests" section, when an affiliate has not selected a payout method it now shows a notice with a "Configure payout method" option to set one for them inline (from the enabled methods), after which the row reloads so a payout request can be created.
  • 🔨 Tweak(PRO) On the "Create Payout Requests" admin page, when a coupon has no affiliate user assigned, an "Assign a user" option now lets you search for and assign a user to the coupon inline, after which the row reloads with the relevant next step.
  • 🔨 Tweak(PRO) On the "Create Payout Requests" admin page, when an affiliate's payout details have not been set, a "Set payout details" button now links straight to their payout settings (the "Edit User" tab on the "View Affiliate" page), with a refresh icon next to it to re-check the row once their details have been entered.
  • 🔨 Tweak(PRO) Made a few tweaks to how PRO license deactivation handles some important PRO tracking functionality, to better prevent any disruptions if the PRO license is reactivated later.
  • 🔨 TweakIn the admin coupons list added a line that shows the commission rate for that coupon, and a tooltip that shows where that commission rate is coming from exactly.
  • 🔨 Tweak(PRO) For the product-level "Per-Affiliate Product Commission Rates", the "User Role" type now uses a dropdown if available roles instead of a free text field, to prevent entering an incorrect role slug.
  • 🔨 TweakUpdated some strings on the admin settings page to be localised properly.
  • 🔨 TweakMade a small optimisation improvement to loading saved options.
  • 🔨 TweakReplaced the "REFRESH ALL DATA" link on the coupon edit page with the new Refresh Statistics tool, which recalculates the statistics immediately from the admin area instead of waiting until the affiliate dashboard is next loaded.
  • 🔨 TweakOn the "View Affiliate" page, the notice shown when a coupon's statistics still need calculating now has a single button that opens the new Refresh Statistics tool, and the notice is hidden once the refresh completes.
  • 🔨 TweakChanging a coupon's "Coupon History Start Date" now automatically triggers a statistics refresh (the same way changing the commission rate does), since it affects which orders are included in the statistics.
  • 🔨 TweakMade some changes to the edit coupon page "Coupon Affiliates & Commission" section.
  • 🔨 TweakThe activity log now only records manual admin edits to a coupon's commission amounts and rates (unpaid, processing, pending, and the commission rates), and no longer logs the plugin's own automatic updates to them. This prevents the activity log from filling up with thousands of entries when a coupon with a large order history has its statistics recalculated, which on some sites could slow down or time out the affiliate dashboard.
  • 🔨 TweakOn the affiliate portal, you can now click the coupon title in the dashboard header to copy the coupon code to your clipboard.
  • 🔨 TweakOn the affiliate portal, affiliates assigned to more than one coupon now see a dropdown menu next to the coupon title, to quickly switch between their coupon dashboards.
  • 🔨 TweakOn the registration form, the terms and conditions checkbox label now aligns next to the checkbox instead of dropping onto a new line below it.
  • 🔨 Tweak(PRO) Redesigned the "Custom Form Fields" section in the Registrations settings with a modern card layout, drag-and-drop reordering, and a delete button for each field.
  • 🔨 TweakOn the affiliate dashboard "Settings" tab, the "reset your password" link now emails the password reset link directly (after a confirmation prompt), the same as the WooCommerce "Lost password" form, instead of sending the affiliate to a separate page.
  • 🔨 TweakOn the "Affiliate Orders" admin page, the bulk actions ("Move to Trash" and the order status changes) now show a confirmation prompt before applying, including the number of selected orders and a warning that status changes may affect affiliate commissions. All bulk actions on this page now also check that at least one order is selected.
  • 🔨 TweakThe "Bulk Edit: Coupon Settings" tool now shows a confirmation prompt before applying updates, telling you how many coupons are about to be changed and that the changes cannot be automatically undone.
  • 🔨 TweakThe "Import/Export Database Tables" tool now shows a clear confirmation warning before importing, explaining that the import will permanently replace all existing data in the selected table, and checks that a CSV file has been chosen before submitting.
  • 🔨 TweakAdded an "Only show orders with an affiliate user" option to the "Affiliate Orders" admin page, and made a tweak to the groups/roles filter.
  • 🔧 FixedMade some improvements and fixes to the "Bulk Edit: Coupon Settings" tool "Import CSV" feature.
  • 🔧 FixedAdded WooCommerce Checkout Block fix for URL conversion tracking and related checkout order processing hooks.
  • 🔧 FixedFixed an issue where partial refunds were not correctly adjusting commission when "Include taxes in % commission calculations" was enabled.
  • 🔧 FixedFixed an issue where the Copy button on the Rates tab stopped working after performing a search.
  • 🔧 Fixed(PRO) Fixed an issue where store credit applied with the WooCommerce PayPal Payments (PPCP) gateway caused PayPal to capture less than the order total (short by the store credit amount), due to PPCP double-counting the negative fee in its amount breakdown.
  • 🔧 FixedFixed an issue where some referred orders were missing from the referred orders table (while still counted correctly in the stats totals) on stores with a positive GMT/UTC timezone offset, such as most of Europe and Asia.
  • 🔧 Fixed(PRO) Fixed a PHP notice logged on the affiliate dashboard payout tab, caused by a static database query being passed through wpdb::prepare() with no placeholders.
  • 🔧 FixedFixed several PHP notices and warnings (logged when WP_DEBUG is enabled) that could appear when the referred orders table showed subscription renewal orders, including deprecated WooCommerce Subscriptions property access and an undefined variable.
  • 🔧 FixedFixed an issue where the "Manage Registrations" links on the admin dashboard and notification bell could lead to a "you do not have permission to access this page" error when Affiliate Registration features were disabled; these links are now hidden while the feature is off.
  • 🔧 FixedOptimised the admin notification bell so it no longer slows down the wp-admin backend on larger sites - it now polls every 30 seconds instead of 10 (filterable via the "wcusage_admin_bell_poll_interval" hook), caches the notification lookups so the same queries no longer run on every poll, only builds the dropdown when it is opened, and prevents polls from stacking up if the server is slow.
  • 🔧 Fixed(PRO) Fixed an issue where affiliates could see an "Email is required." error when saving their Payout Settings from the dashboard "Settings" tab if the "Account Details" section was disabled, and prevented saved account details from being overwritten with empty values in that case.
  • 🔧 Fixed(PRO) Fixed an issue where an affiliate using the "Direct Bank Transfer" payout method was treated as having entered their payout details even when the bank fields were left empty, which let payout requests be created (and skipped the "payout details not set" checks) without any bank details.
  • 🔧 FixedFixed an issue on the admin "View Affiliate" page and coupons table where coupons with genuine 0.00 sales or commission kept showing the "needs refresh" indicator (and the notice) even after their statistics had been calculated - reappearing on page reload despite the Refresh Statistics tool updating them correctly. The indicator now only shows when a coupon's statistics have never been calculated.
  • 🔧 FixedFixed a potential PHP error on the "Affiliate Orders" admin page (on PHP 8+) when a bulk action was applied with no orders selected.
  • 🔧 FixedFixed an issue where the affiliate registration table could be missing on sites that first installed the plugin on version 6.1.0 or later, causing a "table doesn't exist" database error on the registration form and the admin Registrations page. The table is now created automatically on the next load.
  • 🔧 FixedFixed an issue where logging in via the affiliate portal (or the affiliate dashboard, MLA portal, or registration page) redirected the affiliate to the WooCommerce "My Account" page instead of keeping them on the page they logged in from.
  • 🔧 Fixed(PRO) Fixed an issue on the affiliate portal where submitting a payout request reloaded the page and returned to the "Statistics" tab instead of re-opening the "Payouts" tab.
  • 🔧 Fixed(PRO) Fixed an issue where PDF statement pages (such as "/wcu-statement/...") could show a "page not found" error after first enabling the "PDF Statements" feature. The permalink rewrite rules now refresh automatically when statements are enabled or disabled, and any affected sites repair themselves on the next page load.
  • 🔒 SecurityMade a few minor security hardening improvements as part of routine maintenance and precautionary measures.
  • OtherUpdated the Freemius SDK.
  • OtherUpdated translations.

Version 7.8.2 - 2nd June 2026

  • 🔧 FixedFixed an issue where the referred orders table could show one fewer order than the date range stats summary.
  • 🔧 Fixed(PRO) Fixed an issue with the direct domain feature incorrectly reporting that a valid affiliate coupon code does not exist when attempting to add a new direct domain.
  • 🔧 FixedFixed an issue with the affiliate portal mobile hamburger menu not being clickable on some browsers, and the menu icon showing over the open sidebar menu.
  • 🔧 FixedFixed an issue with administrators not being able to see affiliate orders table for other affiliates on the affiliate portal.
  • 🔧 FixedFixed an issue where AJAX affiliate registrations could create an affiliate user account without a saved registration entry if registration storage failed.
  • 🔧 FixedFixed a potential issue where in some cases the affiliate portal page would not load and show an error.
  • 🔧 FixedFixed an issue with the MLA portal page slug option when changed not updating the MLA portal page link on the affiliate dashboard immediately in some cases.
  • 🔒 SecurityFixed a security vulnerability that could potentially allow an unauthenticated user to view another affiliates recently referred orders stats (reported by Stefano via Patchstack).

Version 7.8.1 - 15th May 2026

  • ✨ NewAdded a new "Privacy & Cookies" settings tab with related options moved into this so they are easier to find, to control the cookie storage and sessions options etc. Also changed sessions to use WooCommerce sessions for the auto-apply coupon backup.
  • ✨ New(PRO) Added a new option in "Coupon Checkout Settings" to always allow any other non-affiliate discount coupon to be applied alongside zero-discount affiliate coupons, overriding all individual-use and other coupon restrictions, and an option to completely hide applied affiliate coupons with zero discount on the cart and checkout page.
  • ✨ New(PRO) Added a new {coupon_description} merge tag for dynamic landing pages, which outputs the WooCommerce coupon description.
  • ✨ New(PRO) Added a "Dynamic Landing Page Template Protection" option to the landing pages settings. When enabled, visiting the base template page directly (e.g. /prime-partner/) without an affiliate code will redirect visitors to a configurable URL (defaults to the site root).
  • 🔨 Tweak(PRO) Improved dynamic creatives loading reliability, performance, and cache-busting when a creative is edited.
  • 🔨 Tweak(PRO) Affiliates whose saved payout method has been disabled can no longer request payouts (manual or scheduled) and are prompted to select a new method.
  • 🔨 TweakMade some styling tweaks to the border radius styling of some elements on the affiliate dashboard and admin pages.
  • 🔨 TweakImproved full and partial refund handling so refund recalculations can update saved commission stats when needed, lifetime/referrer tracked orders are included in partial refund payout adjustments, and full refunds update coupon all-time usage totals.
  • 🔨 TweakImproved the database table import/export tool to work better when moving data between sites.
  • 🔧 Fixed(PRO) Fixed several QR code issues on mobile browsers: logo not appearing when "Include logo in QR code" was enabled, download button not working, and downloaded files being saved with a .png.html extension instead of .png.
  • 🔧 FixedFixed affiliate dashboard tabs becoming unclickable in some setups, particularly when using JS optimisation plugins such as WP Rocket, Autoptimize, or LiteSpeed Cache.

Version 7.8.0 - 30th April 2026

  • ✨ New(PRO) Added a "Rewards Log" section to the affiliate dashboard Performance Bonuses tab so affiliates can see a history of the rewards they have earned.
  • ✨ New(PRO) Added a "Rewards Log" admin page (Coupon Affiliates > Performance Bonuses > Rewards Log) showing earned rewards across all affiliates.
  • ✨ New(PRO) Added a "Custom Event / Action (Non-Order)" trigger type to rewards, allowing extra commission, store credit, and other rewards to be granted for non-order actions through the developer hooks provided.
  • ✨ New(PRO) Added a new reward action: "Set new discount rate for the affiliate coupon" - automatically updates the WooCommerce discount type and amount on the affiliate's coupon when the reward is earned.
  • ✨ New(PRO) Added a "Hide once earned" option to bonuses, which hides the bonus from the affiliate dashboard after it has been earned and while it cannot be earned again (e.g. hidden for the rest of the week for weekly bonuses, or permanently for one-time bonuses).
  • ✨ New(PRO) Added new "Availability Requirements" options to bonuses, allowing you to set specific requirements for bonuses to be available to be earned, such as a minimum number of total referrals.
  • ✨ New(PRO) Added new lifetime commission settings to allow applied affiliate coupons to override lifetime commission for an order, with an optional setting to replace the customer's lifetime referrer with the new affiliate coupon.
  • 🔨 TweakMade some tweaks to the styling on some of the custom post type admin pages within the plugin to match the styling of the other pages.
  • 🔨 Tweak(PRO) Improved the layout/formatting of the Trigger (Requirements) section on the Edit Bonus admin page to display better on smaller screens.
  • 🔨 TweakImproved the standalone affiliate portal by preventing theme/global styles from loading and adding proper meta title/description tags for shared portal links.
  • 🔨 TweakImproved affiliate registration validation to prevent duplicate custom coupon codes from creating or logging in an account before the error is shown.
  • 🔨 Tweak(PRO) Performance bonus reward checks are now deferred until after order stats and commission have been fully calculated, so rewards that change the affiliate coupon's commission rate only apply to future orders and no longer affect the order that triggered the reward.
  • 🔨 Tweak(PRO) Improved dynamic landing pages with better functionality, working better with caching, and added new merge tags.
  • 🔧 Fixed(PRO) Fixed an issue where the payout method input field (e.g. PayPal Email Address) was not visible on initial affiliate dashboard page load in some cases.
  • 🔧 Fixed(PRO) Fixed an issue where the MLA dashboard link could break if the MLA portal slug was saved with uppercase letters.
  • 🔧 FixedFixed an "Undefined array key" PHP warning for wcusage_field_custom_tabs_icon_{n} in the affiliate portal when custom tab icons had not yet been saved.
  • 🔧 FixedFixed an issue where custom affiliate dashboard tab icons were no longer displayed in the standalone affiliate portal in certain cases.
  • 🔧 FixedFixed an issue where the affiliate dashboard and admin affiliate view "Referred Orders" lists could show inconsistent subsets of orders since a recent update, especially for lifetime commission and manually assigned orders.
  • 🔧 FixedFixed an issue where the affiliate dashboard "Referred Orders" statistics boxes did not reflect the selected order status when filtering by a single status.
  • 🔧 FixedFixed the admin "View affiliate dashboard" preview button to use the configured shortcode dashboard page when the standalone affiliate portal is disabled.
  • 🔧 FixedFixed a recent bug on the affiliate dashboard "Referred Orders" tab where the number of orders displayed in the table could be lower than the actual referral count.
  • 🔧 FixedFixed a bug where in certain cases refund deductions were not being applied to calculations immediately.
  • 🔧 Fixed(PRO) Fixed an issue where dynamic creatives would return a 403 "rest_forbidden" error and fail to display on the affiliate dashboard on some servers/setups.
  • 🔧 FixedFixed a bug where affiliate registrations were failing on sites running MySQL with strict mode enabled.
  • 🔧 FixedFixed an issue where the affiliate portal page could be treated as a 404 page.
  • 🔧 Fixed(PRO) Fixed an issue where the admin payouts page could show an empty success notice and leave the payout as pending for users that were not the "administrator" role.
  • 🛠️ DevAdded new filters to add custom columns to the affiliate dashboard Referred Orders table and render custom values for each order.

Version 7.7.2 - 15th April 2026

  • ✨ New(PRO) Added "Limit to certain user roles & groups?" option to all built-in tab settings in "Affiliate Dashboard Customisation", allowing each tab to be restricted to specific user roles or affiliate groups.
  • 🔧 FixedFixed a fatal error on the admin orders list when using WooCommerce HPOS.

Version 7.7.1 - 14th April 2026

  • 🔨 TweakMade a few styling tweaks to the admin registrations page.
  • 🔧 FixedFixed a fatal error when using WooCommerce HPOS on some admin pages in certain cases, caused by a WC_Order object being passed.
  • 🔧 Fixed(PRO) Fixed a permission issue where the Email Newsletters page could appear blank or inaccessible.
  • 🔧 FixedFixed a few small PHP errors and issues.

Version 7.7.0 - 12th April 2026

  • ✨ NewCompletely rebuilt the Admin Reports & Analytics page with a more modern design.
  • ✨ NewAdmin reports now includes additional statistics such as a trends chart, traffic sources, top performers, activity log events, and more.
  • ✨ NewAdded a PDF download option for the admin reports that generates a PDF version of the report.
  • ✨ NewAdded a new affiliate group filter to the admin reports to only include statistics for affiliates in a specific group.
  • 👍️ ImprovedAdded an option to the Add New Affiliate form to assign a user to an existing coupon code if the coupon already exists, instead of showing an error.
  • 👍️ ImprovedAdded an "assign existing coupon" checkbox to the Bulk Coupon Creator page, allowing bulk imports to assign users to existing coupons instead of failing on duplicates.
  • 👍️ ImprovedAdmin reports now auto-generate on page load, with the last report filters that were used.
  • 👍️ ImprovedAdded a new small button on the "Statistics" tab of the affiliate dashboard to quickly refresh the statistics without reloading the page.
  • 👍️ ImprovedAll-time stats will automatically soft recalculate (only the all-time stats, not individual order stats) in the background when visiting the affiliate dashboard, maximum once per hour, to ensure stats are always up to date even if certain manual changes were made to orders, coupons, etc that might affect the stats without it being reflected in the stats immediately.
  • 👍️ ImprovedMade a variety of improvements to the "recent orders" tab on the affiliate dashboard, including new statistics boxes for custom date ranges, date range preset options, better performance when filtering, CSV export improvements, improved pagination with ajax "show more" and "show all" buttons.
  • 👍️ Improved(Free) The admin reports in the free version now offers a larger date range and a few extra features.
  • 👍️ ImprovedThe affiliate dashboard tab names can now be customised in the "Affiliate Dashboard Customisation" settings section.
  • 🔨 TweakChanged the "Recent Orders" default tab name to "Referred Orders".
  • 🔨 TweakAdded "Reports" as a top level item in the plugins header area, instead of being under "Other".
  • 🔨 TweakMade a few styling tweaks to the main admin dashboard page, and other admin pages to have a slightly more modern and consistent design.
  • 🔨 TweakAdded some additional caching and performance enhancements to the affiliate dashboard when calculating statistics.
  • 🔨 Tweak(PRO) Added the "Reverse this payout" option for "Manual" payouts on the admin payouts page.
  • 🔨 Tweak(PRO) Increased the limit for the PDF invoices upload file field to 1MB.
  • 🔧 FixedFixed an issue where affiliate users were not being created when adding individual affiliates or importing via CSV due to output being sent before redirect.
  • 🔧 FixedFixed a niche case where in a specific scenario where custom/lifetime assigned orders might not have been included in the dashboards all-time stats in certain cases (case-sensitive).
  • 🔧 Fixed(PRO) Fixed scheduled payout dates drifting over time, so monthly payouts now always fire on the 1st of each month.
  • 🔧 Fixed(PRO) Fixed an issue where toggling the "Enable Scheduled Payout Requests" setting off and back on would not recreate the cron event until the schedule settings were changed.
  • 🔧 FixedFixed an issue where submitting an affiliate application with a new coupon code would sometimes incorrectly display a "coupon already exists" error instead of the success confirmation message.

Version 7.6.0 - 3rd April 2026

  • ✨ New(PRO) Added a new SMS Notifications feature, to automatically send SMS notifications to affiliates and admins for various events like new referrals, and payout updates. You can customise the SMS messages with your own text.
  • ✨ New(PRO) Added a "Send Notification Email" checkbox to the Add New Affiliate and Add New Coupon admin forms, allowing admins to choose whether to send the "Affiliate Application Accepted" email when creating a new affiliate or coupon. The custom message field is now only shown when the checkbox is checked.
  • 👍️ ImprovedMade a few performance improvements to the affiliate dashboard for coupons with lots of orders.
  • 👍️ Improved(PRO) Optimised the "Paid" commission query on the Coupons admin table to use a single SUM query instead of fetching all rows and summing in PHP.
  • 🔧 FixedFixed an issue where refreshing the page after submitting the affiliate registration form would re-submit the form and create a duplicate registration request.
  • 🔧 Fixed(PRO) Fixed a fatal error ("Cannot access offset of type array on array") on the Affiliate Groups admin page.
  • 🔧 Fixed(PRO) Fixed payment status text on payout statements not being translatable due to an incorrect text domain.
  • 🔧 FixedFixed an issue on some websites with the "Default Referral URL Page" setting reverting back to the home page.
  • 🔧 Fixed(PRO) Fixed an issue where affiliates would see an "Email is required" error when saving their payout details (e.g. custom payout username) if the account details fields were not included in the form submission.
  • 🔧 Fixed(PRO) Fixed an issue where the "Affiliate Application Accepted" email was not being sent when an admin manually adds a new coupon for an existing affiliate via the View Affiliate page.
  • 🔧 FixedFixed an issue in the free version where some settings tabs where showing empty in some cases since a recent update.
  • 🔧 Fixed(PRO) Fixed an issue where the password reset URL in registration emails did not work on some websites, caused by passing the user ID instead of the username as the login parameter and using an unreliable WooCommerce endpoint URL construction.
  • 🔧 Fixed(PRO) Fixed an issue where using {random} in the coupon format template would cause continuous database queries for non-existent coupon codes on every page load, potentially causing site slowdowns or timeouts. The coupon generation is now correctly skipped on non-submission page loads, and the redundant uniqueness check is bypassed when {random} is present in the template (since the random component already ensures uniqueness).
  • 🔧 Fixed(PRO) Fixed the "Paid" commission amount on the Coupons admin table "Payouts" column showing incorrectly in some cases.
  • 🔧 Fixed(PRO) Fixed an issue where processing/pending commission would disappear from the affiliate's view when an order status changed to "Completed" with delayed commission (payout days) enabled.
  • 🔒 SecurityFixed a potential XSS vulnerability via the visitor IP value logged in referral click (reported by "Nguyen Ba Khanh" via Patchstack).
  • 🔒 SecurityImproved sanitisation and escaping in various places across the plugin.
  • OtherTested with WooCommerce 10.6

Version 7.5.3 - 6th March 2026

  • 🔧 FixedFixed a fatal error on the admin settings page since the last update.

Version 7.5.2 - 6th March 2026

  • ✨ New(PRO) Added a new option in the "Rates" tab settings to hide products with their catalog visibility set to "Hidden" from the product rates table on the affiliate dashboard.
  • 🔧 Fixed(PRO) Fixed a fatal error ("Cannot access offset of type array on array") on the Affiliate Groups admin page.
  • 🔧 Fixed(PRO) Fixed a fatal error ("Unsupported operand types: float * string") in the payouts cron job caused by the coupon commission percent not being cast to a float.
  • 🔧 FixedFixed a fatal error ("Call to undefined function wp_get_current_user()") caused by the free plugin deactivation check in some cases.

Version 7.5.1 - 6th March 2026

  • 🔨 TweakMade a few small tweaks to the admin settings page.
  • 🔧 FixedFixed the "Account Details" form on the affiliate dashboard and portal page not saving when clicking "Save changes".
  • 🔧 FixedFixed error messages (e.g. "Email already exists") not displaying under the settings form on the affiliate dashboard and portal page.
  • 🔧 FixedFixed a fatal error ("Unsupported operand types: string * int") on the orders panel when a per-product commission was not set, causing the page to break.
  • 🔧 FixedFixed the referral popup/bar/widget title showing raw HTML instead of the formatted discount amount (e.g. "$10.00").
  • 🔧 Fixed(PRO) Fixed dynamic landing page URLs (e.g. /page-slug/affiliate-code/) returning a 404 error.

Version 7.5.0 - 25th February 2026

  • ✨ New(PRO) Added a new option to set per-group and per-user MLA commission rates, which will override the default MLA commission rates for that user.
  • ✨ New(PRO) Added a new option to display a "Rates" tab on the MLA affiliate dashboard, which will show the commission rates for each tier of their MLA network, and also show any custom rates that have been set for that user.
  • ✨ New(PRO) Added a new "MLA Users" admin page listing all users that are part of the multi-level affiliate system, with their affiliate details and stats.
  • ✨ New(PRO) On the "View Affiliate" page, in the "MLA" tab, added lots more details and statistics about the affiliates sub-affiliates, including their total stats, recent orders, and more. Also added a way to easily remove sub-affiliates or add new sub-affiliates to the affiliate from this tab.
  • ✨ New(PRO) If QR codes are enabled, it will now also show the QR code generator for the MLA invite referral links on the MLA dashboard.
  • ✨ New(PRO) Added an option to show a "Sub-Affiliate Registrations" section on the MLA dashboard, that allows the parent affiliate to view and manage the affiliate applications from their sub-affiliates. They will also receive email notifications when they get new sub-affiliate applications, and can approve/reject them from the MLA dashboard.
  • ✨ New(PRO) On the affiliate page, if the payout information totals (processing, unpaid, pending, paid) do not match the "total commission", added a "unaccounted commission" row with a message explaining why that may be the case.
  • 👍️ Improved(PRO) Added extra columns to the Affiliate Groups admin page, showing each group's commission rates, assigned template coupon, and enabled payout methods.
  • 👍️ Improved(PRO) Added a field when editing coupons to modify the "processing commission" amount.
  • 👍️ ImprovedAdded filters to the admin activity log page.
  • 👍️ Improved(PRO) On the MLA affiliate dashboard, added pagination to the "Your latest invites" section.
  • 👍️ Improved(PRO) Renamed "Pending Commission" to "Processing Commission" across the plugin for less confusion with the "Pending" status for payouts.
  • 🔨 Tweak(PRO) On the "View Affiliate" page, the "Payouts" tab and the "Unpaid" column in the coupons table are now only shown when the payout tracking setting is enabled.
  • 🔨 TweakMLA unpaid commission changes are now added to the activity log.
  • 🔨 TweakUpdated the JS method for setting cookies when headers have already been sent, to be more reliable in some cases.
  • 🔨 TweakreCAPTCHA and Turnstile now load on the floating widget registration form if enabled.
  • 🔨 TweakMade some design improvements on mobile to the view affiliate page.
  • 🔨 TweakAdded a search field to the "PRO Modules" settings tab.
  • 🔧 FixedFixed an issue where the affiliate registration form would incorrectly show a "coupon already exists" error when submitting with a new coupon code, due to a compatibility issue with newer versions of WooCommerce.
  • 🔧 FixedFixed some issues with per-group fixed commission not showing visually in some cases.
  • 🔧 FixedFixed Turnstile rendering twice in some cases.
  • 🔧 FixedFixed PHP warnings for undefined variables in the mobile dropdown menu section of the affiliate dashboard.
  • 🔧 FixedFixed a bug where referred orders could be counted twice in the coupon all-time statistics.
  • 🔧 Fixed(PRO) Fixed payout request button not working in some cases when invoice uploads are not enabled, due to a missing JavaScript validation function.
  • 🔧 Fixed(PRO) Fixed processing commission being added twice for some orders due to an HPOS compatibility issue.
  • 🔧 FixedPotential fix for issues with the WP Compress plugin.
  • 🔧 Fixed(PRO) Fixed a bug where affiliate bonuses with a "Once Per Month" (or other period) trigger could become permanently locked if the reward date meta was missing, preventing the bonus from ever being awarded again.
  • 🔧 Fixed(PRO) Fixed a bug where removing all affiliate group restrictions from a bonus would not clear the saved restriction, causing affiliates to be silently excluded from earning the bonus.

Version 7.4.0 - 14th February 2026

  • ✨ NewAdded new "referral welcome popups" functionality.
  • ✨ NewWhen using the regular shortcode dashboard page, added a new "dark mode" option to the design settings tab that can be enabled.
  • ✨ NewAdded a "Clear Cache" button to the admin dashboard page to manually refresh all cached statistics and data on demand.
  • 👍️ ImprovedWhen a payout method is not selected, the payouts tab now displays the payout settings form directly instead of just showing a message to go to the settings tab.
  • 🔨 TweakSmall changes to the admin notifications.
  • 🔨 TweakImproved reliability of affiliate registration form shortcode to prevent intermittent display issues caused by database/cache failures.
  • 🔨 TweakMajor performance improvements across the plugin with transient caching (dashboards/stats/leaderboards/admin pages) and optimized database queries to dramatically reduce load times on high-volume sites.
  • 🔨 TweakImproved Affiliate Users List and Coupons List performance with optimized meta_query filters and transient caching.
  • 🔨 TweakAdded static in-memory caching to order commission calculations to prevent duplicate calculations within the same page load, significantly improving performance on admin dashboards and reports.
  • 🔨 TweakOptimized admin notification bell with 5-minute transient caching and direct SQL queries, reducing database load by ~95%.
  • 🔨 TweakModernised the loading animation and text on the affiliate dashboard with a clean spinning ring spinner, improved typography, and proper dark mode support.
  • 🔧 FixedFixed incorrect landing page tracking in referral URL clicks log.
  • 🔧 FixedResolved duplicate click entries being created when referral links are visited.
  • 🔧 FixedHomepage visits via referral links now properly display as "Homepage" in the clicks log instead of showing empty or incorrect values.
  • 🔧 FixedFixed fatal error on settings page caused by array_key_exists() receiving null instead of array in PHP 8+ when checking user role capabilities.
  • 🔧 FixedFixed affiliate dashboard tabs not loading content when "Ajax Loading" is disabled and "Load tabs as separate pages" is enabled.
  • 🔧 FixedResolved JavaScript errors preventing proper functionality in the portal when AJAX loading is disabled by fixing invalid jQuery syntax.
  • 🔧 FixedFixed issue on the Coupons and Referrals pages where pressing Enter in filter inputs would trigger the bulk action form validation error instead of applying the filters.

Version 7.3.2 - 4th February 2026

  • 🔨 TweakUpdate to the way settings are saved to be more reliable and sets defaults properly.
  • 🔨 TweakA few tweaks to the admin settings page.
  • 🔨 TweakSeveral small code improvements and optimizations throughout the plugin to better meet coding standards.
  • 🔨 TweakStats will no longer auto-refresh on the affiliate dashboard/portal when changing rates, if the "never update the saved commission" setting is enabled.
  • 🔨 TweakSome tweaks to ensure admin settings save properly in some cases.
  • 🔨 TweakSmall tweaks to the design and layout of the plugins admin header area.
  • 🔨 Tweak(PRO) Updated styling for the "MLA Tier Commission Rates" tiers on the settings page.
  • 🔧 FixedResolved mobile dashboard tab dropdown issues and PHP warnings caused by undefined dashboard tab settings.
  • 🔧 FixedAdded no-cache headers for admin settings page and AJAX settings saves to prevent cached/stale saves on some hosts.
  • 🔧 FixedFixed an error showing in the order/sales tracking settings.

Version 7.3.1 - 29th January 2026

  • 🔨 Tweak(PRO) Added support for special characters in payout statement PDF generation.
  • 🔨 TweakDisabled cache/minify/lazyload optimizations on affiliate dashboard and portal pages to prevent settings/portal save issues.
  • 🔨 Tweak(PRO) Added AJAX loading for the 'couponaffiliates-leaderboard' shortcode with a loading animation.
  • 🔨 Tweak(PRO) Added an "AJAX load" toggle to the leaderboard generator and 'ajax="no"' shortcode option to render immediately.
  • 🔨 Tweak(PRO) Added MLA payouts to the admin manual "create payouts" page.
  • 🔨 TweakMade a few improvements to the affiliate dashboard mobile header and side menu on mobile.
  • 🔨 Tweak(PRO) Added pending commission to the view affiliate admin page.
  • 🔧 FixedResolved reordering behavior for custom registration form fields when using the move buttons in some cases.
  • 🔧 Fixed(PRO) Leaderboard "Current Month" now calculates on demand when monthly stats haven't been cached yet.
  • 🔧 FixedPrevented "Invalid coupon" fatal errors when deleted coupons are recreated with the same code.
  • 🔧 FixedHardened affiliate dashboard AJAX handlers to avoid infinite loading when coupons are missing or recreated.
  • 🔧 Fixed(PRO) Fixed group fixed-order commission being ignored when percentage commission was also set.
  • 🔧 Fixed(PRO) Fixed performance bonuses not triggering due to incorrect user role matching.
  • 🔧 FixedRegistration submissions now work when auto-login after registration is disabled.
  • 🔧 FixedPrevented creating user accounts when registration fails due to an existing coupon code, avoiding username-exists errors on retry.
  • 🔧 Fixed(PRO) Prevented PHP errors/warnings when dividing empty values or with empty strings in some cases.
  • 🔧 FixedFixed an issue with changing color text fields not auto-saving.

Version 7.3.0 - 13th January 2026

  • ✨ New(PRO) Added new "Pending Commission" feature for commission payouts tracking.
  • ✨ New(PRO) Added an option to only auto-accept registrations for certain user roles or groups.
  • ✨ NewAdded an option to customise the pending affiliate registration message.
  • 🔨 Tweak(PRO) For the "Custom Form Fields" radio field, added an "options" setting to define the different options/values.
  • 🔨 Tweak(PRO) Improved the layout of the checkbox and radio fields on the affiliate registration form.
  • 🔨 TweakSmall tweaks and fixes for the view affiliate admin page.
  • 🔨 TweakImprovement to the IP address logging for referral URL clicks.
  • 🔨 TweakAdded a close button to the mobile sidebar menu on the affiliate portal.
  • 🔨 TweakMade a few precautionary security improvements.
  • 🔨 TweakImprovement to the speed of generating admin reports.
  • 🔨 TweakMade a tweak to the delayed commission cron job logic to check previous days that may have been missed.
  • 🔧 FixedFixed an issue with the admin reports not generating if orders contained deleted products.
  • 🔧 FixedFixed an issue with the CSS and JS not loading properly after submitting the affiliate registration form.
  • 🔧 FixedFixed a potential issue with unintended user role removal when editing users.
  • 🔧 FixedFixed an issue with not being able to add new affiliates when the coupon code previously existed but was deleted from a previous affiliate registration that was accepted.
  • 🔧 Fixed(PRO) Fixed an issue in some cases with not being able tot save the payout settings on the affiliate dashboard.
  • 🔧 Fixed(PRO) Fixed an issue with affiliate group commission rates when the user was assigned to multiple user roles. It will now get the highest commission rate from the roles assigned.

Version 7.2.3 - 15th December 2025

  • ✨ NewAdded a alternative method of creating the cookies for referral link tracking, with JS, when headers have already been sent, which can sometimes happen with certain themes/plugins.
  • 🔨 TweakMade a few tweaks to the cookie system to be more reliable in some cases.
  • 🔧 FixedFixed a potential issue on the MLA dashboard when viewing a sub affiliate dashboard as the parent affiliate in some cases.
  • 🔧 FixedFixed a potential PHP error when the registration form when the coupon is empty.
  • 🔧 FixedFixed an issue since the last update, with the fields on the admin "affiliate registrations" page not showing properly in some cases.
  • 🔧 Fixed(PRO) Fixed an issue since the last update, on the floating widget, with the social share buttons not showing properly.

Version 7.2.1 - 12th November 2025

  • ✨ NewAdded an option in "Commission > Advanced Calculation" Settings to choose the commission rounding mode (Round to nearest or Round down/truncate).
  • ✨ NewAdded a new option to the fraud settings: Require customers to visit the affiliate referral link before applying their coupon.
  • ✨ NewAdded clearer options to show the login form and registration for on the affiliate portal or dashboard page.
  • 🔨 TweakAdded a warning message under the "Affiliate Portal" toggle when "Anyone can register" is disabled, and defaults the registration form to hidden.
  • 🔨 TweakMade some tweaks/improvements to the "User role required for plugin admin capabilities" setting functionality.
  • 🔨 TweakOn the view affiliate page, when the a coupons statistics need calculating, it now show the coupon and "calculate statistics" button for those coupons next to the message.
  • 🔧 FixedFixed an issue with the "Affiliate User" field dropdown when editing a coupon.
  • 🛠️ DevAdded developer hook "wcusage_before_payout_submit" a payout is made.
  • OtherUpdated to Freemius SDK 2.13.0.

Version 7.2.0 - 4th November 2025

  • 👍️ ImprovedMade some changes to the admin dashboard page, and added ajax pagination to all the different sections.
  • 🔨 TweakMade a variety of code improvements and optimizations throughout the plugin to better meet coding standards.

Version 7.1.5 - 4th November 2025

  • 🔨 TweakAdded a warning message on the "affiliate registration form" settings if "Anyone can register" is disabled.

Version 7.1.4 - 4th November 2025

  • OtherRelease notes not yet published.

Version 7.1.2 - 4th November 2025

  • 🔨 TweakSecurity improvement.

Version 7.1.1 - 28th October 2025

  • OtherRelease notes not yet published.

Version 7.1.0 - 28th October 2025

  • ✨ NewAdded filters to the "Affiliate Orders" admin page.
  • ✨ New(PRO) Added an "Export Orders" button to the "Affiliate Orders" admin page to export the filtered orders list to a CSV file.
  • ✨ NewThe "Affiliate Orders" admin page is now displaying the total items and pages on the pagination.
  • ✨ NewAdded filters to the "Affiliate Coupons" admin page.
  • ✨ NewAdded a "sort by" option to the admin "Affiliate Coupons" page.
  • ✨ New(PRO) Added filters to the "Commission Payouts" admin page.
  • ✨ New(PRO) Added an "Export Payouts" button to the "Commission Payouts" admin page to export the filtered payouts list to a CSV file.
  • ✨ New(PRO) Updated the "Statements" admin page to have more columns and details, and a download button, for each statement.
  • ✨ New(PRO) Updated the "Performance Bonuses" admin page to have more columns and details, for each bonus.
  • 👍️ ImprovedYou can now drag and reorder the sections on the admin dashboard page.
  • 🔨 TweakOn the admin dashboard, the "Affiliate Program Statistics" now shows "This Month" as the default, with "Last 7 Days" moved to the last option.
  • 🔨 TweakThe core WooCommerce orders page "Coupon Affiliate" column now shows the coupon, user, and commission.
  • 🔨 Tweak(PRO) For the product rates tab, added an option to choose the "product price display", choosing whether the coupon discount is applied to the price that is shown.
  • 🔧 FixedThe "affiliate portal logo" will now automatically save when selecting a new image from the media library.
  • 🔧 FixedFixed an issue with the affiliate coupons admin page sometimes showing empty rows.
  • 🔧 FixedFixed an issue with the "filter by coupon code" not working on the WooCommerce orders admin page with HPOS.
  • 🔧 Fixed(PRO) Fixed an issue with the MLA portal not loading scripts properly, so some things like copy to clipboard were not working.
  • 🔧 Fixed(PRO) Fixed an issue with not being able to edit the PRO settings in the "Registrations" settings tab.
  • 🔧 Fixed(PRO) Partial fix for some broken text output on PDF statements.

Version 7.0.3 - 17th October 2025

  • 🔨 TweakSmall tweak to the admin notifications dropdown.
  • 🔨 TweakAdded a bulk "Save All" button with AJAX saving is enabled, when switching from the legacy option.
  • 🔧 FixedFixed a PHP error when special characters are used in the custom "affiliate" text.
  • 🔧 FixedFixed an issue with the settings page redirect after opting in on plugin activation.

Version 7.0.2 - 16th October 2025

  • 🔧 FixedFixed an issue with ajax saving on the settings page not working in some cases.

Version 7.0.1 - 14th October 2025

  • 🔨 TweakMade a few small tweaks and fixes to the settings page, and saving settings functionality.
  • 🔧 FixedFixed an issue with the admin users list and affiliate user page "payouts" details showing incorrectly in some cases.
  • 🔧 FixedFixed an issue with disabling the "Enable Affiliate Registration Features" option on step 2 of the setup wizard not letting you continue.

Version 7.0.0 - 14th October 2025

  • ✨ NewUpdated the header bar on the plugins admin pages to include a more useful menu with quick links to important pages.
  • ✨ NewAdded a new "notifications" icon to the header bar on the plugins admin pages, which will when there is new referrals, pending registrations, payout requests, and more.
  • ✨ NewOn the admin dashboard, added a new sidebar with an "Affiliate Overview" showing the total number of affiliates, latest affiliates, and top affiliates.
  • ✨ NewUpdated the layout of the plugins settings page with the navigation tabs now on the left side.
  • ✨ NewMade improvements to the "Affiliate Dashboard Customisation" settings section for simpler tab customisation.
  • ✨ NewYou can now re-order the tabs on the affiliate dashboard and affiliate portal via drag and drop in the "Affiliate Dashboard Customisation" settings.
  • ✨ NewAdded an option to the admin reports to filter by user group/role when "only show coupons assigned to an affiliate user" is enabled.
  • ✨ New(PRO) Added an option to disable the invoice upload option for certain payout methods.
  • ✨ New(PRO) Added an option to include a square image/logo in the center of the QR code generated for referral URLs.
  • ✨ New(PRO) New merge tags added to the "Dynamic Code Generator" settings: {first_name}, {last_name}, {first_name_initial}, {last_name_initial}. Also added a new filter for developers to make custom changes to the generated code.
  • ✨ New(PRO) Added mailjet.com as a new option for the mailing list integrations.
  • ✨ New(PRO) Added a new option to the built-in store credit payout method to "enable multi-currency support for store credit".
  • 🔨 Tweak(PRO) Added details about the built-in newsletter system in the mailing list integrations settings section.
  • 🔧 FixedFixed the "Subscribe to Affiliate Newsletters" option showing on the settings tab of the affiliate dashboard even when disabled in the settings.
  • 🔧 FixedFixed an issue with the settings page redirecting to the dashboard page on some websites.
  • 🔧 FixedFixed some issues with the "search settings" feature on the settings page.
  • 🔧 FixedFixed a potential issue with saving settings in some cases.
  • OtherUpdated translations.

Version 6.8.2 - 23rd September 2025

  • 🔨 TweakUpdated the registration form "Custom Fields" settings section to allow dynamically adding and removing fields more easily without needing to refresh the page.
  • 🔧 FixedPotential fix to an issue with some websites when bulk saving the settings.
  • 🔧 FixedFixed an issue with Freemius "opt in" for the free version on activating the plugin.
  • OtherUpdated to Freemius SDK 2.12.2.

Version 6.8.1 - 18th September 2025

  • 🔨 TweakRemoved the blue outline on the affiliate portal login form and registration form fields.
  • 🔨 TweakNew installs will no automatically save the default settings on the setup wizard even if they do not visit the settings page.
  • Security Fix: Fixed a potential small "Broken Access Control" vulnerability bug (reported by "Legion Hunter" via Patchstack).

Version 6.8.0 - 15th September 2025

  • ✨ NewAdded a new "Email Newsletter" feature to the plugin. This allows you to send custom email newsletters to all your affiliates, or specific groups of affiliates. You can create and send newsletters directly from the WordPress admin area, and view a log of all sent newsletters.
  • ✨ NewAdded a new referral link click "Attribution Model" option to the plugin settings, to allow you to choose between "Last-click" or "First-click" attribution for the referral URL tracking. This will determine whether the first or last referral URL used by a customer is credited with the conversion when they place an order.
  • 🔨 Tweak(PRO) The custom payout amount field on the affiliate dashboard payouts tab is now always 2 decimal places.
  • 🔧 FixedFixed an issue with deleting admin accounts triggering user roles to be deleted.
  • 🔧 FixedFixed a potential PHP warning on the floating widget when a coupon has no statistics yet.

Version 6.7.0 - 8th September 2025

  • ✨ NewAdded new "view affiliate" page that allows admins to view detailed information about each individual affiliate, with a summary of their coupons, statistics, referrals, payouts, activity and more. It also includes options to edit the affiliate user. All previous edit affiliate links now go to this new page.
  • ✨ NewOn the "Coupon Affiliate Users" page, added a new "actions" column with a "view" link, and a "delete" button that has 4 different options for deleting the affiliate users or their coupons.
  • ✨ NewOn the "Coupon Affiliate Users" page, added a new "sort by" filter to sort the users by total referrals, sales, commission, or unpaid commission.
  • ✨ NewAdded a new search box to the admin settings page, that lets you look for specific settings on the page more easily.
  • 🔨 TweakMade some changes to the admin "registrations" page including adding some "view affiliate" and "view dashboard" buttons to the action column for accepted registrations.
  • 🔧 FixedFixed an issue with some websites not being able to save settings properly.
  • 🔧 FixedFixed an issue with the referral URL displayed on the affiliate dashboard not being encoded, so coupons with symbols in them were not working properly.
  • 🔧 FixedFixed an issue in some cases where if certain order statuses were selected to show on the affiliate dashboard, certain orders were not updating the "total" or "monthly summary" stats properly.
  • 🔧 FixedFixed a potential PHP error on the admin registrations page.