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.

Deployment summary: 30 April, 2023

Backend Changes

  • Following a suggestion from a partner, we’re now logging a new event called user.billing.tax_id.updated. This event is logged when either the developer or the user changes the tax ID associated with the user’s billing. If you need to sync your own system with the changes in the tax ID of a user, you can hook into this event from the Developer Dashboard.
  • We fixed some SEO-related issues in our blog.

User Dashboard Changes

Following user complaints, we’ve added a password visibility button in the User Dashboard’s ‘login’ form and the ‘change password’ form.

This helps our users determine if the password is correct when trying to log in.

Developer Dashboard: Upgraded dependencies, improved file uploads, and more

As part of our internal housekeeping effort to pay the tech debt we accumulated over the years, we’ve been hard at work to upgrade all dependencies in the Developer Dashboard app. We’re glad to announce it’s been accomplished. The app is now a little faster and contains less JavaScript (talk about dropping support of IE 8 from old dependencies 😅).

During the process, we also realized we weren’t properly utilizing the file upload mechanism in various places. We made significant improvements in that area too.

Adding filters and supporting drag and drop to file uploads

…from places where you can upload image files, for example:

  • Creating a new product
  • Updating a product or store’s icon
  • Updating your profile picture
  • Uploading banner images and screenshots for add-ons

They now support drag-and-drop for better UX. Also, when selecting a file from the Upload button, it will filter out unsupported files.

File upload UI Freemius Developer Dashboard

Improved UI for add-ons, banner images, and screenshots

If you go to Settings on add-on pages, you’ll see we’ve improved the UI for uploading:

  • Banner images
  • Card banner images
  • Screenshots

They still support drag-and-drop and feature a nifty file selector.

Fixed permission issues that arose when developers or support staff were logging in

The new Multi-store Dashboard would sometimes give prompts related to permissions when developers or support staff were logging in.

We’ve fixed this regression, improved which pages are rendered for team members, and enhanced navigation to relevant pages when switching between products.

Fixing MailChimp integration issue

Our MailChimp integration was not working properly for the Multi-store Developer Dashboard. If your MailChimp list had groups, they weren’t being shown in the UI.

Thank you to our partners who made us aware of this issue. We’ve pushed a fix to mitigate it.

Housekeeping

  • All our AngularJS and related dependencies are up to date.
  • We’ve significantly improved the build and dependency management process, which has led to better DX (Developer Experience) and less JavaScript.
  • We now have an integration testing framework for the Developer Dashboard to help us develop features more confidently.

 

Revealing download links in the checkout for static products

For historical reasons, we didn’t reveal the download link and license key in our checkout form. The assumption was that anyone with access to the email address would have access to the license key and the download link. By not revealing them during checkout, we automatically verified the email. This also reduces fraud.

While this works for WordPress plugins and themes, it can add an unnecessary step for static products like widgets and templates. Customers usually want to download them right away and they don’t need the license key to activate them.

Following requests from our partners, we’ve started showing download links for all static products right after the checkout.

We still don’t reveal the license key. If we see more requests related to this feature, we will add support in our Developer Dashboard, where our partners can choose if they want to reveal the download link and – possibly – the license key right after the checkout.

Checkout security layer updates

This week, we’re releasing some minor updates to the new security layer we’ve been working on. This system is there to protect us and our partners from ever-increasing card testing attacks.

The new system is still running under observation mode. It’s already providing us with plenty of valuable information and we’re growing confident about its robustness. We hope to bring it out of observation mode soon and put it into production.

Deployment summary 2nd April, 2023

This week, we’re releasing some updates to the Freemius backend and API. They are:

  • Improvements to the new security layer from the observational data we collected.
  • The ability to add custom localhost URL patterns for licenses migrated from other platforms. This feature was requested by our partners.
  • Some housekeeping and internal changes.

Please stay tuned – we’re preparing for some big changes in the Checkout App (no teasers at the moment 😄)

New security layer to block card testing attacks, and other changes

Phased rollout of a new security layer in the checkout process

This week, we’re rolling out a new security layer that our CTO Dror Yaakov has been working on. It will prevent card testing attacks more accurately while letting legitimate purchases pass through.

We’re doing this in a phased manner to avoid surprises and to thoroughly test the system. Only a small percentage of requests will run through the new layer. Once we have enough data, we will let the system handle more requests, eventually replacing the existing one.

Other changes

  • Some SEO-related updates to the blog.
  • Improvements to some internal apps.
  • Improved the checkout app’s email validation system.

Changelog summary 19 March, 2023

Freemius Backend

  • The developer billing update/creation endpoint now supports country names with commas.
  • ‘Support specialist’ and ‘Developer’ roles in the Team now have permission to update the billing of users.
  • The checkout and pricing apps are now running GA4 instead of GA3 (soon to be deprecated).

Freemius website and blog

  • Some optimization with the website and blog caching to make them load faster.
  • Various SEO work (thanks to our new team member Ymreb Concepcion).

Developer Dashboard

  • Updated legacy GA3 to new GA4.
  • Some in-house updates.

User Dashboard

  • We’ve updated legacy GA3 to the new GA4.

Changelog summary 5 March, 2023

Backend changes

  • Minor edge case fix in the weekly reporting system.
  • Data sanitization in some internal systems.
  • Fixed a minor edge case issue in PayPal dispute sync system.
  • Fixed a glitch in the password reset mechanism where the reset token in some cases would get invalidated prematurely.
  • Enriched the ‘new license creation’ endpoint with a new parameter to optionally white label the license when creating it.
  • Updated the system to inherit the white label property when creating child licenses for items in a bundle.
  • Increased max file upload size for static files to 120 MB.

