Billing controls
What happens when FTAI runs out and which limits change it.
Included, daily, and purchased FTAI is always spent first. Billing controls decide whether usage continues after that FTAI is exhausted, and how far it may go.
Fallback order
FTAI is used first. Auto-reload is tried before on-demand billing. On-demand is used only when FTAI and auto-reload cannot cover a charge.
| Auto-reload | On-demand | Outcome |
|---|---|---|
| Off | Off | Usage stops when FTAI runs out. |
| On | Off | FTAI reloads; usage stops if the reload cannot complete. |
| Off | On | Usage continues on-demand after FTAI is exhausted. |
| On | On | FTAI reloads first; on-demand covers what remains. |
Postpaid overage
Postpaid overage lets usage continue after available FTAI is exhausted, up to an invoice limit that you set. Usage is added to the next invoice rather than drawn from FTAI.
Overage is available to any account with an attached payment method, not only to Pro, so a limit saved on Pro keeps applying after a plan change. On Pro the limit defaults to the included monthly FTAI for the team's seats.
The control shows one of these states:
| State | Meaning |
|---|---|
| Available | Overage is enabled and under the limit. |
| Approaching limit | Usage has reached 80% of the invoice limit. |
| Limit reached | Usage has reached the invoice limit. |
| Payment failed | The last overage charge could not be collected. |
Turning postpaid overage off stops usage with a billing error once available
FTAI is exhausted. The product API reports this as 402 with
insufficient_ftai; see usage lifecycle.
Self-serve Pro teams manage auto-reload and postpaid overage in team billing settings. Enterprise limits are set in the contract instead.
Auto-reload
Auto-reload buys prepaid FTAI when the remaining balance falls to or below a threshold. The current defaults are a $5 threshold and a $25 top-up; both values are editable.
A reload that fails does not silently continue usage: with on-demand off, usage stops; with on-demand on, it falls back to on-demand billing. One-time top-ups default to $20 with a $5 minimum.
Spend limits
A spend limit caps usage for one feature over a period. Set it through the Developer API:
POST /v1/billing/spend-limitscreates or updates a limit and acceptsfeatureId,limitMicroUsd, and an optionalperiod.GET /v1/billing/spend-limitslists limits.DELETE /v1/billing/spend-limits/{id}removes one.
The period defaults to the subscription billing period (billing_period) and
also accepts day, month, and lifetime. Usage is measured inside the active
period. When
measured usage reaches the limit, evaluation reports that usage is no longer
allowed and records a balances.limit_reached event. The team overview warns at
80% of a configured limit and marks it reached at 100%.
Managing these limits is self-serve on Pro. Enterprise limits are contract-managed.
Usage alerts
A usage alert is a per-feature threshold that fires when usage reaches it. Alerts do not stop usage.
Set and list alerts through the Developer API:
POST /v1/billing/alertscreates or updates an alert withfeatureIdandthresholdMicroUsd.GET /v1/billing/alertslists alerts.DELETE /v1/billing/alerts/{id}removes one.
Each evaluation compares current usage with the threshold. When usage is at or
above it, the alert records the trigger time and emits a
balances.usage_alert_triggered event, which the team's usage and spend
notifications can deliver.