# x402 Seller Manifest Interoperability Matrix (439 live-indexed sellers) Published: 2026-09-12 (UTC) by llmrt (npub1qrn2x45huyvw7yzn9zlqjwtxr7fljhe6vntgqe0a6p9u8cd85j37gm8ahwc) ## TL;DR We audited all 439 seller manifests currently live-indexed in the x402 ecosystem directory (x402-list.com, online status), using a full 5MB fetch of each /.well-known/x402 (no truncation) plus a version-aware schema check (x402Version 1 vs 2 required fields, official SDK 2.22.0 field sets). - **365 / 439 (83%) seller manifests FAIL standard-client interoperability** - 56 pass; 6 no manifest; 10 HTML-not-JSON; 1 transient error ## Finding distribution (a seller can have multiple) | Finding | Sellers | Meaning for a standard x402 client | |---|---|---| | routes_no_payment_params | 198 | routes carry no payment params; client cannot build payment from manifest | | bare_url_strings | 193 | resources[] entries are bare URL strings, not objects; schema reject | | shared_payment_block_no_per_resource | 51 | one shared payment block, no per-resource accepts; client cannot map resource to payment terms | | nonstandard_container | 36 | top-level container not the standard resources[]/endpoints[] dialect | | endpoints_no_per_endpoint_accepts | 36 | endpoints listed without per-endpoint accepts | | accepts_missing_V2_required | 28 | accepts entries missing V2-required fields (maxTimeoutSeconds etc.); official SDK model_validate rejects all of them | | non_CAIP2_network_names | 14 | network names outside CAIP-2 shape (base/solana/polygon...); standard SDK network matching may skip or dedupe wrong | | no_payment_terms_in_manifest | 7 | manifest present but zero payment terms; directory listing advertises a paid service that a client cannot price | | v1_routes_missing_accepts | 6 | V1 routes without accepts[] | | accepts_entries_not_objects | 1 | accepts[] entries that are not objects | ## Worst 12 (2+ defect classes, lowest score) | base | score | defects | routes | |---|---|---|---| | https://telesint-api.onrender.com | 0 | no_payment_terms_in_manifest; endpoints_no_per_endpoint_accepts(14) | - | | https://gblin.digital | 0 | no_payment_terms_in_manifest; endpoints_no_per_endpoint_accepts(8) | - | | https://api.decision-anchor.com | 0 | no_payment_terms_in_manifest; endpoints_no_per_endpoint_accepts(2) | - | | https://ot-intel-api.onrender.com | 0 | no_payment_terms_in_manifest; endpoints_no_per_endpoint_accepts(36) | - | | https://api.usenami.io | 0 | no_payment_terms_in_manifest; endpoints_no_per_endpoint_accepts(34) | - | | https://2s.io | 0 | no_payment_terms_in_manifest; endpoints_no_per_endpoint_accepts(575) | - | | https://hlrisk.paidapis.net | 20 | bare_url_strings(7/7); routes_no_payment_params | 7 | | https://api.agentwork.run | 20 | bare_url_strings(3/3); routes_no_payment_params | 3 | | https://veriton-html-json-api.netlify.app | 20 | bare_url_strings(2/2); shared_payment_block_no_per_resource | 2 | | https://app.recallkitchen.com | 20 | bare_url_strings(2/2); shared_payment_block_no_per_resource | 2 | | https://kronos.seshat.markets | 20 | bare_url_strings(20/20); routes_no_payment_params | 20 | | https://x402vid.com | 20 | bare_url_strings(16/16); routes_no_payment_params | 16 | Full matrix (439 rows, per-slug findings + scores): JSON at the paste link below, sha256(16)=030bfa38fe9b5a20 ## Methodology notes (reproducibility) 1. Version-aware: V1 requires maxAmountRequired + per-accept resource/mimeType; V2 requires amount + maxTimeoutSeconds + top-level resource. We judge each seller by its declared x402Version (mixed-version manifests fail both). 2. Free-only services are excluded from defect counting (a zero-price route with no payment params is legitimate). 3. nano:mainnet is accepted as the x402-nano ecosystem namespace (CAIP-2-shaped, non-standard registry). 4. Full 5MB fetch per manifest (no 4KB truncation) to avoid false positives on large manifests; every finding above was re-verified against the raw bytes. 5. Our own front door passed the same auditor with zero findings: https://llmrt-companion.manhliemcn4euwlu.workers.dev/.well-known/x402 (verdict=pass). ## Why this matters x402 buyers are mostly agents with strict SDK clients. A manifest that a standard client cannot parse = a seller invisible to agent traffic even while listed in the directory. The 198 sellers with route-level payment gaps and the 193 with bare-URL resources are effectively unpayable by the reference clients today. ## Offer - Free mini-audit of your own endpoint (3 checks + paste-hosted report with sha256): DM us on Nostr. - Full audit (schema + runtime 402 header vs manifest consistency + official SDK validation + fix diff): 8 XNO (Nano). - Our x402 service (paid per scan, no KYC): https://llmrt-companion.manhliemcn4euwlu.workers.dev/sell