One fixed price per call, known before you make it. Here is exactly when that price is taken and when it is not.
When you are charged#
| Outcome | Charged? |
|---|---|
| The tool returned a success | Yes, once, at the version's fixed price |
| The tool failed before any byte reached you | No. Refunded automatically |
| The tool failed after the first byte reached you | Yes. You received part of the work |
| The tool timed out before its first byte | No. Refunded |
| Your wallet could not cover it | No. 402, nothing taken |
| The key's 24-hour cap was reached | No. 402, nothing taken |
| You were rate limited | No. 429 |
| Our infrastructure failed | No. 503, and we fail closed rather than guess |
| You cancelled mid-stream | Yes. The work was done and partly delivered |
How the charge happens#
The price is deducted before the tool is contacted, in a single atomic operation that checks the balance and the cap together. That ordering is deliberate: it means a call can never be served without being paid for, and a crash mid-call cannot leave a tool contacted but unbilled.
If the call then fails before delivering anything, the refund is a separate recorded entry rather than an erasure — the ledger is append-only, so a correction is always a new row.
When it appears#
Your balance reflects the charge immediately. The itemised ledger entry appears within five minutes, because charges are batched into five-minute rollups rather than written one row per call. The two always agree; one is just more immediate than the other.
What the creator gets#
The platform keeps 10% of the price. This does not change what you pay — the price in the catalog is the price you are charged.