AI agents scrape your content. Botlock makes them pay.
Botlock is an HTTP 402 paywall for AI agents. A drop-in SDK for publishers and an auto-pay SDK for agents, settled in USDC micropayments on Solana. Bots can't bypass the protocol layer.
What you get with Botlock?
AI crawlers scrape billions of pages.
Publishers get nothing.
Your content trains trillion-dollar models. You get server bills, bandwidth costs, and zero revenue. robots.txt can't stop them — but the HTTP protocol can.
Botlock changes the economics: access requires payment, and payment is verified on-chain before a byte of content is served.
Bots scrape at scale
AI crawlers hit your site thousands of times per second, vacuuming articles, docs, and data to train models you'll never profit from.
robots.txt is ignored
Polite bots respect it. Profit-driven AI crawlers don't. A voluntary text file can't enforce anything against a determined scraper.
Zero revenue to publishers
Your content powers trillion-dollar models. You get traffic you didn't ask for, server bills you didn't budget for, and $0 in return.
Three steps.
No middleman. No waiting.
The entire flow — detection, challenge, payment, verification — runs at the HTTP layer. No webhooks, no callbacks, no async settlement lag.
Agent hits your content
An AI crawler requests your page. Botlock's SDK detects it via user-agent, header fingerprinting, and datacenter IP scoring — before serving a single byte.
Detects: GPTBot, ClaudeBot, PerplexityBot, Scrapy, python-requests, and 20+ others
HTTP 402: pay to continue
The server returns HTTP 402 with an x402 challenge envelope — price in micro-USDC, your wallet's ATA as recipient, and a signed nonce bound to the request.
The agent's SDK reads the envelope, builds a USDC SPL transfer, signs it, and submits to Solana.
On-chain verification, content unlocked
The server verifies the transaction against Solana RPC — confirms amount, recipient ATA, and challenge binding. No double-spend. Content released.
Payment lands directly in your wallet. No intermediary, no custodian, no API key.
Two SDKs. Two sides of the paywall.
botlock-sdk
Drop-in HTTP 402 paywall for any Node.js server. Detects bots locally, issues payment challenges, and verifies on-chain settlements.
- Zero runtime dependencies
- Local bot detection — no network call for human visitors
- HTTP 402 x402 envelopes with signed per-request challenges
- On-chain USDC verification, replay-protected via Supabase
- Adapters: Express, Next.js App Router, Fastify, Cloudflare Workers
- Optional analytics dashboard via Sign-In With Solana
- No API key, no signup, no custodian — wallet-only
- Configurable pricing per route
botlock-agent-sdk
Auto-pay wrapper around fetch() for AI agents. Intercepts 402 challenges, pays USDC on Solana, and retries the original request automatically.
- Drop-in fetch() — 402s handled automatically and transparently
- Hard caps: maxAmountMicroUsdc and maxTotalMicroUsdc per session
- Signer helpers: keypair file, raw array, base58 secret, custom HSM/KMS
- LangChain tool via paywallFetchTool(client) — OpenAI-compatible
- Coalesces concurrent requests — never pays twice for the same nonce
- Typed errors: PaymentRefusedError, BudgetExceededError, OnChainError
Built for production from day one
Multi-signal bot detection
Heuristics across headers, TLS fingerprints, request patterns, and behavioral timing catch crawlers that spoof user agents.
Replay protection
Every payment is bound to a single request signature. A settled transaction can't be replayed to unlock other content.
Wallet-native
Payments go straight to your Solana wallet. No custody, no payout schedule, no platform taking a cut of your revenue.
Zero latency for humans
Bot detection runs in microseconds. Real visitors never see a 402 — only flagged agents hit the payment challenge.
Framework adapters
First-class adapters for Express, Next.js, Hono, and Fastify. Drop Botlock into your existing stack in one import.
SIWS analytics
Dashboard for Sign-In-With-Solana sessions, payment volume, top paying agents, and revenue per route in real time.
Integration takes minutes, not days
npm install botlock-sdk
# Set your wallet — this is the only config required.
# Payments land directly in this Solana address.
SOLANA_WALLET_ADDRESS=YourSolanaWallet...The honest answer to the obvious question
Micropayments require settlement infrastructure with near-zero fees and sub-second finality. Existing payment rails weren't built for $0.001 transactions. That's the entire reason blockchain is here — not ideology, just math.
Why not just use a payment processor?
Credit card processors take 2.9% + $0.30 — more than the payment itself at micropayment scale. USDC on Solana settles in ~0.4s with sub-cent fees. The economics only work on-chain.
Why Solana specifically?
~400ms finality, $0.00025 average transaction fee, a mature USDC SPL token with a Circle-issued devnet faucet. Ethereum L1 fees alone would exceed the payment value.
Why USDC and not native SOL?
USDC is price-stable. Pricing content at $0.001 means $0.001 — not 0.0000065 SOL today, something different tomorrow. Publishers set prices in dollars, not volatile tokens.
What stops someone from building a centralized version?
Nothing. But on-chain verification means Botlock's server doesn't need to trust the agent — or be trusted by the agent. The Solana RPC is the neutral arbiter. No payment processor account to ban you.
| Settlement method | Cost per $0.001 tx | Finality | Viable? |
|---|---|---|---|
| Stripe / card | $0.30+ | 1–3 days | ✗ |
| Ethereum L1 | $0.50–$5+ | ~12s | ✗ |
| Ethereum L2 (Arbitrum) | ~$0.01 | ~2s | ~ |
| Solana USDC ← Botlock | <$0.001 | ~400ms | ✓ |
You keep every cent of payments received
Botlock never takes a cut of agent payments — 100% of USDC lands in your wallet. Pricing covers the hosted facilitator, analytics, and support.
Free
Everything you need to start charging agents on devnet.
- 1 site
- Up to 1,000 agent requests / mo
- Solana devnet
- botlock-sdk + botlock-agent-sdk
- Community support
Pro
Mainnet payments, analytics, and higher limits for production sites.
- Up to 10 sites
- 100,000 agent requests / mo
- Solana mainnet
- SIWS analytics dashboard
- Custom pricing per route
- Priority support
Enterprise
Dedicated infrastructure and support for high-volume publishers.
- Unlimited sites
- Unlimited requests
- Dedicated facilitator node
- SLA + on-call support
- Custom chain integrations
- On-prem deployment
Common questions
No. A 402 response means no content is served — the body is empty. To get the content, the agent must pay and resubmit proof. There's nothing to scrape until the payment clears on Solana.
The payment layer agents can't bypass.
Start charging AI agents for your content in minutes. Open source, MIT licensed, and you keep every cent.