Changelog

Welcome to the changelog section of Freemius, here you'll find our weekly technical update notes. You can subscribe to all posts via Newsletter or follow us on Twitter to stay updated.

Affiliates Terms Page Improvements and Contact Form Bug Fix

This week we are releasing a few housekeeping updates, mostly aimed at maintenance and bug fixes. Out of those, the following are noteworthy.

Affiliates Terms Page Styling Improvement

We have updated the style of the affiliates terms page, taking it at-par with the rest of the legal pages generated by Freemius. Link of such page is included automatically when a user signs up for the Affiliate Platform. The platform can significantly boost your marketing efforts and sales, so we recommend checking it out.

SDK Contact Form Bug Fix

Our maker reported some console error being shown by the SDK’s standalone contact form. While the error itself didn’t break any functionality, we understand it can be annoying, especially to our tech savvy makers. We have investigated and fixed the issue from our end.

Improvements to the Subscription Cancellation Coupon Trigger

Freemius supports setting up a special coupon to appear when a buyer is canceling their subscription. This feature is very helpful in reducing churn rates.

As a maker, you just need to set the coupon up from the Developer Dashboard. Now, when a buyer clicks the “Cancel Auto-Renew” button through the Customer Portal, the system will automatically show a pop-up like the one above.

However, due to limitations of payment gateways, sometimes it is impossible to apply the discount to the next immediate payment from the subscription.

To improve the system, we’ve made it smarter by detecting such scenarios and preventing the pop-up from showing. This, in turn, will help reduce disputes.

Checkout Language Selector UI Improvements

Recently, we introduced flags next to the language selector in our Checkout to help buyers select the language most relevant to their location.

However, we understand that many countries share the same language. For example, Spanish is spoken both in Spain and Argentina.

To make the experience more user-friendly, the UI will now display the relevant flag beside the language corresponding to the user’s location.

For instance, if the user is coming from Argentina, the Argentine flag will appear next to the “Español” language option.

Remember, you can always use the language: 'auto' option to load the Checkout in the buyer’s preferred language through the Checkout JS SDK.

Added Tax Information in Payments and Subscription Pages

As a Merchant of Record, Freemius handles EU VAT and US sales tax compliance on your behalf, so you don’t need to worry about the complexities of tax regulations.

To enhance transparency, we’ve added a new feature to display tax information directly in the Developer Dashboard. Previously, tax details could only be accessed through the API.

With this update, the Subscriptions page now shows a tax percentage icon next to the “Per cycle” price, revealing the tax rate applied to each subscription.

Additionally, the Payments table now displays the actual tax amount collected when Freemius processed the payment.

Please note that these tax amounts are not part of your gross revenue. They are collected in addition to the price you set and are submitted by Freemius to the appropriate tax authorities.

Additionally, we’ve improved the tooltips for various discounts associated with a payment or subscription, including pro-rated discounts, coupon discounts, and more.

Version 1.1.0 of the Freemius Checkout JS SDK

We’re excited to announce the release of version 1.1.0 of the Freemius Checkout JS SDK! This update introduces a backward-compatible enhancement, allowing you to use product_id instead of plugin_id (because we support various kinds of products, not only plugins).

We also improved the type system to provide better TypeScript intellisense.

The change is also reflected in our Developer Dashboard.

Simply go to the Plans page and click on the Get Checkout Code button to get started.

If you’re using the CDN version of the Checkout JS, no actions are necessary from your end. If you’re using NPM or other package manager, be sure to update to the latest version.

Compliance update for our WordPress SDK with Composer support

We’re excited to announce the release of version 2.10.0 of our WordPress SDK! This update includes the latest compliance changes required by the WordPress.org review team and adds support for installation via Composer, a widely-used dependency manager in the PHP ecosystem.

To enhance the developer experience on the SDK Integration page of the Developer Dashboard, we’ve introduced several improvements.

