x402 Doctor by Stelar Digital is a free, quick endpoint checker. x402 Validator (this service) is a strict-v2 conformance engine. They overlap on the basics and diverge on depth. Everything below comes from both products' own public pages and repos.
| Capability | x402 Doctor | x402 Validator |
|---|---|---|
| Reachability probe | ✓ | ✓ (every check) |
| Bot-wall / Cloudflare challenge detection | ✓ | ✓ bot_wall (added in 0.5.0 — credit where due: their writeup identified this failure mode well) |
| Returns HTTP 402 | ✓ | ✓ |
| 402 body parses as JSON object | ✓ | ✓ json_resilience (CRITICAL_FAIL on primitives) |
x402Version present / recognized | ✓ | ✓ accepts_completeness |
accepts[] completeness (scheme, network, amount, payTo, resource) | ✓ presence | ✓ presence + atomic-units validation (flags "0.005" as dollars, off by 10⁶) + resource.url must match the probed URL |
| CAIP-2 network validation | ✓ | ✓ caip2_compliance — reads v2 accepts[].network (not just top level) and falls back to manifest-declared networks on free-discovery roots |
Bazaar input schema (extensions.bazaar.info.input) | ✓ presence | ✓ shape-validated against real production captures, per paid product |
Discovery doc (/.well-known/x402) exists | ✓ | ✓ manifest_discovery + discovery_resource_listing (paid resource must actually be listed in it) |
| Marketplace catalog walk (per-product 402 validation) | — | ✓ marketplace mode: every product in the manifest gets its own endpoint audit + bazaar check |
| Batch audits (many endpoints, one call) | — | ✓ CLI + API |
| Embeddable engine (PyPI package) | — | ✓ pip install x402-conformance-suite |
| MCP server (agent-native tool) | — | ✓ x402-mcp |
| GitHub Action (CI conformance gate) | — | ✓ |
| Free tier | 10 checks/min | 3 audits/day per IP, then Pro from $9/mo |
| Open source engine | checker not published | Apache-2.0, full repo, 203 tests |
bot_wall in 0.5.0 partly because of it.accepts[], resource/URL match, catalog listing.verify_payment() as a deliberate stub — it accepts any non-empty
X-PAYMENT header. Their README says so plainly (credit for honesty), but any
endpoint deployed from that kit without replacing the stub is not actually charging anyone.
Whichever tool you use: run it against a real endpoint before you trust the paywall.