Circle Nanopayments

Testnet

Circle Nanopayments — Circle (USDC)

Overview

Circle Nanopayments is Circle's infrastructure for sub-cent USDC micropayments, optimized for AI agents that pay per-token, per-byte, or per-call. SettleGrid's Circle Nano rail (in development, testnet only) is designed as an EIP-3009 USDC rail on Base: the payer signs a one-time transfer authorization offline, SettleGrid verifies it without a chain round-trip, then settles it on-chain from its own gas wallet.

How It Works

Traditional on-chain transactions have a floor cost (gas fees) that makes sub-cent payments impractical. SettleGrid's Circle Nano rail uses an EIP-3009 transferWithAuthorization: the payer signs an EIP-712 authorization for a one-time USDC transfer to SettleGrid — amount, validity window, and nonce — and sends it in the x-circle-nano-auth header.

SettleGrid verifies that signature entirely offline: it recovers the EIP-712 signer, confirms the payee is SettleGrid and the authorized amount covers the tool price, all with no chain round-trip and no Circle account or API key.

When the consumer pays, SettleGrid submits the EIP-3009 transferWithAuthorization on-chain from its own gas wallet and waits for a confirmed receipt before recording the settlement — the payer signs once and SettleGrid pays the gas. Exercised on Base Sepolia testnet; Base mainnet settlement is pending go-live.

How SettleGrid Integrates

SettleGrid's Circle Nano integration (in development, testnet only) is designed so a consumer's agent sends an EIP-3009 transferWithAuthorization in the x-circle-nano-auth header; SettleGrid verifies it offline (EIP-712 signature recovery, payee, and amount), then submits it on-chain and waits for a confirmed receipt — all abstracted behind the same sg.wrap() interface. Verification itself needs no Circle account or API key.

Key Specs

ProtocolCircle Nanopayments — Circle Nanopayments
BackerCircle (USDC)
Detection Headerx-circle-nano-auth: <base64 EIP-3009 authorization>
Identity Typeeip3009
Payment Typenanopayment-channel (USDC)
StatusTestnet

Code Example

Here is how a developer's tool works with Circle Nanopayments via SettleGrid:

circle-nanopayments-example.tstypescript
import { settlegrid } from '@settlegrid/mcp'

const sg = settlegrid.init({
  toolSlug: 'llm-proxy',
  pricing: {
    // Sub-cent pricing enabled by nanopayments
    defaultCostCents: 0.1, // $0.001 per call
    methods: {
      'tokenize': { costCents: 0.01 },
      'embed': { costCents: 0.5 },
      'generate': { costCents: 2 },
    },
  },
  // Circle Nanopayment channels (in development, testnet only)
})

const embed = sg.wrap(async (args: { text: string }) => {
  const embedding = await generateEmbedding(args.text)
  return { content: [{ type: 'text', text: JSON.stringify(embedding) }] }
}, { method: 'embed' })

Start monetizing with SettleGrid

Free forever — 50,000 ops/month, progressive take rate. Add billing to your Circle Nanopayments tool in under 5 minutes.

Get Started Free

SettleGrid Help

AI-powered support

How can I help?

Ask me anything about SettleGrid