> ## Documentation Index
> Fetch the complete documentation index at: https://docs.voice.wixzel.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Billing

> How credit is reserved, spent, and itemised.

Prepaid credit, spent per second. You cannot be billed for more than you have
added.

## Micro-USD

Amounts are integer **micro-USD**: 1,000,000 = \$1.00.

<Note>
  Voice usage is billed per second, per token and per character. A charge of
  \$0.000021 has no float-dollar representation that agrees with the ledger, which
  is why the API does not pretend otherwise.
</Note>

Responses carry a formatted `*_display` string alongside the integer, so nothing
has to do currency arithmetic in JavaScript.

## The lifecycle of a charge

<Steps>
  <Step title="Reserved at admission">
    Credit is held before the call is placed. An underfunded account is refused with
    `402` before a port is opened or a provider socket is created.
  </Step>

  <Step title="Debited as it runs">
    Usage accrues every few seconds against what the call actually consumes — speech
    recognised, tokens generated, characters synthesised.
  </Step>

  <Step title="Settled at hangup">
    The reservation is released and the duration-based lines are priced off the
    answered time.
  </Step>
</Steps>

## Prices are frozen per call

A call is priced when it is admitted and finishes on those rates. A price change
can never move a meter mid-conversation.

## Running low

At roughly a minute of remaining runway the agent speaks a warning to your
caller. At zero it speaks a closing line and then hangs up — it does not drop the
line mid-sentence.

## When we fail

If our own process crashes mid-call, you are charged for the seconds we can
prove, not the amount that was reserved. A crash costs us revenue rather than
charging you for time we cannot substantiate.

## Tracing a charge

```bash theme={null}
curl ".../v1/usage/events?session_id=sip-4f2a"
```

Every micro debited against a call is explained by a usage row. The sum of a
call's events always equals what was taken from your balance.
