✨ NouveauA 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”.
✨ Nouveau(PRO) Webhooks, sending a signed JSON notification to another service whenever a referral, commission, registration or payout happens.
✨ Nouveau(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.
✨ NouveauHovering the commission amount in the “Coupon Affiliate” panel on an order now shows a full breakdown of how that figure was calculated.
✨ NouveauRight-to-left support for the affiliate dashboard, applied automatically on sites using a right-to-left language such as Hebrew, Arabic, Farsi or Urdu.
✨ NouveauA “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.
✨ Nouveau(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.
🔧 FixeA 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 “'”.
🔧 Fixe(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.
🔧 FixeRefreshing an affiliate’s statistics did not recalculate pending commission on stores using High-Performance Order Storage.
🔧 FixeOn 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.
🔧 Fixe(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.
🔧 Fixe(PRO) Fixed an issue with the commission balance when re-opening a cancelled order.
🔧 Fixe(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.
🔧 FixeThe 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.
🔧 FixeThe 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”.
🔧 Fixe(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.
🔧 FixeSettings 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.
🔧 FixeAdding 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.
🔧 Fixe(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.
🔧 FixeWith 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.
🔧 FixeSome 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.
🔧 Fixe(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.
🔧 Fixe(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”.
🔧 Fixe(PRO) A long “footer text” on a payout statement printed its line breaks as literal “” tags instead of wrapping onto the next line.