The updated instructions now explicitly direct you to place the SDK in the vendor/freemius directory at the root of your product. This placement is now required by the WordPress.org review team.

Alternatively, you can select the “Composer” option to see step-by-step instructions for installing the SDK using Composer.

Additionally, we’ve updated the integration snippet to include a check for the file’s existence before including it. This change is particularly beneficial for developers who have yet to transition the SDK to the newly recommended directory, and will only show up for existing plugins and themes.

Please refer to the GitHub changelog for more details about this update and the compliance changes.

We’re also working on a follow-up task to simplify the UI further and provide exact integration code for your preferred method. Stay tuned!

Various Improvements for the Developer Dashboard

This week, we’re deploying several updates to the Developer Dashboard, including improvements and bug fixes

Improvements to Product Ownership Transfer

Freemius has long supported ownership transfers, which is especially useful if you’re selling your business.

We identified and fixed a glitch in the system where ownership transfers could be blocked in certain cases due to recent enhancements to the API system.

While addressing this issue, we also discovered and resolved a couple of edge-case bugs. The entire transfer system, including the team member UI, should now work flawlessly.

Better Filtering for the Custom Webhook Integration

With Freemius, you can add webhook listeners for custom integrations. Freemius logs numerous events throughout a product’s lifecycle, such as when a new subscription is created or canceled.

As a product owner, you can use these events to trigger responses in your own system.

We discovered that the UI for filtering events was incorrectly displaying events not scoped to the selected product. This issue has been resolved, and we’ve also made performance improvements for a smoother experience.

Other Enhancements and Bug Fixes

  • Fixed an issue where adding a new whitelisted site could cause errors.
  • Resolved a bug where some URLs incorrectly triggered the product code change pop-up.
  • Added toast notifications to confirm successful operations when reordering or toggling features on the Plan page.

New Feature to Export Sites

As part of our ongoing Data Liberation project, we’ve added export functionality for Sites.

To get started, navigate to the Sites page under your Developer Dashboard and click Download in the top-right corner.

We’re nearing the finish line for this project—stay tuned for more updates!

WordPress SDK: License Activation and Opt-In Improvements

We’re introducing changes to our backend to enhance the experience of using the WordPress SDK.

Activating licenses for deleted plans

Previously, we added a temporary restriction to prevent makers from deleting plans with active, non-expired licenses. This measure was put in place to avoid scenarios where buyers couldn’t activate licenses tied to a deleted plan.

However, we aim to offer makers the flexibility to delete plans (e.g., to deprecate them) while still enabling buyers to activate their valid licenses.

In this update, we’re rolling out the following improvements:

  1. Plan Deletion Flexibility: Makers can now delete plans even if active licenses are associated with them.
  2. License Activation Support: The SDK now fully supports activating licenses linked to deleted plans.

If you’re already using version 2.9.0 of the WordPress SDK, no further updates are required on your end.

Preventing free plan opt-ins for premium-only products

We identified an edge case where users with malicious intent could modify the SDK integration code within a WordPress plugin or theme to attempt opting into a product’s free plan.

Although this did not pose any security risk, it led to the creation of unnecessary sites, even when the product did not offer a free plan.

With this deployment, we’ve implemented measures to actively detect and block such requests.

Improved staging site support

Freemius provides out-of-the-box license utilization for staging and development sites. We’ve enhanced our system to include support for additional well-known staging providers, making it even easier to manage licenses during development.

Checkout Bug Fix for Invalid Pricing

We identified an issue where, if a maker intentionally left a pricing field blank, the checkout could load in an invalid state. In such cases, the checkout incorrectly displayed the price as zero, even though it wasn’t intended to show up at all.

For instance, a maker might choose not to offer single-unit pricing. In these scenarios, the checkout should automatically load with the nearest lower unit pricing by default.

We’ve resolved this glitch and deployed a fix to ensure the checkout behaves as expected in such cases.