Developer Dashboard

  • Increased max file upload size for static files to 120 MB.
  • Improvements in the instructions inside the Webhooks Integration page.
  • Made the payout email notification read-only, since we want to notify developers and send instructions for the invoice.
  • Changed read-only notification configurations to be ‘checkable’ only if they were previously off.
  • Removed the unnecessary button from the ‘create license’ dialog.

Complete Developer Dashboard reskinning – with dark mode

This weekend, it’s our pleasure to announce a wholly reskinned and modernized Developer Dashboard.

 

The entirety of the application has been reskinned. When you log in for the first time, the system will try to detect your color preference and automatically set the light or the dark theme. You can click on the sun/moon icon beside the Freemius logo to toggle the theme as you please.

Here are some notable pointers.

Modern and better icons set

Our designer Vitalii has worked hard to create modern and meaningful icons for the actions/information the Developer Dashboard provides. Here are some examples:

Redesigned SDK integration page

We have refreshed the design of the SDK integration page to elucidate the steps you need to take to integrate your product with Freemius.

Redesigned Plans page

We’ve made it easier to create new pricing variations and bulk licensing on the Plans page.

.These are but a few of the Developer Dashboard’s new improvements. Please login to your Developer Dashboard now and give us a shout on how you like them.

Multiple FX currencies and Users page improvements in the Developer Dashboard

This week’s changelog comes with many new features in the Developer Dashboard.

Supporting multiple Foreign Exchange currencies

After we introduced a “Foreign Exchange – USD” virtual currency to display transactional data on the new “Sales Analytics” page, we received a request to support other foreign exchange currencies too. This week, we are releasing that feature.

Apart from the “FX-USD”, you can convert your transactional data into any of the currencies Freemius supports.

Subscriptions and Payments tabs on the Users page are now open by default

Feedback from our partners made us realize that Subscriptions and Payments are the primary things one wants to see when accessing the Users page. It was hidden behind an accordion, which you had to click to view information.

To save you the hassle, those sections are now open by default and load as soon as the licenses are loaded.

Other changes

  • Fix: In some cases, the same currencies appeared multiple times in the filtering UI.
  • Fix: Internal pub/sub architecture of the app.
    • In some edge cases, the plugin would not display when navigating between pages.
    • When navigating to one store away from another’s product, the state held incorrect data.
  • Fix: Race condition when loading subscriptions/licenses of a user.
  • Fix: Incorrect URL in the share menu.
  • Fix: Login reCAPTCHA not showing up, due to a race condition in loading the script.
  • Update: Improved validation in the login/registration/password recovery form.

 

New wire payout feature in the Developer Dashboard

Following many requests from our partners, we’ve implemented a self-service system to add or update “Bank Wire” payout methods in our Developer Dashboard.

Until now, our partners had to send us bank details manually if they wished to have payouts via bank wire. But with this update, you can do it yourself from the Developer Dashboard’s Profile page.

Changing payout methods to wires

Go to My Profile at the top-right corner of the Developer Dashboard and scroll to the section that says Payout Method(s). Under the Payout Method column, you’ll find that selecting Bank Wire (or Wise) will open a popup where you can enter your bank details.

All of your details are saved securely in our server under heavy encryption.

Setting different bank accounts for different currencies

At Freemius, we support selling in three currencies.

You can choose to…

  • Use the same bank account for different source currencies and convert them to the same target currency. In this case, Freemius will do the conversion for you (if applicable).
  • Use different bank accounts with a different combination of source and target currency and let your bank do the conversion (if required).
  • If your bank account supports different target currencies, then you can configure the same bank account to get paid in multiple currencies too.

You can set up three bank accounts if you’re selling in all three currencies.

For existing partners with wire payouts

We have imported data for all of our partners who are already using the wire payout. You will see the form already populated with the bank account details you shared with us.

Miscellaneous activities: 23 January 2023

Freemius Backend/API

  • Supporting API for developers to manage their own bank accounts for payouts.
  • Fixed some date/time-related logic in the backend.
  • Implemented functionality to handle rare edge case products where the configured slug is not the same as the WordPress.org slug.
  • Disabled sending the activation email during an uninstall opt-in event.
  • Improved some internal logic related to webhooks processing.

Developer Dashboard

  • Fixed some styling and behavioral issues in the New Products form.

Sidebar enhancements in the Developer Dashboard

Following feedback from many of our partners, we’re releasing a bunch of enhancements and fixes to the newly introduced Multi-store sidebar in our Developer Dashboard this week.

Better Stores and Products list navigation

We are now showing the number of products associated with a store when browsing the STORES list.

This will indicate if a store has no product. We hope this will be useful for identifying ‘accidentally’ created stores that you may no longer want to use and would like to delete.

When creating a new product under a store, the sidebar will now show the Stores header with the Products page being highlighted to better reflect what status you’re in.

The add-ons will now appear with a better UI to indicate which product they are under.

Following feedback, we have started adding a tooltip to show the full name of the product when hovering. This is useful if you have many products with similar names that are ‘trimmed’ to accommodate the space.

Improved search UX

When searching through products (which will only show up if you have more than 7 products), we now hide the Store title so that you can focus on the product names themselves.

 

Miscellaneous updates: 15 January, 2023

Developer Dashboard

  • Fixed edge case bug that prevented users from going to the SETTINGS page of an empty store.
  • Fixed a related edge case bug where if you left the Developer Dashboard from an empty store and then logged in again, you would land on a broken Store Dashboard page.
  • Added configuration to increase upload size for deployments for specific products.
  • Fixed an issue where clicking on the Count cell of the deployment page didn’t take it to the correct page.

Freemius API/Backend

  • Fixed an issue in store scoped endpoint for handling a license entity belonging to a developer.
  • Allowed larger file upload size limit for specific products.
Load more