<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Coach Hype Oliver</title>
    <description>The latest articles on DEV Community by Coach Hype Oliver (@coachhype).</description>
    <link>https://dev.to/coachhype</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4130410%2F79309162-0a7f-47f1-afb0-1a18fea705ba.jpg</url>
      <title>DEV Community: Coach Hype Oliver</title>
      <link>https://dev.to/coachhype</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/coachhype"/>
    <language>en</language>
    <item>
      <title>What it takes to get an x402 seller counted by the Coinbase Bazaar (and a 0.25 USDC thank-you for your first receipt)</title>
      <dc:creator>Coach Hype Oliver</dc:creator>
      <pubDate>Thu, 17 Sep 2026 19:30:47 +0000</pubDate>
      <link>https://dev.to/coachhype/what-it-takes-to-get-an-x402-seller-counted-by-the-coinbase-bazaar-and-a-025-usdc-thank-you-for-5cbm</link>
      <guid>https://dev.to/coachhype/what-it-takes-to-get-an-x402-seller-counted-by-the-coinbase-bazaar-and-a-025-usdc-thank-you-for-5cbm</guid>
      <description>&lt;p&gt;I run &lt;a href="https://enclave402.com" rel="noopener noreferrer"&gt;enclave402.com&lt;/a&gt;, a small pay-per-call gateway for AI agents on Base: live Polymarket prediction-market signals ($0.01), EIP-712 attestations you can verify offline ($0.04), and IPFS pinning. It settles USDC through the x402 v2 protocol with the Coinbase CDP facilitator. No API keys, failed calls are never charged, and every settlement lands on a &lt;a href="https://enclave402.com/api/ledger" rel="noopener noreferrer"&gt;public ledger&lt;/a&gt; with our own wallets disclosed.&lt;/p&gt;

&lt;p&gt;This is what I learned this week getting it listed and counted, with sources, because most of it is not in the docs.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Descriptions over 500 characters make payments fail
&lt;/h2&gt;

&lt;p&gt;The facilitator rejects the payment with a generic &lt;code&gt;paymentPayload is invalid&lt;/code&gt; when &lt;code&gt;resource.description&lt;/code&gt; exceeds 500 characters. We found it by paid bisection. Keep descriptions short; put the detail in &lt;code&gt;/llms.txt&lt;/code&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Only the buyer's envelope gets you indexed
&lt;/h2&gt;

&lt;p&gt;Per the Coinbase maintainer on &lt;a href="https://github.com/coinbase/cdp-sdk/issues/764" rel="noopener noreferrer"&gt;coinbase/cdp-sdk#764&lt;/a&gt; and &lt;a href="https://github.com/coinbase/cdp-sdk/issues/816" rel="noopener noreferrer"&gt;#816&lt;/a&gt;: the Bazaar ingests a settlement, and updates &lt;code&gt;l30DaysTotalCalls&lt;/code&gt; / &lt;code&gt;l30DaysUniquePayers&lt;/code&gt; / &lt;code&gt;lastCalledAt&lt;/code&gt;, only when &lt;code&gt;paymentPayload.resource&lt;/code&gt; &lt;strong&gt;and&lt;/strong&gt; &lt;code&gt;paymentPayload.extensions.bazaar&lt;/code&gt; are present inside the &lt;code&gt;PAYMENT-SIGNATURE&lt;/code&gt; envelope. &lt;code&gt;paymentRequirements&lt;/code&gt; is never read. Both keys sit next to the signed &lt;code&gt;payload&lt;/code&gt;, outside the EIP-3009 signature, so the seller can fill them when a client omits them without breaking anything. We do that in &lt;code&gt;onBeforeVerify&lt;/code&gt; / &lt;code&gt;onBeforeSettle&lt;/code&gt; hooks and keep any client-supplied values. Our merchant record started counting the same minute.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Rank is unique payers, nothing else
&lt;/h2&gt;

&lt;p&gt;I pulled the full catalog (15,874 resources). 70.8% have exactly one payer in 30 days. &lt;code&gt;serviceName&lt;/code&gt;, &lt;code&gt;tags&lt;/code&gt;, &lt;code&gt;iconUrl&lt;/code&gt; help search and rendering but the ordering is &lt;code&gt;l30DaysUniquePayers&lt;/code&gt;. Also: nothing in the index has a &lt;code&gt;lastCalledAt&lt;/code&gt; older than 30 days, so an uncounted settlement shortens your listing's life.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. &lt;code&gt;processing&lt;/code&gt; is success
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;EXTENSION-RESPONSES: {"bazaar":{"status":"processing"}}&lt;/code&gt; on settle is the terminal status of a payment that counted. Log presence booleans and that header per envelope; never log signatures.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it, and get 0.25 USDC back for the first receipt from your wallet
&lt;/h2&gt;

&lt;p&gt;Fastest path is one paid &lt;code&gt;GET https://enclave402.com/api/market/signal?limit=1&lt;/code&gt; with any x402 v2 client (&lt;code&gt;@x402/fetch&lt;/code&gt; works out of the box), or the MCP transport at &lt;code&gt;https://enclave402.com/mcp&lt;/code&gt;. Free dry-run first: send &lt;code&gt;X-Agent-Dry-Run: true&lt;/code&gt; and you get a schema-shaped sample at no cost.&lt;/p&gt;

&lt;p&gt;For the first 20 wallets that are not ours and were not funded by us: post the transaction hash from the &lt;code&gt;PAYMENT-RESPONSE&lt;/code&gt; header in the comments; once it shows on &lt;code&gt;/api/ledger&lt;/code&gt; as &lt;code&gt;operator: false&lt;/code&gt; I send 0.25 USDC to the paying wallet and post the tip tx. Terms and verification method are public in the &lt;a href="https://gitlab.com/coachhype/x402-autonomous-api" rel="noopener noreferrer"&gt;repo&lt;/a&gt; (&lt;code&gt;docs/2-how-to/distribution/RECEIPT-BOUNTY.md&lt;/code&gt;). Not affiliated with Coinbase.&lt;/p&gt;

&lt;p&gt;Feedback on the challenge, the receipt flow, and the RFC 7807 error shapes is what I actually want.&lt;/p&gt;

</description>
      <category>x402</category>
      <category>base</category>
      <category>ai</category>
      <category>agents</category>
    </item>
  </channel>
</rss>
