Seats,Usage Outcomes
Outcome-based monetization.
Outcome billing is a consistency problem, an audit problem and a correctness problem. It's not a product feature.
You define the outcome. We handle the rest.
Outcomes are messy.
Billing them shouldn't be.
An outcome confirmed today can be disputed tomorrow. The billing layer needs to know that.
No more billing corrections at month-end
When a customer disputes a charge, the answer is already there. Timestamped, exact, complete. No manual reconstruction. No cross-referencing spreadsheets.
Finance and sales own the pricing model
Define conditions, set prices, adjust review windows from the dashboard. No sprint. When your sales team needs to offer a new outcome model, it is live the same day.
Any billing audit. Thirty seconds.
Pull the full history for any charge in seconds. Every event, every decision, in order. Show exactly why an outcome was billed or not. To customers, to auditors, to finance.
The integration
The outcome is settled for you.
Three steps. No custom billing logic to write.
Step 1
Configure the contract
- Define the condition: what must be true for a charge to fire
- Set the price, review window and timeout behaviour
- Update it from the dashboard as your pricing evolves
Step 2
Send signals as they happen
- One event call per signal from your application
- Every signal triggers a fresh condition check
- Corrective signals reverse the scheduled outcome in real time
Step 3
Billing fires automatically
- When the window closes, the outcome is locked
- Charge is added to the next billing cycle
- Full audit trail stored: every signal, every decision
Success conditions
Express exactly what a successful outcome looks like
Define the condition in plain logic: what must be true, what must not be, what value must clear a threshold. Price, activity window, review window and timeout behaviour live alongside it in a single contract. Change any of it from the dashboard. No deployment involved.
active_for: 48hreview_window: 24hprice: $0.99conditions: completedAND score > 3AND NOT disputedon_timeout: confirm
Outcome tracking
Each potential charge has a defined path to settlement
Each potential charge opens when tracking begins. When the success condition is met, it enters a confirmation window. When that window closes, the outcome is locked. Your application sends signals. That's it.
review window open
Confirmation window
Corrections land before the charge fires
A result can look successful and then fall apart. A correction arrives. A counter-signal comes in late. Every new signal triggers a re-check during the window. If the result no longer holds, the charge is cancelled. The window closes and settles it.
Audit trail
When a customer questions a charge, the answer is already there
Every signal received, every condition evaluation, every state transition. Recorded in order. Pull the history for any outcome and show exactly why it was charged or not. No reconstruction, no guessing.
Use cases
Charge when the code ships.
Not when the review runs. When the code lands and sticks.
See how it works →Bill when the problem is solved.
Not when the ticket closes. When the customer doesn't reopen it.
See how it works →Earn when the system is back.
Not when the runbook runs. When the incident stays closed.
See how it works →Offer outcome-based pricing today, not in months.
Book a 30-minute call and we'll walk you through it.