Changelog / Beta Checkout Updates: Flexible discounts and more

Beta Checkout Updates: Flexible discounts and more

We have pushed various updates to the beta checkout. Just like before, to try it out, use checkout_style=phase2 in the URL parameter or checkout_style: 'phase2' in the JavaScript integration. If you’ve missed the various updates to the phase2 beta checkout, you can find it here and here.

Flexible discounts parameters

We have three kinds of discounts we show in the checkout before the subtotal.

Different discounts in Freemius Checkout

  • Annual Discount – The difference between the monthly billing cycle price and the annual billing cycle price.
  • Multisite Discount – The difference between the single license/site price and the multi-license/site price.
  • Bundle Discount – The difference between the compounded price of a bundle’s children and the price of the bundle itself.

The reason we show all these discounts is to encourage the purchase of a higher billing cycle, licenses, or bundles.

But over the year we received feedback from our partners asking us to give the flexibility to determine which discounts are to be shown. There are cases where a huge discount can discourage a buyer. For example, if a seller is providing 100-site pricing, then it can often result in an undiscounted price of $10,000, whereas the amount to pay could be less than $500.

Big multi site discount

So in this update, we are not only giving the ability to turn off discounts through configuration but also remade our discounting system from the ground up, making it smarter. Please find below the three newly introduced configuration parameters and their different values.

Property Description Accepted values Default value
annual_discount Determines whether the annual discount will be shown in the checkout. true | false true
multisite_discount Determines whether the multi-site discount will be shown. When the value is auto, the discount will only be shown if the single license pricing difference does not exceed 10 times more than the current pricing.

For example, say you have single-license pricing at $10 and a 100 license price at $90. For this configuration, the difference is 10*100 - 90 = 910 which is more than 10 times the current price (9*100 = 900). So by default when auto is selected, the discount will turned off. Please note, that the discount turns off for all license quotas, not just the one where the difference is high.

true | false | 'auto' 'auto'
bundle_discount Determines whether the bundle discount will be shown. The bundle discount itself depends on the compound price of its children. By default with maximize, we try to take the compound price from the lowest billing cycle and license. But with the value of true, we take it from the closest billing cycle and licenses.

While introducing this parameter, we also deprecated the old maximize_discounts parameter. The old parameter will only be used if the bundle_discount parameter is not explicitly set.

true | false | 'maximize' 'maximize

Please do give the new discounting system a try. The new system is meant to be backward compatible. The only exception is that the multi-site discount can be turned off depending on the pricing. You can always set a hard value of true to enable it back.

Here are some examples and live demos you can check. Feel free to modify the URL parameters.

Other UI configuration parameters

We have also introduced three new UI parameters to give more flexibility.

always_show_renewals_amount (true | false, default false)

Always shown renewal amount in Freemius Checkout

When set to true, a small line mentioning the total renewal price per billing cycle will shown below the total. By default, it only shows up when there is a renewal discount involved. We introduced this option because it can help provide more context with different discounts already shown in the UI. For example, one can see that there is a 30% annual discount and wonder if the discount is only for the first payment. There could also be a coupon that is applicable for the first payment only. With a clear line mentioning the renewal amount, the confusion goes away.

show_inline_currency_selector (true | false, default true)

Freemius checkout - Inline currency selector

We recently introduced an inline currency selector in the total line. Now you can hide it if you want by setting the value to false. We gave this option, because in some cases, the seller may not want to show an UI to change currencies for various reasons.

refund_policy_position (below_form | below_breakdown | dynamic, default dynamic)

Dynamic refund policy badge position in Freemius Checkout

Many partners asked us to give the option to specify where to place the refund policy badge. For some partners, there were no reviews, so placing it below the breakdown instead of the form was the natural choice. For some products, the breakdown area can be slim (without discounts or upsells). So by placing the UI below the breakdown optimizes the real-estate.

We realized we cannot decide the best positioning because it depends. So we are giving full control over where you want to place the refund policy UI in the horizontal dual-column layout. Depending on your preference you can place it below the form or the breakdown. We recommend using the default value dynamic. Depending on the width and height of the page the UI will be placed optimally either below the form or below the breakdown.

Please note when there are no reviews, the badge will always be positioned below the breakdown. Also this settings has no effect for mobile or single column view.

Other noteworthy updates

  • We have fixed and enhanced various responsiveness issues, layout, spacing, etc.
  • The VAT disclaimer line will now expand to the empty space.
  • We identified and fixed a glitch in the form validation mechanism in mobile devices.