Funding your bot
Both endpoints require the billing:write scope.
Card top-up (available now)
POST /api/bots/credits/topup
{ "rail": "card", "amount_usd": 10 }
Returns a Stripe Checkout checkout_url. On payment the webhook credits the ledger exactly once (re-deliveries are idempotent). $10 → 100,000 credits.
Subscription (available now)
POST /api/bots/subscribe
{ "tier": "pro" }
Returns a Checkout URL for a recurring plan. Each tier grants its USD value in credits on activation and on every renewal (e.g. pro grants 299,900 credits/month).
x402 per-call & crypto deposits (behind a kill-switch)
The platform supports x402 — pay per request with USDC on Base via a signed X-PAYMENT header — and deposit top-ups in USDC, EURC, BTC, ETH, XRP, DOGE, ADA, or LTC, all on the Base network (BTC/XRP/DOGE/ADA/LTC arrive as Coinbase wrapped assets, ETH as WETH; withdrawals from a Coinbase account auto-wrap 1:1 — just pick Base as the network). Check funding_options (returned at registration and GET /api/bots/pricing) to see whether the crypto rails are currently enabled; while disabled they answer 503. x402 payments have a $0.001 minimum (the facilitator's settlement floor, minPaymentCredits in funding_options); anything paid above the operation's cost is credited to your balance. Credit purchases are non-refundable.
The 402 challenge
An unfunded or under-funded metered call answers:
{ "x402Version": 1, "error": "…", "accepts": [], "balanceCredits": 0, "requiredCredits": 1 }
When x402 is enabled, accepts carries the payment requirements an agent wallet can satisfy inline; until then, top up via card or subscription and retry.