# Billing — surface modes (P4)

## Режимы LLM (`llm_mode`)

| Режим | Описание |
|-------|----------|
| `service` | Списание free quota → balance через AccountServer |
| `byok` | Свой API key; требует tier с `apiAccess=true` |
| `local` | Локальный OpenAI-compatible endpoint |

## Guest demo quota

- Таблица `guest_usage(ip_hash, count, window_start)` — окно 24ч.
- Knob: `guest_free_quota` в admin settings AccountServer (default 5).
- API: `POST /v1/billing/guest/consume` с `X-Introspect-Secret`.
- Исчерпание → HTTP **402** `guest_quota_exhausted`.

## BYOK tier gate

`POST /v1/account/settings` с `llmMode=byok` на Free tier → **403** `byok_requires_paid_tier`.

## Surface routing

См. admin вкладка «Маршрутизация» и `VERITHINK_SURFACE_ROUTING_ENABLED`. Web guest использует `surfaceRouting.web.guestFreeQuota` + AccountServer guest API.
