Оплачивайте любой x402 API монетой, которая у вас уже есть
x402 эндпоинт отвечает 402 Payment Required и просит USDC. ROZO оплачивает те, которым нужен USDC в Base. У вашего агента может быть другая монета в другой сети. Пополните баланс ROZO один раз тем, что есть, и каждый следующий x402 вызов оплачивается с баланса за секунды.
Три команды
Если ваш агент умеет запускать команды в shell, это вся интеграция.
# 1. Пополните баланс один раз. Выводит одноразовый адрес; оплатите его со своего кошелька. npx @rozoai/checkout x402 topup 20 --with usdt-solana # 2. Вызовите платный эндпоинт. Читает 402, ROZO подписывает, запрос отправляется снова с оплатой. npx @rozoai/checkout x402 pay https://api.example.com/v1/search --method POST --body '{"q":"..."}' # 3. Посмотрите остаток. npx @rozoai/checkout x402 balance
Что делает x402 pay
- Ваша машина отправляет запрос прямо на эндпоинт. ROZO не видит тело запроса, ваши заголовки и API ключи, которые вы используете для этого сервиса.
- Получив 402, CLI читает требования к оплате, оставляет только USDC в Base и отклоняет всё, что дороже
--max-usd(по умолчанию 1.00). - Он просит ROZO подписать один платёж с новым
idempotencyKey. Повтор использует тот же ключ, поэтому таймаут не спишет деньги дважды. - Он повторяет исходный запрос с заголовком
PAYMENT-SIGNATUREи выводит ответ.
Чистый HTTP: два вызова
Нет shell? Используйте тот же API напрямую. Передавайте ключ агента как Authorization: Bearer ak_....
# Пополнение: возвращает одноразовый адрес для выбранной монеты. curl -s -X POST https://apiserver.mpprouter.dev/v1/x402/topup \ -H 'authorization: Bearer ak_...' -H 'content-type: application/json' \ -d '{"amount":"20","token":"USDT","chain":"900"}' # Подпись: передайте одно требование, выбранное из списка "accepts" в ответе 402. # Возвращает значение заголовка PAYMENT-SIGNATURE. Повторите с ним свой запрос. curl -s -X POST https://apiserver.mpprouter.dev/v1/x402/sign \ -H 'authorization: Bearer ak_...' -H 'content-type: application/json' \ -d '{"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"10000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x...","maxTimeoutSeconds":60}],"budget":"0.05","idempotencyKey":"<uuid>"}'
POST /v1/x402/keys создаёт ключ агента (показывается один раз). GET /v1/x402/balance возвращает баланс. Для всех повторов одного платежа используйте один и тот же idempotencyKey.
Чем можно пополнить и чем платится
Две части перечислены отдельно: что вы отправляете ROZO и что получает продавец.
Пополнение (вы в ROZO)
| Монета | Сети |
|---|---|
| USDT | Solana, BNB Chain, Ethereum, Polygon |
| USDC | Solana, BNB Chain, Ethereum, Polygon, Base, Stellar |
Оплата (ROZO продавцу x402)
| Сеть | Актив | Схема x402 |
|---|---|---|
Base eip155:8453 | USDC | exact |
| Solana | Появится позже. Эндпоинт, который принимает только USDC в Solana, отклоняется до любого списания. | |
exact это переводы токенов; с баланса, пополненного в USDT, ROZO платит продавцу в USDC. Держите нативную монету или сатоши? Используйте их, чтобы пополнить OpenRouter через ROZO Checkout.Лимиты и ваш ключ
- За платёж: по умолчанию не более $5. В день: по умолчанию не более $100. Ключ можно ограничить списком адресов
payTo. - Минимальное пополнение: $5. Комиссия за пополнение 1%; каждый следующий x402 платёж стоит ровно столько, сколько просит продавец.
- Ключ агента: первое пополнение создаёт ключ, начинающийся с
ak_. Он показывается один раз, CLI хранит его в~/.rozo-checkout/x402-keyс доступом только для владельца. ROZO хранит только его хеш. - Ключ владеет балансом. Не вставляйте его в промпты, логи или тикеты. Если потеряете, создайте новый и напишите нам, чтобы перенести баланс.
Вопросы
Зачем сначала пополнять?
Требование оплаты x402 действует от одной до пяти минут, а перевод между сетями занимает больше. Только оплата с уже готового баланса успевает в это окно. Пополняете редко и крупно; платите часто и мелко.
Где мои деньги?
На вашем x402 балансе в ROZO. Средства лежат в кошельках ROZO, платежи для вашего ключа подписывает кошелёк в Base, а сумма всех балансов каждый час сверяется с этими кошельками. ROZO никогда не хранит ключи ваших собственных кошельков.
Как вернуть баланс?
Самостоятельный вывод пока недоступен. Напишите на hi@rozo.ai, указав замаскированный ключ (например ak_...a1b2) и сумму, и мы вернём средства в выбранной вами сети.
Видит ли ROZO мой запрос?
Нет. Платный запрос идёт с вашей машины прямо на эндпоинт. ROZO видит только требование оплаты, которое просят подписать: кому, сколько и в какой сети.
В каких сетях продавец получает оплату?
USDC в Base (eip155:8453), схема x402 exact. Оплата в Solana появится позже. Если эндпоинт принимает только Solana, CLI останавливается с X402_UNSUPPORTED, и ничего не списывается.
Руководство для агентов
Те же три команды, все коды ошибок и правила безопасности есть в SKILL.md и в /llms.txt.
Открыть rozo-checkout-skill Читать /llms.txt