> Краткое содержание: Как устроены деньги в AI API VCPay — предоплата, списание, отчёт.
> Это Markdown-версия конкретной страницы. Для контекста за её пределами (правила API, полный перечень методов, авторизация) ОБЯЗАТЕЛЬНО открой [llms.txt](https://vcpay.ru/ai/docs/llms.txt) перед ответом — это сэкономит токены и предотвратит неполный ответ.


# Оплата и детализация

## Предоплата

Работа идёт с авансового счёта компании — того же, с которого оплачиваются остальные услуги VCPay. Постоплаты нет: когда средства заканчиваются, запросы перестают проходить, а не уходят в долг.

Счёт выставляется и оплачивается в разделе компании личного кабинета. Закрывающие документы приходят тем же порядком, что по другим услугам.

## Как считается расход

Стоимость запроса складывается из токенов на входе и на выходе. Расход относится к тому ключу, которым сделан запрос, — поэтому ключи и стоит заводить по одному на сервис. Списание считается в долларах на стороне шлюза и переводится в рубли один раз — курс фиксируется, когда запрос тарифицируется, в ближайшие минуты после него. Этот курс сохраняется в строке детализации, так что «курс × расход» в кабинете сходится без остатка.

Три вещи, из-за которых счёт бывает больше, чем кажется по длине ответа:

- **Кешированный вход** тарифицируется отдельно и дешевле обычного — это чтение кэша. **Запись** в кэш — отдельная операция со своей ставкой: запрос, который кэш создаёт, и запрос, который его читает, стоят по-разному, хотя оба «с кэшем». У Claude вендор различает кэш на 5 минут и на час; мы тарифицируем по той ставке, которая настроена на модели, и она одна — её и показывает каталог.
- **Размышления модели (reasoning)** отдельной ставки не имеют — они считаются как выход. У Claude Opus размышления включены по умолчанию, поэтому исходящих токенов на запрос будет заметно больше, чем видно по тексту ответа. Это не ошибка счёта.
- **Округление — только для показа.** Внутри расход считается с точностью до доли копейки и накапливается; в журнал списывается агрегированно, поэтому отдельная строка запроса в кабинете и сумма проводки округляются по-разному.

## Посчитайте счёт сами

Ставки берутся из каталога — он открыт без ключа:

```bash
curl https://llm.vcpay.ru/v1/vcpay/models
```

По каждой модели приходят четыре ставки за миллион токенов: обычный вход, кешированный вход, выход и запись в кэш. Дальше арифметика прямая: каждый вид токенов умножается на свою ставку и делится на миллион.

```text
стоимость = (обычный_вход      × ставка_входа
           + кешированный_вход × ставка_кеш-чтения
           + запись_в_кэш      × ставка_кеш-записи
           + выход             × ставка_выхода) / 1 000 000
```

Токены каждого вида приходят в ответе модели, в поле `usage`. Две подсказки, без которых расчёт не сойдётся:

- **в `completion_tokens` входят размышления.** У Claude Opus они включены по умолчанию, и выход окажется заметно больше видимого текста;
- **чтение и запись кэша — разные ставки.** Запрос, который кэш создаёт, дороже того, который его читает, хотя оба «с кэшем».

Свой остаток и расход по ключу можно спросить у API тем же ключом, которым вы зовёте модели:

```bash
curl https://llm.vcpay.ru/v1/vcpay/balance -H "Authorization: Bearer ВАШ_КЛЮЧ"
curl https://llm.vcpay.ru/v1/vcpay/stats   -H "Authorization: Bearer ВАШ_КЛЮЧ"
```

Как считаются эти цифры и что значит каждое поле — в справочнике: [остаток и потолок ключа](https://vcpay.ru/ai/docs/api/key/balance), [расход ключа](https://vcpay.ru/ai/docs/api/key/stats).

## Как двигается цена

Цена получается из биржевого курса USDT одним умножением:

```text
цена за доллар потребления = биржевой курс USDT × множитель
```

**Множитель публикуется.** Его текущее значение приходит в каталоге полем `sell_rate_multiplier` вместе с версией тарифа, по которой он посчитан. В множитель заложены обмен валюты, комиссии приёма платежа, резерв на колебания и наша маржа — раскладку по каждой составляющей мы не публикуем, но само число вы видите и можете проверить по нему любой свой счёт.

Ход курса идёт насквозь и заранее не объявляется — это часть механизма. **Об изменении множителя предупреждаем не менее чем за 14 дней.** Купленные рубли остаются рублями: сколько токенов на них придётся, зависит от действующего курса.

### Какая цена применится к моему запросу

Две разные величины и два разных момента, и путать их дороже всего:

- **версия тарифа** — та, что действовала **в момент вашего запроса**. Новая версия применяется только к запросам после даты её вступления в силу; задним числом ничего не переоценивается;
- **курс** — тот, что действовал **в момент тарификации**: запрос получает рублёвую цену в ближайшие минуты после ответа модели, и курс запоминается в его строке. Списание на счёт идёт позже и сразу за несколько запросов, но переоценить их оно уже не может.

Ставки за миллион токенов по каждой модели отдаёт каталог API, и он же источник для витрины и для кабинета — поэтому разойтись они не могут. В самом кабинете, в разделе AI API, видно уже посчитанный по этим ставкам расход.

## Что видно в кабинете

- сводка за период: запросов, входящих и исходящих токенов;
- разрез по ключам и по моделям;
- последние запросы с временем и моделью;
- выгрузка построчно в CSV — по ней сверяют наш отчёт со своими логами.

## Чего в детализации нет

Тел запросов и ответов. Мы их не храним — ни в журнале, ни в отчёте, ни в выгрузке. Подробнее — [Границы продукта](https://vcpay.ru/ai/docs/guides/scope).
