> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.respona.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.respona.com/_mcp/server.

# Credits & Billing

Orders are paid for in **credits**. Credits are only ever spent on **launch** - creating, editing, and reading orders
is free.

## Credits and money

`1 credit = 1 USD cent`. Every monetary value in the API is an integer in minor units (USD cents), e.g.
`price: 28800` - that order costs `28800` credits. The API is always USD.

Launch responses return both figures so you can reconcile against your own books:

* `price` - the list price in USD cents.
* `credits_charged` - the integer credits debited (may differ from the list price after org discounts or a
  first-order bonus).

## Pricing

Each placement is priced from its [quality tier](/guides/core-concepts/orders-placements#quality-tiers), with **+20%** added for
each of `content_guidelines` and `domain_specifications` (they stack). The order price is the sum of its placements.
Both the order and each placement return a live `price_breakdown` itemizing the base band and every modifier, so the
total is always fully explained. Prices are recomputed on every read - you never rely on a cached number.

## The monthly credit pool

Each API key draws from a **monthly credit pool** on top of your account balance:

* The pool has a per-key monthly limit (set in **Settings → API Keys**). A limit of `0` means unlimited.
* The window is the calendar month in UTC and resets on the 1st. The period is computed per spend, so a missed reset
  never leaves a stale window open.
* The pool is funded by your underlying account balance; you need available balance for a launch to settle.

## Charge lifecycle (reserve → settle / release)

Launch charges are two-phase so you are never charged for a launch that fails:

1. **Reserve** - before the order is launched, the launch amount is reserved against the key's monthly pool. If the
   reservation would exceed the monthly limit, the request stops here with `402` (`OVER_CREDIT_LIMIT`) and **no order
   is launched**.
2. **Settle** - on a successful launch, the reservation is settled and your balance is debited by the actual
   `credits_charged`.
3. **Release** - if the launch fails downstream, the reservation is released and you are not charged.

> **Note**
>
> `402 OVER_CREDIT_LIMIT` means the launch would exceed the key's monthly pool or you lack sufficient balance. Raise the
> per-key limit, top up the balance, or wait for the monthly reset.

## Refunds

Credits are charged on launch and refunded through Respona's standard refund flow - for example, when a placement is
`REJECTED`. Refunds surface as a `REFUNDED` status on the placement or order. Track them by
[polling](/guides/core-concepts/polling-for-status) the resource.

## Degraded mode

The launch path **fails closed**: if the billing/idempotency infrastructure is unavailable, launch returns `503`
rather than risk an over-spend or a duplicate charge. Reads and draft edits are unaffected. See [Errors](/guides/api-conventions/errors).