Creating hybrid pricing plans in Amberflo

Amberflo makes it easy to create flexible hybrid pricing plans for any product, resource, or use case.

First you create a new pricing plan, name the plan and select the billing period.


Next, add the monthly fee by selecting ‘Add’ in the ‘Fixed Rate’ section. From there, you can define whether the fee is one-time or recurring (once each billing period). There are also some more granular controls over whether to enable proration and whether prepaid credits can be used on the fee (sometimes credits are restricted to usage-based charges).


When creating the pricing plan, the non-usage-based features listed would need to be enabled from inside of your application and would not be handled in Amberflo. Each usage-based line-item from your pricing plan should have a corresponding product item created in Amberflo. Using the GitHub example from the previous page, you would create product items for ‘CI/CD Minutes’ and ‘GB Package storage’.

To account for the usage that is included with the fixed plan fee, we have to add the corresponding amount of usage as ‘Included Units’ or free units in the pricing plan. Using the example from the Team plan shown on the previous, 3,000 CI/CD minutes per month are included with the plan.

We would need to include 3,000 CI/CD minutes for free before beginning to charge for additional usage (overage). To accomplish this, we add the product item ‘CI-CD minutes’ to the pricing plan we’ve created and then we select ‘Per Block’ pricing. The first 3,000 minutes are included, and then additional minutes will be available in blocks for $10/1,000 minutes. See the screenshot below:


Some companies may not want to automatically begin billing for overage and would instead lock functionality until the customer purchases additional credits (or usage packages). Blocking functionality from your product needs to be handled from within your own code, so this cannot be managed by Amberflo; however, Amberflo can support the actual purchasing and prepayment for additional usage, and you can then use the webhook confirming the transaction as the queue to unblock the user’s functionality.

To create this prepaid transaction for additional usage, navigate to the customer view and select ‘Add prepaid credits’; the amount of credits should correspond to the number of additional blocks of CI/CD minutes the customer is purchasing. In this example, the customer wants to purchase one additional block of 1,000 mins, so the customer will be billed an additional $10 according to the pricing above.

After adding the amount of credits, select the option to apply a condition to the credits. This allows you to restrict the credits to only be used for CI/CD minutes. If there were other product items on the plan, the credits purchased from this transaction would not be valid to pay for that other usage.