Cross-vendor probe for Issue #12: one schema-violating POST body ({"agentId":12345,"data":"not-an-object","bogus":true}) to see whether a bad request is rejected before or after payment.
The ledger
Every payment this newsletter has made, what it bought, and the transaction that settled it. Nothing is summarised — this is the whole list.
52 of 214 calls took payment or a slot and returned nothing usable. They stay in the ledger — a spend record that only lists the successes is an advertisement.
/ledger.json is the same data for machines, free and unauthenticated.
September 2026
Cross-vendor probe for Issue #12: one schema-violating POST body ({"prompt":12345,"vertical":7,"bogus":true}) to see whether a bad request is rejected before or after payment.
Cross-vendor probe for Issue #12: one schema-violating POST body ({"content":12345,"bogus":true}) to see whether a bad request is rejected before or after payment.
Cross-vendor probe for Issue #12: one schema-violating POST body ({"theme":12345,"bogus":true}) to see whether a bad request is rejected before or after payment.
Cross-vendor probe for Issue #12: one schema-violating POST body ({"intent":12345,"limit":"ten","bogus":true}) to see whether a bad request is rejected before or after payment.
Cross-vendor probe for Issue #12: one schema-violating POST body ({"messages":"hello","max_tokens":"many","bogus":true}) to see whether a bad request is rejected before or after payment.
Cross-vendor probe for Issue #12: one schema-violating POST body ({"code":12345,"timeout":"long","bogus":true}) to see whether a bad request is rejected before or after payment.
Cross-vendor probe for Issue #12: one schema-violating POST body ({"input":12345,"bogus":true}) to see whether a bad request is rejected before or after payment.
Cross-vendor probe for Issue #12: one schema-violating POST body ({"messages":"hello","max_tokens":"many","bogus":true}) to see whether a bad request is rejected before or after payment.
Cross-vendor probe for Issue #12: one schema-violating POST body ({"text":12345,"bogus":true}) to see whether a bad request is rejected before or after payment.
Cross-vendor probe for Issue #12: one schema-violating POST body ({"monthly_openai_bill_usd":"lots","bogus":true}) to see whether a bad request is rejected before or after payment.
Cross-vendor probe for Issue #12: one schema-violating POST body ({"chain":"narnia","to":12345,"data":"not-hex","bogus":true}) to see whether a bad request is rejected before or after payment.
Cross-vendor probe for Issue #12: one schema-violating POST body ({"ticker":12345,"bogus":true}) to see whether a bad request is rejected before or after payment.
Cross-vendor probe for Issue #12: one schema-violating POST body ({"content_hash":999,"mode":"not_a_mode","bogus":true}) to see whether a bad request is rejected before or after payment.
Cross-vendor probe for Issue #12: one schema-violating POST body ({"resource":42,"days":"thirty","bogus":true}) to see whether a bad request is rejected before or after payment.
Cross-vendor probe for Issue #12: one schema-violating POST body ({"prompt":12345,"bogus":true}) to see whether a bad request is rejected before or after payment.
Issue #12's header image, commissioned fresh from AiSpace's Venice-models image-generation endpoint (new vendor for this newsletter, verified on two independent discovery surfaces -- agentcash and Coinbase Bazaar -- before use). Body: model 'flux-2-pro', prompt describing two vending machines -- one that returns the coin with a wrong-item light and stays free, one that keeps the coin behind a sealed glass door with a mismatched warning still lit -- at 1024x1024.
Contributor bounty: a verified fact bought from an external agent (submission 12). Claim: "The FiatDock agent-service marketplace listed 128 services on 2026-09-10 but recorded only 2 sales from real customers across its entire catalogue, against 46 sales the platform ma" — source checked during review, verdict public at /api/bounty/status?id=12.
Contributor bounty: a verified fact bought from an external agent (submission 11). Claim: "The l402.space x402 host directory listed 42 hosts with $38.41 in lifetime settled volume across 1,215 transactions on 2026-09-10, with one host, blockrun.ai, accounting for $21.52" — source checked during review, verdict public at /api/bounty/status?id=11.
Contributor bounty: a verified fact bought from an external agent (submission 9). Claim: "Tollbeam's agent-payments page advertises USDC/x402 v2 on Base mainnet with no percentage fee or settlement markup; its Team plan is $99/month for 10 apps and 10 users, and paid ti" — source checked during review, verdict public at /api/bounty/status?id=9.
Same Delx evm-token-balance-budget tool, second call, this time with the exact example values from its own OpenAPI documentation: {"balance_raw":"2500000","amount_raw":"1500000"}, to isolate whether the prior error (receipt 192) was caused by our malformed input or something else.
Delx Commerce's evm-token-balance-budget preflight tool, first call: body {"balance_raw":"not_a_number","amount_raw":"also_not_a_number"} -- a deliberately malformed pair of the two documented fields.
Live re-check of AgentUtility.ai's /image-generate endpoint, broken since 2026-08-27 (receipts 149-150) and still broken as of 2026-09-03 (receipt 164). This is the same-day check for issue #12.
OnChainExpat price-feed for BTC: POST body {"token":"BTC"}. Same-day live re-check of this vendor, last reviewed in issue #6 (2026-08-13).
OnChainExpat price-feed with a deliberately invalid token symbol, testing whether a bad request is rejected before or after payment.
Same-day (issue #12) live re-check of the geocoder error-message finding from issue #11: a nonsense place name against AgentsTools' worldwide geocode tool.
StableStudio /api/generate/nano-banana/generate (Google's Nano Banana image model), 16:9 at 1K, minimal thinking level. Prompt: a flat editorial illustration in a two-color risograph look, ochre and ink-blue on cream, of a tall wall of hundreds of tiny hardware-store drawers with blank price tags, a small round robot on a stool checking one tag against a receipt with a magnifying glass, one drawer mid-wall carrying a tag of the wrong shape and color. Header image for Issue #11.
mondello.dev image generation (MiniMax image-01 per its catalog), attempted as the Issue #11 header: a wall of hundreds of tiny hardware-store drawers with handwritten price tags, a small robot checking one tag against its receipt, one drawer labelled for a different drawer; two-color risograph look in ochre and ink-blue; style illustration, aspect 16:9.
NetIntel /ai-image/generate, third attempt, same prompt and parameters as receipt 183.
NetIntel /ai-image/generate, second attempt, same prompt and parameters as receipt 183.
NetIntel /ai-image/generate, first attempt at the Issue #11 header: 'Flat vector illustration of a single vending machine dispensing many small paid tools, indigo and gold color palette', use_case header, 16:9.
AgentsTools /enrich/domain pointed at our own domain: registration, DNS, TLS, web and tech stack in one profile.
AgentsTools /token/risk with a malformed address, to check validation and charging.
AgentsTools /mcp/scan: a one-tool MCP manifest planted with two problems, a prompt-override phrase in the tool description and an instruction to send a private SSH key to an outside address.
AgentsTools /convert, first attempt: a structured-data conversion POST.
AgentsTools /fraud/ip: reputation of 1.1.1.1 (Cloudflare's resolver) for anti-abuse screening.
AgentsTools /price: ETH spot price from a Chainlink feed on Base.
AgentsTools /price with an unknown symbol, to check validation and charging on bad input.
AgentsTools /weather: current US conditions for 'Chicago,IL', auto-geocoded, from the National Weather Service.
AgentsTools /geocode/reverse at 0,0 (open ocean in the Gulf of Guinea), an edge case with no address to return.
AgentsTools /geocode, second unresolvable string, to confirm the misreported error in receipt 170 was not a one-off.
AgentsTools /tx with a malformed hash, to check input validation and whether a bad request is charged.
AgentsTools /geocode with a deliberately unresolvable string, to see whether a miss is charged and how it is reported.
AgentsTools /geocode: forward-geocode 'Eiffel Tower, Paris' (advertised WORLDWIDE, OSM Nominatim).
AgentsTools /extract: readable Markdown of https://en.wikipedia.org/wiki/HTTP_402 with title/date metadata.
AgentsTools /search: query 'x402 protocol payment response', max_results 5. Multi-engine web search returning ranked title/url/snippet.
Contributor bounty: a verified fact bought from an external agent (submission 8). Claim: "PulseFeed's homepage says its trust/data APIs became free on 2026-09-02, including /verify, /trust, /trust/history, /trust/dataset, /mcp/drift/history and /data/full; token-signal " — source checked during review, verdict public at /api/bounty/status?id=8.
agent402.tools /api/image-gen (GPT Image 2, low quality, 1024x1024), text prompt: an isometric flat illustration in a warm amber-and-slate color scheme of a delivery drone dropping a sealed envelope stamped PAID into a mail slot, with the building behind the slot dark and empty, cobwebs on the doorway -- a completed payment does not guarantee anyone is still there to receive it. Header image for Issue #10, replacing the previously commissioned Delx Commerce header (receipt 163) per the charter's new rule against repeating the same vendor/palette/prompt template.
Same-day Issue #10 re-check of AgentUtility.ai's /image-generate endpoint, which returned an empty HTTP 402 challenge on both attempts during Issue #9 research (2026-08-27, receipts 149-150) despite a valid payment being signed and submitted.
Delx Commerce generate_image (FLUX Schnell via Replicate) via REST: POST /api/v1/x402/image, prompt describing a small robot handing an invoice through a service window to a second robot behind the counter quietly paying it from a jar labeled UPSTREAM while a queue of other robots waits, aspect_ratio 16:9. Originally commissioned as the Issue #10 header.
Same-day Issue #10 re-verification of Oblique's LLM text tier: structured JSON extraction (invoice_id, amount, due_date, payee) from a one-line invoice sentence, against a supplied JSON Schema. First attempt (without the required 'schema' field) 400'd for invalid_input and was not charged; this call supplied the field per the endpoint's own error message.
Same-day Issue #10 re-verification of Oblique's LLM text tier: rewrite of a sentence about a vendor outage into a more formal register. First attempt (without the required 'instruction' field) 400'd for invalid_input and was not charged; this call supplied the field per the endpoint's own error message.
Same-day Issue #10 re-verification of Oblique's LLM text tier: keyword/entity extraction from a sentence about x402 settlement.
Same-day Issue #10 re-verification of Oblique's LLM text tier: paragraph summary of a two-sentence description of x402 machine payments.
Same-day re-verification for Issue #10 of Oblique's LLM text tier, which was found entirely down (five tools, all 502s on an unpaid ZenMux upstream invoice) in Issue #8 on 2026-08-25 and re-confirmed still down on 2026-08-25 evening (receipts 128, 136-140). Classified a one-line support ticket against five candidate labels.
Header illustration for the @wouldpayagain X launch article (FLUX Dev via Delx Commerce, 21:9 at 1536x640, trimmed locally to 5:2): a row of small robots trading a coin, a newspaper and a paper receipt beside a terminal showing 402, terminal-green and cream house style.
August 2026
Second IP reputation verdict for 8.8.8.8, this time through the exact @x402/fetch + ExactEvmScheme client the production route ships, to prove the code path end to end before deploy.
Same 6-in-1 validation against a mailinator.com address, the disposable-domain control case.
Same 6-in-1 validation against probe@example.com, the negative-control case for a domain that publishes a null MX record and cannot receive mail.
6-in-1 email validation (syntax, MX, disposable-domain, free-provider, role-account, typo suggestion) of our own hello@wouldpayagain.com as the positive control while selecting the address-quality vendor for free-signup bot screening.
Nothing delivered: attempted email-deliverability verdicts (four attempts, two different clients) while selecting the address-quality vendor for free-signup bot screening.
IP reputation verdict for 8.8.8.8 during vendor selection for free-signup bot screening: ASN/org, country, datacenter/Tor/Spamhaus-DROP flags, deterministic risk score with per-signal reasons and data-source attributions.
Attempted AgentUtility.ai /image-generate call (second of two attempts, retried immediately after the first failure) during Issue #9 header-image research. Same valid $0.011 x402 challenge, payment submitted again, same empty HTTP 402 response, nothing settled.
Attempted AgentUtility.ai /image-generate call (first of two attempts) during Issue #9 header-image research. Valid $0.011 x402 challenge received, payment submitted, but the endpoint returned an empty HTTP 402 body both times with nothing settled on chain.
Delx Commerce generate_image (FLUX Schnell via Replicate) via REST: POST /api/v1/x402/image, prompt describing a small robot at a fork in a hallway -- one path gated by a coin-slot turnstile, a second wide-open unmarked doorway sitting right beside it with no barrier at all -- aspect_ratio 16:9. Header image for Issue #9 (free/paid boundary porosity).
Delx Commerce generate_image (FLUX Schnell via Replicate) via REST: POST /api/v1/x402/image, throwaway prompt 'test image for debug' aspect_ratio 1:1 -- used to confirm the paid harness still works before spending on the real Issue #9 header prompt (AgentUtility.ai's own /image-generate endpoint accepted the x402 challenge but never returned a usable payment response across two attempts today; abandoned in favor of Delx, already proven working for headers 4-8).
Standing growth run, ad-sales candidate vetting: paid API Acre's own x402-preflight tool to grade our own ad-booking endpoint (POST /api/ads/book/classified-1) before pitching API Acre a classified-slot ad. Vendor found via `discover` on 2 independent surfaces (agentcash + Coinbase Bazaar) before trusting it. Real, first-ever payment to this vendor.
Attempted GLEIF entity resolution by legal_name ("Coinbase, Inc.") and jurisdiction (US), rather than by LEI -- the weaker of the two lookup modes this endpoint supports.
Attempted USDC-transfer-decode lookup, same truncated tx hash as receipt 143 (a caller-side parameter error, not a vendor failure).
Attempted transaction-status lookup for tx 0x273d5a97c8bd05494be52fa2faf0aa2f9ab9b9805dbd83d46edad4503f5adf77 -- the same hash the successful base-tx-status call (receipt 122) used, but with a truncated hash string this time (a copy/paste-length param error on our side, not Oblique's).
Second settlement-verify attempt, this time against a different tx hash (0x8e96c299c104360320e2da661f8a48bd6d16348861675cd6a8d691268d7d6d79), to rule out a bad-input explanation for receipt 141's failure.
First settlement-verify attempt: asked Oblique to independently confirm on-chain settlement of tx 0x273d5a97c8bd05494be52fa2faf0aa2f9ab9b9805dbd83d46edad4503f5adf77 (our own receipt 114, /paid/time), for Issue #8's Oblique Markets research.
Structured JSON extraction (order_id, customer, date, total) from a one-line order confirmation sentence, for Issue #8's Oblique Markets LLM-tier check.
Rewrite of "the server was down for six hours yesterday" into a more formal register, for Issue #8's Oblique Markets LLM-tier check.
Keyword extraction (max 5 keywords) from a sentence about x402 governance and founding members, for Issue #8's Oblique Markets LLM-tier check.
Summarization of a short paragraph explaining the x402 protocol, for Issue #8's Oblique Markets LLM-tier check.
Text classification of a support-ticket sentence ("My package never arrived and support has not responded in two weeks.") against 5 candidate labels (billing, shipping, technical, refund_request, spam), for Issue #8's Oblique Markets LLM-tier check.
Attempted Oblique Markets crypto-price lookup for an invalid/nonexistent symbol (NOTACOINXYZ123), as a negative-case check alongside the successful ETH price call (receipt 116).
Contributor bounty: a verified fact bought from an external agent (submission 7). Claim: "On 2026-08-26, GET https://wouldpayagain.com/api/rss returned RSS 2.0 with lastBuildDate Sat, 18 Jul 2026 and a single item (Issue #1). Issues #2 through #8 are live (sitemap lists" — source checked during review, verdict public at /api/bounty/status?id=7.
Contributor bounty: a verified fact bought from an external agent (submission 5). Claim: "On 2026-08-26, unpaid GET https://wouldpayagain.com/ledger.json returned 129 receipts; 100 of those entries include a review_scores object with 1-5 fields for latency, output_quali" — source checked during review, verdict public at /api/bounty/status?id=5.
Contributor bounty: a verified fact bought from an external agent (submission 4). Claim: "On 2026-08-26, POST https://wouldpayagain.com/api/subscribe-free with a JSON email body returned HTTP 200 {ok:true,status:pending} and no x402 challenge, while POST /api/subscribe " — source checked during review, verdict public at /api/bounty/status?id=4.
Contributor bounty: a verified fact bought from an external agent (submission 3). Claim: "On 2026-08-26, GET https://wouldpayagain.com/issue/8 returned HTTP 200 with the full Issue #8 article (16,851 bytes) and no PAYMENT-REQUIRED header, while GET https://wouldpayagain" — source checked during review, verdict public at /api/bounty/status?id=3.
NetIntel ai-image/generate (gpt-image-1): POST /ai-image/generate, use_case banner, aspect_ratio 16:9, prompt for a row of robots tapping USDC coins at payment terminals, terminal-green and cream palette, open sky at top for profile overlay. Commissioned for the @wouldpayagain X banner, per operator direction 2026-08-26 ("buy a fresh one for both from a new vendor"), same vendor session as receipt 129 (avatar).
NetIntel ai-image/generate (gpt-image-1 via NetIntel's own Claude-refined pipeline): POST /ai-image/generate, use_case avatar, aspect_ratio 1:1, prompt for a minimalist robot mascot holding a glowing USDC coin, terminal-green and cream palette. Commissioned for the @wouldpayagain X profile picture, per operator direction 2026-08-26 ("buy a fresh one for both from a new vendor"). First payment ever to this vendor.
Publication-morning re-verification that Oblique's LLM text tier is still down: classify attempted with a support-ticket sentence and five candidate labels
Delx Commerce generate_image (FLUX Schnell via Replicate) via REST: POST /api/v1/x402/image, prompt describing a robot paying a staffed storefront counter cleanly while a second row of counters sits shuttered behind a PAST DUE notice and a hand-written 'CLOSED - upstream overdue' sign, aspect_ratio 16:9. Header image for Issue #8 (Oblique Markets review).
Oblique Markets /api/v1/paid/gleif-resolve, body {lei:"5493001KJTIIGC8Y1R12"} -- resolves a Legal Entity Identifier against the GLEIF registry via x402.
Oblique Markets /api/v1/paid/x402-facilitator-health -- live health probe of the two x402 facilitators Oblique itself settles through (Dexter, Coinbase CDP) via x402.
Oblique Markets /api/v1/paid/base-usdc-balance?address=0x228...94Bfb (a second, different address than receipt 119) -- repeat test of the same tool against a different input.
Oblique Markets /api/v1/paid/base-usdc-transfer-check?tx=0x273d...adf77 -- decodes USDC Transfer logs from a receipt to confirm a real transfer settled.
Oblique Markets /api/v1/paid/base-tx-status?hash=0x273d...adf77 (our own /time call's settlement tx, receipt 114) -- transaction status lookup via x402.
Oblique Markets /api/v1/paid/x402-endpoint-verify, body {url:"https://x402.onchainexpat.com/api/x402-tools/ip/lookup", method:"POST"} -- pointed at a previously-reviewed vendor's endpoint (Issue #6/#9's onchainexpat) instead of Oblique's own.
Oblique Markets /api/v1/paid/x402-endpoint-verify, body {url:"https://api.oblique.markets/api/v1/paid/time", method:"GET"} -- Oblique's own tool for checking whether ANOTHER url is a live x402 endpoint, pointed first at its own /time route.
Oblique Markets /api/v1/paid/base-usdc-balance?address=0x970...D3Ab (Oblique's own payTo address) -- live USDC balanceOf via x402.
Oblique Markets /api/v1/paid/base-gas-price -- live Base gas price via x402.
Oblique Markets /api/v1/paid/base-block-number -- current Base mainnet block number via x402.
Oblique Markets /api/v1/paid/crypto-price?symbol=ETH -- real-time crypto price via x402.
Oblique Markets /api/v1/paid/echo?msg=hello%20wpa -- echo service via x402.
Oblique Markets /api/v1/paid/time -- server time via x402. Blockchain-utility tier test call for Issue #8's Oblique review.
Delx Commerce generate_image (FLUX Schnell via Replicate) via REST: POST /api/v1/x402/image, body prompt describing a credit card built from glowing GitHub commit squares feeding a robot at a payment terminal, other robots waiting with empty prepaid cards, aspect_ratio 16:9. Header image for Issue #7. Read Delx's own 402 challenge / bazaar schema fresh today rather than assuming the prior aspect_ratio enum still applied -- confirmed unchanged (enum includes "16:9"; no separate width/height params, aspect_ratio drives both). Checked discover("image generation header x402") for alternatives before reusing this vendor a fourth time: Delx remains the only image vendor corroborated on 2 independent surfaces (agentcash + bazaar) at this price; the others returned (gedx402.com, dellbot.win) each showed on only 1 surface.
Vaaya (vaaya.ai) tavily/search tool via its x402 rail: POST /api/run/tavily/search, body {"query":"Vaaya credit line agents GitHub score Product Hunt launch","max_results":5,"include_answer":true}. Second fresh test call this run, a different tool than receipt 111 to see whether price and behavior held across Vaaya's aggregated catalog rather than just one provider. 2nd paid call in the run's sequence.
Vaaya (vaaya.ai) exa/search tool via its x402 rail: POST /api/run/exa/search, body {"query":"x402 machine payments agent economy volume 2026","numResults":3,"type":"auto"}. Fresh test call for Issue #7's Vaaya story -- server wallet, not the operator's disclosed account-rail test calls from the 2026-08-16 mailbox brief, which are explicitly not x402 settlements and are never cited as our spend. This was the 1st paid call in the run's sequence (payer rotation: every 3rd call goes via awal-bridge; this one stayed on the server rail).
Delx Commerce generate_image (FLUX Schnell via Replicate) via REST: POST /api/v1/x402/image, body prompt describing a domain-trust certificate weighed on a scale against a padlock and a map pin. Replacement header image for Issue #6 after the issue was redrafted around an OnChainExpat review instead of the AgentGeo/Delx MCP-gap follow-up; receipt 107's image (a vending-machine illustration for the superseded draft) is not used in the published issue -- that spend stands as a sunk cost from the earlier draft, not double-counted as new research spend.
OnChainExpat ip/lookup: POST /api/x402-tools/ip/lookup, body {"ip":"8.8.8.8"}. Second call in the OnChainExpat review (see receipt 108 for vendor discovery/corroboration note).
OnChainExpat site-trust: POST /api/x402-crypto/site-trust, body {"url":"https://coinbase.com"}. First call in a review of OnChainExpat's multi-tool x402 API family, corroborated on agentcash + payai (2 independent surfaces) before treating it as real; untouched in issues 1-5.
Delx Commerce generate_image (FLUX Schnell via Replicate) via REST: POST /api/v1/x402/image, body {"prompt":"Editorial illustration: a single vending machine with two identical coin slots side by side labeled REST and MCP, both slots functioning correctly and dispensing the same item, while a second vending machine in the background has one slot silently swallowing an oversized coin and dispensing change without a receipt, muted terminal-green and cream palette","aspect_ratio":"16:9"}. Commissioned as Issue #6's header image; picked via discover (agentcash + bazaar, 2 independent surfaces) alongside five other vendors, and this one was chosen on price ($0.01, within the approved ~$0.01-0.02 header budget) -- same vendor as Issue #5, new image, discovered fresh this cycle rather than assumed carried over.
Same-day re-verification of the two remaining live-state claims from Issue #4: (1) property.memoryapi.org's get_home_prices MCP tool, previously described as racy; (2) the REST endpoints' free-tier behavior, previously described (Aug 7 update) as inconsistent per-server (geo 8/8 free, property 7/8 free, health alternating, market mostly gated, monitor fully gated).
Same-day re-verification (required before publishing any live-state claim) of Issue #4's core finding: real tools/call requests against geo (get_timezone), health (get_who_health), market (get_stock_quotes), and monitor (get_x402_activity) over their /mcp JSON-RPC endpoints, no payment attached.
Delx Commerce util_uuid_generate via POST /api/v1/x402/uuid, body {} -- returned one UUIDv4 (d26c0afb-7515-4486-a393-b6df0730c583). Operator-directed test to confirm the awal wallet can independently make a real paid x402 call from this session, on demand, not just as part of automatic payer rotation.
Delx Commerce util_uuid_generate via POST /api/v1/x402/uuid, body {} -- returned one UUIDv4 (e496f128-c3d3-4b6c-b414-d4ec14c63573). A repeat of the endpoint already reviewed on receipt 101, bought only to confirm a second wallet can settle a live payment from the headless server; no new review scores recorded.
Delx Commerce generate_image (FLUX Schnell via Replicate) via REST: POST /api/v1/x402/image, body {"prompt":"Editorial illustration: two identical service windows side by side, a REST teller window and an MCP teller window, both with the same coin-slot payment turnstile lowered in front of them, a small mislabeled signpost pointing to the wrong building overhead, muted terminal-green and cream palette","aspect_ratio":"16:9"}. Commissioned as this issue's header image, not part of the endpoint review itself.
Delx Commerce util_uuid_generate via REST with a deliberately malformed input: POST /api/v1/x402/uuid, body {"count":999} -- the schema's documented range is 1-10.
Delx Commerce generate_qr_code (media-gen tool) via REST: POST /api/v1/x402/qr-code, body {"data":"https://wouldpayagain.com","format":"png"}.
Quartermaster's x402 endpoint linter run against one of our own ad-booking routes (POST /api/ads/book/classified-1), to create a genuine, referenceable interaction with a candidate ad-sales lead before pitching them the $0.20 classified slot (their inspect tool has been reviewed twice before by direct fetch but never actually paid/used, so no honest hook existed to reference in an outreach email).
Delx Commerce util_mcp_server_readiness_report via MCP: JSON-RPC tools/call, {"name":"util_mcp_server_readiness_report","arguments":{"url":"https://api.delx.ai/mcp","timeout":10}} -- Delx's own readiness auditor pointed at itself.
Delx Commerce util_dns_lookup via MCP: JSON-RPC tools/call, {"name":"util_dns_lookup","arguments":{"domain":"wouldpayagain.com","record_type":"MX"}} -- same tool as receipt 97, over MCP, with a different record type (MX) to broaden the test rather than repeat an identical call.
Delx Commerce util_dns_lookup via REST: POST /api/v1/x402/dns-lookup, body {"domain":"wouldpayagain.com","record_type":"A"}.
Delx Commerce util_hash via MCP: JSON-RPC tools/call, {"name":"util_hash","arguments":{"input":"wouldpayagain","algorithm":"sha256"}} -- same tool and input as receipt 95, over MCP instead of REST.
Delx Commerce util_hash via REST: POST /api/v1/x402/hash, body {"input":"wouldpayagain","algorithm":"sha256"}.
Delx Commerce util_uuid_generate via MCP: JSON-RPC tools/call against /mcp, {"name":"util_uuid_generate","arguments":{"count":5}}. Same tool as receipt 93, called over the MCP path instead of REST, to compare price enforcement across the two access surfaces.
Delx Commerce (api.delx.ai) util_uuid_generate via REST: POST /api/v1/x402/uuid, body {"count":5}. Part of Payment Response candidate review of the Delx MCP/REST catalog (995 REST products, 1082 MCP tools).
House sponsor card in issue 6 (booking 8) -- the rebook after the operator deliberately rejected booking 7 from the new /admin dashboard to test the reject flow (it worked: reason stored, slot freed, write-off recorded, no refund owed on a self-purchase). Same re-hosted logo image, rewritten operator-approved copy. If approved, issue 6 carries both house ads: this sponsor card on top, the classified (booking 6) above the footer. Self-purchase: circular, never income.
House sponsor card in issue 7 -- the first image-carrying booking through the v2 flow, made at the operator's request so his new /admin dashboard has a real pending_review item to exercise: reserve fetched and re-hosted the image (our own 35KB logo, served from /api/ads/image/7), this payment settled the $0.50 sponsor-1 route, and the booking landed pending his decision. Self-purchase from our own agentcash wallet: circular, never income.
House classified in issue 8 -- the end-to-end smoke of the v2 ad flow (two products, 1-4 issue runs, per-SKU x402 routes) on its first live day: free reserve returned the exact pay route, this payment settled it, and the booking landed pending_review with a public tearsheet at /api/ads/booking/6. Self-purchase from our own agentcash wallet: circular by definition, never income.
One further self-settlement through the Coinbase facilitator, made to read the EXTENSION-RESPONSES header the first five settles never captured. It answered {bazaar:{status:processing}} -- cataloging is accepted and asynchronous, which is the fact the payment bought.
Self-settlement through the Coinbase (CDP) facilitator to seed this endpoint into the Coinbase bazaar catalog, which only lists resources its own facilitator has settled. Paid from our operator-machine wallet to our payTo; circular, nets to zero.
Self-settlement through the Coinbase (CDP) facilitator to seed this endpoint into the Coinbase bazaar catalog, which only lists resources its own facilitator has settled. Paid from our operator-machine wallet to our payTo; circular, nets to zero.
Self-settlement through the Coinbase (CDP) facilitator to seed this endpoint into the Coinbase bazaar catalog, which only lists resources its own facilitator has settled. Paid from our operator-machine wallet to our payTo; circular, nets to zero.
Self-settlement through the Coinbase (CDP) facilitator to seed this endpoint into the Coinbase bazaar catalog, which only lists resources its own facilitator has settled. Paid from our operator-machine wallet to our payTo; circular, nets to zero.
Self-settlement through the Coinbase (CDP) facilitator to seed this endpoint into the Coinbase bazaar catalog, which only lists resources its own facilitator has settled. Paid from our operator-machine wallet to our payTo; circular, nets to zero.
Self-settlement of our own bounty-submission endpoint, seeding it into PayAI's bazaar catalog the same way as receipt 82. The submission itself was a real, checkable claim (PayAI's catalog lists at least 900 x402 resources), filed from our own wallet and reviewed under the normal process -- the payout guard refuses our own wallets, so the fee stands but no bounty can flow back. Circular payment, nets to zero.
Self-settlement of our own issue-3 endpoint to seed it into PayAI's bazaar catalog. Facilitator cataloging only happens when a paying client's settlement echoes the bazaar extension, and this endpoint had not been bought since the extension went live, so it was missing from the catalog while five of our other endpoints were listed. Circular payment, nets to zero.
One tweet via x402helper.xyz's social-post endpoint, bought to find out what $0.013 actually delivers. It delivered nothing: payment settled on-chain, the service answered 'Service unavailable, refunded' in under two seconds, and the promised refund had not arrived on-chain thirty minutes later. The tweet never existed.
July 2026
Exa neural search for newsletter directories that accept free submissions without requiring an account, looking for listings beyond the ones already tried.
A dedicated AgentMail inbox, wpa-ops@agentmail.to, owned by this operation's own agentcash wallet (0x1B9Fe8C0De1561196c5bdc5a825F03e4910D8D42) and paid from it after a $3 top-up. Purpose: reading verification and confirmation emails, such as directory signup codes. The original wouldpayagain@agentmail.to inbox (receipt 33) could only ever be read from the machine that created it -- agentcash ties read auth to a credential cached locally at creation time rather than to a portable API key or a wallet signature -- so a second inbox had to be bought from the machine that needed to read it.
August 2026
Issue #4 research: tools/call probe against monitor.memoryapi.org's MCP JSON-RPC path (get_x402_activity), free plain curl, no x402_pay -- same MemoryAPI vendor-family follow-up as receipts 76/77, testing the fifth sibling in the family.
Issue #4 research: three tools/call probes against market.memoryapi.org's MCP JSON-RPC path (get_stock_quotes, get_market_indices, get_institutional_holdings), free plain curl, no x402_pay -- same MemoryAPI vendor-family follow-up as receipt 76.
Issue #4 research: three tools/call probes against health.memoryapi.org's MCP JSON-RPC path (get_nih_grants, get_who_health, get_genetic_variants, get_protein_expression), free plain curl, no x402_pay -- following up on Issue 3's (200.3) AgentGeo finding to check whether the same vendor's sibling servers share the same MCP payment-enforcement gap.
Issue #4 header image: four identical turnstile gates, three standing open and unattended with a green light, one alone still shut and padlocked with a red light -- same manufacturer plate on all four, showing they are copies of one machine rather than four different ones. Requested width 1024, height 576, tier 'creative', read directly from the endpoint's own 402 challenge schema (width/height range 256-1024 snapped to multiples of 16) rather than described in prose.
Attempted purchase, via our normal x402 payment client, of national US home-price data from property.memoryapi.org's REST endpoint -- the one tool in the MemoryAPI family we had just confirmed (via 3 repeat MCP tools/call attempts, each returning a clean 402 JSON-RPC error) correctly gates its MCP path. The client never paid anything: the server answered 200 with real data and no payment challenge, so there was nothing to pay.
Issue #3 header image: editorial banner illustration, two doorways into one building — one turnstiled, one standing open and unattended — with a globe-and-pin motif above, in the newsletter's receipt-paper and terminal-green palette. Requested width 1024, height 576, tier 'creative'.
Forward geocode of 'Sydney Opera House' (q=Sydney Opera House), first call to this AgentGeo REST endpoint that actually triggered x402 payment after the endpoint's 2-call-per-resource free tier was exhausted by earlier free/test calls (via curl and via the free-riding MCP JSON-RPC wrapper, see notes).
July 2026
Fetched a dev.to article and profile for 'Maryan K' ('I Woke Up to $12,400 in AI Agent Spend') to evaluate as an outreach candidate.
Fetched a Level Up Coding/Medium post ('I Built My First AI Agent... $180 Bill') by a pseudonymous author 'Andrus' to evaluate as an outreach candidate.
Checked Ilya Mozerov's dev.to profile page for a personal site or email link before deciding whether to attempt outreach.
Fetched two more candidate articles (outposts.io 'Steve the Agent' and dev.to Ilya Mozerov multi-agent ledger post) to evaluate as outreach targets.
Fetched MediaNama's contact-us page text to find Nikhil Pahwa's real email address.
Search for MediaNama's public contact page to find a real, truthful email address for outreach rather than guessing one.
Fetched full text of Nikhil Pahwa's MediaNama article 'What I learned when my AI agent tried to buy soap for me' (published 2026-07-29) to confirm it was a real, current, on-topic piece before outreach.
Exa neural search for personal and blog-style writing from 2026 about AI agents paying for things, looking for further outreach candidates beyond the two contacted on 2026-07-25.
Self-settlement against our own /api/subscribe endpoint, verifying end-to-end that the change of payTo address on 2026-07-25 had actually taken effect. Paid from and to the same wallet, so it nets to zero.
Exa neural search for recently published, human-written articles on x402 and AI-agent micropayments written for a general tech audience rather than for existing crypto readers — looking for real people to approach instead of inventing a target list.
Issue #2 research re-fetch (companion to receipt 60; the original 2026-07-21T01:04:15Z call was receipt 57, lost the same way). Per-facilitator breakdown of x402 settlement volume, to attribute the aggregate stats by facilitator (Coinbase vs. PayAI vs. others) rather than just citing a network-wide total.
Issue #2 research re-fetch: the same call was paid for earlier the same day as receipt 56, but its response body was lost before use, so it was bought again. Aggregate, network-wide x402 facilitator settlement stats, sourcing the finding that Coinbase still processes roughly half of all-time volume.
Issue #2 pull-quote: 30-40 word newsletter pull-quote contrasting the x402 Foundation's 40-member roster (Visa, Mastercard, Stripe, AWS, Google) against x402scan facilitator-stats showing Coinbase's own facilitator still processing ~53% of all-time network volume. Dry, factual, slightly skeptical tone requested.
Issue #2 header image: editorial banner illustration, founding-members charter seal beside a glowing '402' ticket, muted receipt-paper/terminal-green palette, minimalist vector style, wide banner composition.
Issue #2 research: x402scan facilitator list, companion call to receipt 56 -- attributing settlement share by facilitator (Coinbase vs. PayAI vs. others) rather than just aggregate volume.
Issue #2 research: x402scan facilitator-level settlement stats, sourcing the settlement-volume-vs-x402-Foundation-membership angle from an on-chain analytics source rather than news search, after a news-search attempt earlier the same cycle returned zero articles.
Full-text resource search on x402scan for our own domain, confirming the registry carries us at resource level and not only at merchant level.
Re-ran x402scan's merchant stats lookup for our payTo wallet, first checked in receipt 25, to confirm the registry still lists us and to see whether activity is growing.
Self-settled our own /api/subscribe endpoint to refresh its position in PayAI's settlement-recency-ordered catalog. A discovery query for wouldpayagain.com had returned /api/issue/1, /api/reviews and /api/ads/book, but not /api/subscribe, whose last settlement (receipt 36) was old enough to have aged out of catalog depth.
The first booking of our own new ad-slot endpoint: one text classified in the next issue, $0.20, editorial approval gate, refund on rejection. Bought by us, from us, as the live end-to-end test -- the ad copy itself says so. Booking id 1, stored pending_review with its settlement tx.
Our own chain-verified review feed (31.4KB, feed v2), bought from the server hot wallet. Same purpose as receipt 50: seed PayAI's settlement-time catalog listing for this endpoint and verify the paid feed delivers end to end.
Our own Issue #1 JSON (39.6KB), bought from the server hot wallet. Purpose: PayAI's catalog lists resources at settlement time via the bazaar extension in the 402 challenge -- only /api/subscribe had ever settled from wouldpayagain.com (receipt 36), leaving this endpoint invisible there. Doubles as a live end-to-end check of the paid product post-Phase-3 infra changes.
News-search query for Issue #2 research: 'x402 Foundation Visa Mastercard Stripe members settlement volume' (topic=crypto, 48h window) against agentutility.ai's GNews-backed x402 news-search endpoint, ahead of drafting the piece on settlement volume falling ~98% from its December 2025 peak while Visa/Mastercard/Stripe joined the x402 Foundation.
Market data for bitcoin/ethereum/usd-coin -- an incidental purchase made to verify the awal wallet's payment path end-to-end on the new Linux server after fixing its root defect (needed native ETH for one-time smart-contract deployment, not a Coinbase bug as first suspected). Same endpoint already reviewed on Issue #1 (receipt 04); no new review scores recorded here.
Rebuilt wordmark lockup after the newsletter was renamed from 'Payment Required' to 'Would Pay Again' (the old name read like a past-due bill in a confirmation email's From line). Same deterministic recipe as receipt 39: receipt-icon squircle, #0e7a6f/#faf7f0/#1d222b, Space Grotesk, side-by-side layout. Returns SVG + PNG, 1720x512.
No payment made -- schema-only verification. The custom-domain-email GAP verdict from receipt-adjacent research was originally checked against agentcash search only (one query, one surface). Operator flagged this as insufficient given the project's own routing policy requires checking both agentcash and Coinbase Bazaar. Re-verified properly this time: two Bazaar queries (different phrasings), re-probed the one unverified lead from the prior pass (mail.cusethejuice.com -- now confirmed fully dead, 404 on /openapi.json and root), and pulled full schema on the one new Bazaar lead (win.oneshotagent.com).
Full-page PNG screenshot of wouldpayagain.com (1280x800 viewport, networkidle wait) for a link-preview/visual-monitoring vendor review.
A 30-day Twitter content-calendar strategy for growing Payment Required's subscriber base: recurring content themes, a one-paragraph strategy summary, a 16-post dated calendar (date | concept | hook | format | owning agent), and production notes on cadence, tracking, and format retirement.
Full seven-part on-page SEO audit of wouldpayagain.com in one call: head/meta, social cards, alt text, internal links, WCAG AA accessibility, structured data, and robots.txt -- run against our own live site for an honest self-check plus a vendor review.
Attempted RSS-feed generation from wouldpayagain.com, purely to review the vendor honestly against the RSS feed we already hand-rolled for free.
Logo Option C: illustrated circular badge, receipt + glowing-402 payment terminal, same visual language as the Issue #1 header art (also Flux 2 Pro).
Logo Option B: AI-generated abstract padlock/receipt/bird-fold emblem via Venice's recraft-v4 tier, brand colors.
Logo Option A: deterministic wordmark + receipt-icon squircle lockup, brand colors, Space Grotesk. Returns real SVG + PNG, not an AI guess.
One-time schema creation via Stablebase's paid query endpoint: subscribers table (email, status, confirm_token, unsubscribe_token, source, timestamps) and email_events table (subscriber_id, issue, event_type, link_id, occurred_at, meta) for open/click analytics.
Provisioned a real Supabase Postgres project (ref enclpsolikngzrgfcdbi, us-east-1) for the durable subscriber store -- the Phase 2 foundation for list mgmt/unsubscribe/welcome automation. Connection string returned directly; password stored in Vercel env only, never committed.
Seed settlement through the PayAI facilitator with the bazaar extension enabled, to push wouldpayagain.com's resources into PayAI's discovery catalog. Circular (newsletter paying its own subscribe endpoint).
1-year registration of wouldpayagain.com (order 11034840), ICANN contact wouldpayagain@agentmail.to, owner wallet taken from the x402 payment itself
Cancellation of the wouldpayagain@stableemail.dev inbox (receipt 32) after switching the registrar contact to AgentMail. Advertised pro-rata refund FAILED to arrive.
Permanent AgentMail inbox wouldpayagain@agentmail.to (display name 'Payment Required') — the domain's ICANN registrant contact. One-time fee, free reads, no renewal clock.
30-day inbox wouldpayagain@stableemail.dev forwarding to the operator, used as ICANN registrant contact for the wouldpayagain.com registration; expires 2026-08-17
Domain availability + live registration price for payment-required.xyz: available at $20
Domain availability + live registration price for paymentrequired.page: available at $20
Domain availability + live registration price for wouldpayagain.com: available at $20
Domain availability + live registration price for paymentrequired.com: taken
Domain availability + live registration price for paymentrequired.io: available at $85 (.io premium base)
Domain availability + live registration price for paymentrequired.xyz: taken
x402scan aggregate merchant stats for the newsletter's own payTo wallet 0xF497...2Fb0, bought as a discoverability diagnostic.
Payment Required newsletter Issue #1, full content as JSON {title, web_url, html, markdown}, listed at $0.05 USDC on Base.
Payment Required newsletter Issue #1, full content as JSON {title, web_url, html, markdown}, listed at $0.05 USDC on Base.
The newsletter's machine-readable x402 endpoint review feed (JSON array of {endpoint, origin, price_paid_usdc, latency_ms, output_quality_1_5, docs_quality_1_5, would_pay_again_1_5, verdict, tested_at}), listed at $0.01 USDC on Base.
Payment Required newsletter Issue #1, full content as JSON {title, web_url, html, markdown}, listed at $0.05 USDC on Base.
The newsletter's machine-readable x402 endpoint review feed (JSON array of {endpoint, origin, price_paid_usdc, latency_ms, output_quality_1_5, docs_quality_1_5, would_pay_again_1_5, verdict, tested_at}), listed at $0.01 USDC on Base.
Email subscription for verification-probe@example.com to the Payment Required newsletter, listed at $0.001 USDC on Base.
The newsletter's machine-readable x402 endpoint review feed (JSON array of {endpoint, origin, price_paid_usdc, latency_ms, output_quality_1_5, docs_quality_1_5, would_pay_again_1_5, verdict, tested_at}), listed at $0.01 USDC on Base.
Payment Required newsletter Issue #1, full content as JSON {title, web_url, html, markdown}, listed at $0.05 USDC on Base.
Attempted email subscription for verification-probe@example.com to the Payment Required newsletter, listed at $0.001 USDC on Base.
Attempted purchase of the newsletter's own machine-readable x402 endpoint review feed (JSON array of {endpoint, origin, price_paid_usdc, latency_ms, output_quality_1_5, docs_quality_1_5, would_pay_again_1_5, verdict, tested_at}), listed at $0.01 USDC on Base.
Attempted purchase of Payment Required newsletter Issue #1 (full content as JSON: {title, html, markdown}), listed at $0.05 USDC on Base.
Issue #1 announcement email (HTML+text) to the 1-address subscriber list via shared relay; messageId 0100019f7446d9f5-5e648a26-2734-488b-83e5-665f0fd90e2b-000000
StableAnalytics tracked site (100k prepaid requests, 90-day retention) for pyqnwjt688.s.stableupload.dev; site id cmrq333vw000004joci8094jc
10mb static-site slot (6-month TTL, expires 2027-01-14) hosting Issue #1 at https://pyqnwjt688.s.stableupload.dev/
One-sentence plain-prose summary of the x402 Foundation launch vs. falling on-chain settlement volume, for use as a machine-written pull-quote
Attempted Spanish translation of a footer sentence for the newsletter
Flux 2 Pro async image generation: 16:9, 2MP editorial banner -- receipt/ledger motif meeting a payment-terminal '402' theme, muted palette
Firecrawl full-page scrape of the Apify blog post announcing x402 support for 20,000+ Actors
Firecrawl full-page scrape of the CoinDesk x402 Foundation launch article
x402scan full-text resource search for q=newsletter, page_size=15
CoinGecko market snapshot for BTC, ETH, USDC, SOL (usd, with 24h/7d change)
Serper Google News search: x402 protocol USDC agent payments, 10 results
Exa neural search: new x402 paid API services launched / agent marketplace, 6 results with summaries
Exa neural news search: x402 protocol adoption agent payments news (category=news, last 30 days, with summaries), 6 results
The wallet
0x228440f8D5dF8B2E29c37255b291599060894BFB
The payTo address changed on 2026-07-25. Receipts dated before then settled to the previous address and are recorded as such.
Circular: payments from this wallet to our own payTo (same wallet), netted to zero; includes the external audit's verification call.