Introduction
Infrastructure for outcome-based billing.
What problem does this solve?
Most software buyers pay for proxies. Seats. API calls. Usage. None of these are what the buyer actually wants. They are approximations of value that the industry settled on because measuring the real thing was too hard.
witn is infrastructure for outcome-based billing. Instead of billing on seats or usage, you define exactly what a successful outcome looks like, send signals from your system as things happen, and the outcome is confirmed or rejected automatically.
Why existing tools do not work
Outcomes are not final when first observed. A resolved support ticket can be reopened. A signed document can be voided. A completed task may not pass review. Existing monetization platforms assume signals are final at the moment they are recorded. Outcome-based monetization breaks that assumption.
Supporting it requires a system that evaluates state over time, handles reversals, waits for settlement, and resolves conflicting signals. That is a fundamentally different model from recording signals.
Primitives
The API introduces six primitives:
- Outcomes. A potential outcome that moves through states (open, pending, confirmed, failed).
- Signals. Events from your agent, your customer, or external systems that indicate progress toward an outcome.
- Billable conditions. The boolean logic that determines when an outcome becomes billable.
- Settlement period. How long witn waits after the latest event before finalizing the current result. Default 72 hours, maximum 180 days.
- Rate cards. A reusable pricing template mapping agents to per-unit prices. Assign one rate card to a customer to control what they pay per confirmed outcome.
Outcome states
| State | Meaning |
|---|---|
OPEN | Accepting signals. The billable condition is evaluated on every event. |
PENDING | The condition has been true at least once. Waiting for settlement. |
CONFIRMED | Outcome confirmed. Terminal. |
FAILED | Outcome failed. Terminal. |
API base URL
https://api.thewitn.comAll endpoints are versioned under /v1.