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.

Developer Dashboard bug fixes

We identified a bug in the Developer Dashboard where the “Create new product” form wasn’t functioning properly when accessed from a bundle’s view.

This issue has been resolved.

Additionally, we noticed a conflict between the Help Scout beacon icon and toast messages, which has also been fixed.

API Documentation update and bug fix

We’ve added more endpoint documentation to our website, available here.

Please note that the documentation site is a “work in progress.” We’ll continue to publish updates as development progresses. The documentation follows the OpenAPI schema to ensure standardized usage.

Bug fixes & improvements

  • We identified a bug in the /products/{product_id}/tags/latest.json endpoint, where the returned downloadable URL was invalid. This issue has now been fixed.
  • The bundle endpoint /bundles/{bundle_id}/plugins.json now supports a DELETE request to remove a product’s association with a bundle. We will add the documentation soon.

Legal agreements update

We’ve introduced Terms & Conditions of Sale, a legal agreement for SaaS products, which is now part of the checkout experience.

If you’re using Freemius integration with your SaaS products, the Terms & Conditions of Sale page is available at the following link:

https://freemius.com/product/<productID>/<productSlug>/legal/terms-of-sale

The productID and productSlug can be found on the Settings page in the Developer Dashboard.


Additionally, we discovered that the affiliate email mistakenly linked to the EULA instead of the Affiliate Agreement. This has now been corrected. We thank our maker for reporting this issue.

Fixed UI bug in proration discount for migrated licenses

Freemius supports both proration discounts and migrations from various other platforms.

Freemius proration applying 100% first-time discount on a migrated license

Additionally, Freemius automatically offers a proration discount to your customers when they upgrade an existing license to renew through Freemius. This helps with transferring your subscription from the old platform to Freemius, where we handle taxes, disputes, and many other details.

Recently, we identified an edge case bug where the UI incorrectly displayed a proration discount for some migrated licenses that shouldn’t have received one. Although the final payment did not apply the discount, the UI caused confusion for both buyers and makers. We have now fixed this issue.

Exporting payment refund reason

Freemius allows you to issue full or partial refunds to your customers. When issuing a refund, you can also add a Refund reason for your team members to see.

Now, when exporting payments, if you select the “Refunds” filter from the UI, the exported CSV will include the refund reason.

This update is designed to help our makers perform custom analytics with all the necessary information.

Design refresh of the EULA page

We have updated the design of Freemius products’ EULA page to feature a modern, user-friendly appearance.

Example EULA page of a Freemius product

You can access the End User License Agreement (EULA) for your product at the following URL:

  • https://freemius.com/product/<productID>/<productSlug>/legal/eula/

Please replace <productID> and <slug> with the relevant values, which can be found under the “Settings” page of your product in the Developer Dashboard.

The EULA page is used during checkout, by affiliates, and in other related processes.

Enhanced Language Support and UI Updates for Freemius Checkout Translation

Following our release of Checkout Translation, we have made additional updates to the UI.

We now always display the language selector dropdown in the footer, with the default language set to ‘English.’ If you want to automatically select a supported language based on the buyer’s location, you can pass language: 'auto' to the JavaScript SDK.

const handler = new FS.Checkout({
  plugin_id: 'x',
  public_key: '...',
  language: 'auto',
});

Additionally,

  1. We have renamed the language labels to their native names (e.g., ‘Español’ instead of ‘Spanish’) to help users select the correct language.
  2. We have also added flag icons to better represent each language’s locale.
  3. The German translation has been updated to fix a few minor UI glitches.

Stay tuned for more product updates.

Various bug fixes

This week’s deployment includes the following bug fixes:

  • In the Developer Dashboard and our WordPress SDK, when changing a user’s email address (transferring assets), we noticed that whitelisted sites were not being transferred. This issue has been resolved.
  • We fixed an issue on the Analytics page of the Developer Dashboard where the filtering UI would not appear in certain cases.
  • The User Dashboard would incorrectly redirect when embedded and loaded in Safari. This has now been fixed.
  • We noticed a bug where team members with the ‘developer’ role could modify coupons but not coupon notes. This issue has now been resolved.

Freemius Checkout translations out of beta

Great news! The Freemius Checkout now fully supports the following languages out of the box.

  • Spanish
  • German
  • French
  • Italian
  • Dutch
Freemius Checkout in Italian

Loading the checkout page in a buyer’s native language significantly improves conversion rates. That’s why we’ve prioritized translating the Checkout into the most popular languages.

To display the Checkout in a specific language, you can use the language parameter when configuring the Checkout JavaScript SDK. For example:

const handler = new FS.Checkout({
  plugin_id: 'x',
  public_key: '...',
  language: 'de_DE',
});

The example above will load the Checkout in German. Alternatively, you can use the value 'auto', which automatically determines the buyer’s location and loads the Checkout in their supported language. For more information please see our documentation here.