Setting up try and buy
Michiel Sikkes avatar
Written by Michiel Sikkes
Updated over a week ago

Note! This is a preview feature that has to be enabled by the Firmhouse team on your project. Please get in touch if you'd like to set up Try and Buy.

Try and buy is a great way for having your customers try your product before they make their purchase decision. Typically this means that your customer first subscribes for a couple of months and after that they purchase your product through a purchase offer. You can make all this happen via Firmhouse.

To set up a try and buy with Firmhouse, a few things have to happen:

  1. Create an asset for each customer as soon as you ship your product out.

  2. Define a formula or framework to calculate a customer's purchase price.

  3. Set up an automation that will set the purchase price for each individual asset and customer based on the formula.

  4. Enable Firmhouse's purchase offer flow. This is what customers will use to turn their trial subscription into a purchase.

Creating assets for each customer

Assets are required to set up a try and buy purchase flow. This is because the purchase price for a customer is stored on an asset in Firmhouse. You can create assets in two ways.

Manually creating assets

After your customer signed up you can create an asset and assign it to the customer. See Adding, updating and deleting assets and the other articles under Asset tracking to learn more about managing assets and assigning them to customers.

Automatically creating assets

You can also create assets via our API. This way you don't have to manually create an asset for each customer, but you can have your warehouse management or order system take care of creating assets.

See the createAsset mutation in our API to learn more about creating an asset and immediately assigning an asset to a Subscription.

Define a formula or framework for the asset purchase price

After successfully trying out your product, your customers want to purchase them. In a try and buy model they can typically purchase the product they already have for a discounted calculated price.

The simplest formula could be: retail price - months tried x amount.

For example, if your product typically costs €800 over the counter. After three month, you could offer your customer to purchase their product for €500. So the formula would be. €800 - 3 x €100. You could decide on a minimum value as well so that the purchase offer will never be lower than €50, even after months of trying.

Another alternative is that you have fixed amounts per months tried, without conforming to a certain linear formula. This means you set up some kind of mapping table from the # of months someone tried, to the purchase price you want to offer in that month.

For example:

After month

Purchase price















The above formula or mapping table is currently not something you can configure in Firmhouse. So we're going to explain how to up an external integration that will automatically update an asset's purchase price at every charge the customer gets.

Set up automation to calculate and set an asset purchase price

To allow your customer to go through the try and buy purchase flow, a purchase price needs to be set on the asset for the customer. This purchase price is used to show in the purchase offer flow that the customer can complete.

This means that on certain important events this purchase price needs to be recalculated and updated. For example right after checkout or shipping, and on every recurring invoice generated.

We have prepared a setup that you can use to automate calculating and setting the asset purchase price. See Using Pipedream to automate purchase price updates for the instructions.

It's also possible to write your own automation and build on top of our webhooks and API to frequently recalculate and set the purchase price for a customer. Please see the GraphQL API reference in the Firmhouse Developer Docs to learn how. And of course take note of the previously mentioned setup via Pipedream to understand what needs to happen.

Enable the asset purchase flow

Since this is currently a preview feature, the Firmhouse support team needs to enable the asset_purchase feature on your project.

Then for each product you'd like to offer as try and buy enable the Asset can be purchased checkbox in the product edit page:

Any asset with a purchase price set and a product marked as purchase-able will show up in the customer's self service center as a purchase promotion:

Then the customer can view the offer and choose to complete the payment with any payment method of their choice:

After completing the purchase the subscription will be marked as stopped and the asset will be marked as purchased.

Did this answer your question?