Tie credit ledger entries to a successful invoice payment
In the Orb API, you can now configure credit ledger entries so they're granted after an invoice payment is successful. You can do this by setting invoice_settings.require_successful_payment
as true
when you create a ledger entry. The block will have status="pending_payment"
in the /customers/<id>/credits
response.
This behavior is supported for ad-hoc credits or automatic top-up credits. If your customer has a credit block that is waiting on a payment, you will see it in the Orb web app in the "Credit block details" section on their customer page. The block will have "pending payment" noted in the current balance column.
Associate a discount, minimum spend, or maximum to a specific price in the plan change flow
In the change plan flow, you can now associate a discount, minimum spend, or maximum spend to a specific price on customer's subscription. You may use this flow if a customer is upgrading or downgrading their subscription to a new plan and you'd like to customize their discount given the specific contract details. To do so, start a plan change from the customer's page in Orb, select a new Plan in Price Settings, and then select "Override" to customize the minimum spend, maximum spend, or discount for a specific price.
Accounting Sync Record Export
Orb now supports the ability to export accounting sync records to help audit and track records and their various statuses as you set up your accounting system integration. Navigate to the Accounting tab under Settings to check it out!
For more information about this feature and Orb's accounting system integration solution, please check out our docs!
Versions and Migrations
You can now edit prices on your plans and efficiently roll out pricing across your customer base with unmatched control and flexibility.
With versions, you can:
- Maintain different versions of pricing: Create new versions of a plan when you make a price change. Mark a version as default so that all new subscriptions in the webapp or API get created on the latest version. And never change pricing on customers by accident.
- Quickly see who is on which version: Get clear on different pricing structures and billable metrics across versions. See how many customers are on your current vs legacy pricing and drill down to see a history of changes.
- Keep customers on legacy pricing: Honor contractual commitments and renewal cycles. Keep the right customers on old versions of pricing; price changes don’t need to be all-or-nothing.
With migrations, you can:
- Migrate pricing in bulk: It doesn’t matter if the price change impacts a few customers or hundreds of thousands. Just select which ones you want to move over to your new plan, and which version you want them to use. All in one simple flow.
- Schedule price changes in advance: Set price changes to start immediately, on a future date, or at the end of a term. Orb can even automatically migrate price change dates according to a customer’s billing cycle.
- Use webhooks to power your workflows: Orb’s webhooks make price changes powerful. Get notified when a price change occurs to trigger a customer email or update an internal system when a migration is scheduled.
Credit Allocations
Customers can now receive an allocation of credits – of one or more currency units – automatically as part of their subscription. Allocations can be configured in the ‘create plan’ flow and overridden on a per-subscription basis, with an amount, optional rollover behavior, and cadence. Whereas the set of usage-based prices on the subscription determines how Orb will deduct credits from the balance (or accrue them as overages on the invoice), allocations allow you to set up a recurring schedule of increments on the customer’s credit ledger. Because allocations are configured at the plan-level, Orb allows you to standardize credit treatment and ensure consistency across thousands of customers.
Learn more here.
Evaluate Price API Endpoint
The evaluate price API endpoint allows you to leverage multiple SQL expressions in order to dynamically query your data, just as you would use SQL expressions in constructing your metric. The set of filter and grouping expressions need not be configured up-front or known to Orb to pre-aggregate; instead, you’re able to perform these actions on-demand as they become necessary. Because SQL expressions are supported (as opposed to more basic support for event properties), you can use conditional statements and other logical operators.
This endpoint could be used to:
- View usage for your compute metric broken down by cluster_name, where a user may have hundreds of clusters active in a given time period.
- Build an interactive explorer in your application to view hourly data over a day time range, rather than the default daily views available through Orb’s subscription usage and cost APIs.
- Provide a view into end customer usage by api_key prefix, allowing users to understand the source of API requests.
Learn more about this endpoint in the Orb docs. Happy query-ing!
Automatic Top-Ups
Orb supports automatic top-ups, which are triggered when a customer's credit balance falls below a certain threshold. This is useful for ensuring that customers have enough credit balance to cover their usage, and can be configured to automatically top-up by a fixed amount at a specific cost basis, including issuing an invoice.
Data Exports
Orb now supports managed, daily exports of resources to your data destination of your choice! Typically, this is a data warehouse such as Redshift or Snowflake, but other types of data stores are also supported. Exporting data from Orb can be done directly within the Orb UI.
After a data destination has been added, status information about the connection and the most recent data sync will be displayed in the UI.
New in the Orbit: product updates from Jan
In January, Orb shipped new features designed to make your billing operations more powerful. This roundup includes custom pricing units, an enhanced capability to apply discounts in bulk, increased invoicing efficiency, and a new status page.
Build one or multiple custom pricing units
You asked, we listened: credits across multiple dimensions! You can now create one or multiple custom pricing units and assign pricing each to a specific price in your plans.
Once you set up the custom pricing units, you can set a unit price for each in the plan creation flow to support overage calculations. Downstream, Orb will also display usage and overage line items on your customer's invoice in the appropriate pricing unit.
For example, you might offer three types of credits: Storage, Compute, and Support. Now, you can create three custom pricing units, one for each. When you create your plan, you can add a price in each unit. As your customers accrue usage for each unit, the corresponding credit blocks will be deducted. For instance, if a customer accrued Storage usage, only the Storage credits will be deducted.
Apply discounts with more control and efficiency
You can now apply discounts, maximums, and minimums to a subset of prices within a plan. Based on your settings, Orb will automatically calculate the discounts, maximum, and miniums on your customer invoice. For example, if you would like to apply a $100 minimum spend requirement to two out of three prices in your pricing plan, Storage and Support, then Orb will only count the spend for the two prices towards the minimum. Orb will not count the spend for the third price, Upload Events, towards the minimum.
Increase invoicing efficiency
We streamlined invoicing workflows so you can now issue one-off, immediate fixed fee invoices within minutes. In addition, we increased invoice issuance throughput by 5x, which means you can continue to count on Orb to handle large data loads and support exponential growth.
New status page: stay up to date with Orb’s uptime
As a part of our commitment to transparency and customer trust, we released a status page. You can use the page to learn more about the reliability and uptime of Orb’s APIs, Ingest, Webhooks, and Invoicing. You can also track any reported incidents by subscribing to the page.
Do you have any questions or feedback about the product updates? Comment on the changelog post.