About x402receipts
x402receipts records agents’ x402 purchases, reconciles them with on-chain payments, and provides verifiable receipts and monthly reports. It is accounting infrastructure for teams tracking autonomous spending.
Key features
- 01Records paid calls as receipts
- 02Matches receipts to Base and Solana payments
- 03Flags unmatched payments
- 04Publishes verifiable receipt proofs
- 05Exports statements as CSV and signed JSON
Use cases
- 01Audit an agent wallet’s purchases
- 02Investigate unmatched USDC payments
- 03Prepare monthly supplier spend reports
MCP support
The MCP server exposes tools to record receipts, verify a receipt, and retrieve service information.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y x402receipts-mcpX402RECEIPTS_EVM_PRIVATE_KEYSecretOptional. 0x… key holding USDC on Base; pays USD 1 per wallet per calendar month; later uploads that month are free.X402RECEIPTS_SOLANA_PRIVATE_KEYSecretOptional. ed25519 key (hex or base58) holding USDC on Solana.Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
3Saved tool list · updated 2w ago
This tool takes no parameters.
Details
From the project READMEx402receipts
Accounting infrastructure for autonomous spending. Every x402 purchase an agent makes becomes a receipt, reconciled against the on-chain transaction, with missing or unmatched payments flagged, monthly statements for finance, and evidence anyone can verify.
- Website: https://x402receipts.com · App: https://app.x402receipts.com · Live statement: https://app.x402receipts.com/demo
- Docs for agents: https://app.x402receipts.com/llms.txt · OpenAPI: https://app.x402receipts.com/openapi.json
- Price: USD 0.01 per agent wallet for each day it records purchases, paid over x402 in USDC (Base, Solana) by the agent's own wallet. A quiet day costs nothing, so a month never exceeds USD 0.31. Unlimited receipts. No API key.
Use it
In code — one wrapper around the fetch your agent already pays with (npm i x402receipts-sdk):
import { wrapFetchWithPayment } from "@x402/fetch";
import { withRegister } from "x402receipts-sdk";
const register = withRegister(fetch, { endpoint: "https://app.x402receipts.com", payWith: () => pay });
const pay = wrapFetchWithPayment(register, wallet);
As an MCP server (npx -y x402receipts-mcp): record_receipts, verify_receipt, service_info. See packages/mcp.
Over HTTP: POST https://app.x402receipts.com/api/v1/receipts — answers 402 with the x402 challenge; any x402 client pays it.
With an AI coding tool: paste the integration prompt into Claude Code or Cursor.
The format is an open standard
The record, its fingerprint, the append-only log above it, the anchor record and the verification algorithm are published as ARR-1 — Agent Receipt Record, released into the public domain (CC0). JSON Schemas are in spec/arr-1/. Implement it yourself, or check our implementation against it.
ARR-1 builds on existing standards rather than replacing them: the tree is the RFC 9162 profile used by Certificate Transparency, checkpoints are published as HCS-27 messages, accounts are named with CAIP-2/CAIP-10, and agents with HCS-14 identifiers.
In this repo
| Path | What |
|---|---|
spec/arr-1/ | the ARR-1 specification and its JSON Schemas (CC0) |
sdk/ | the x402receipts-sdk npm package (single file, no dependencies) |
packages/mcp/ | the x402receipts-mcp MCP server |
examples/ | plain Node, Vercel AI SDK, LangChain, OpenAI Agents |
integrations/agentkit/ | Coinbase AgentKit action provider |
integrations/x402-ecosystem/ | x402.org ecosystem entry |
How it works
- Capture — the SDK records each paid call: resource, amount, counterparty, transaction reference, request/response fingerprints, delivery status, and the seller's signed receipt when it issues one (x402
offer-receipt). - Reconcile — the connected wallets are read on Base and Solana; every outgoing USDC payment is matched to a receipt. What doesn't match is an exception, not an average.
- Prove — each night, the account's whole receipt log is hashed into one RFC 9162 Merkle tree and its root is written to the Hedera Consensus Service, linked to the previous day's root. Every receipt has a public verification page that redoes the maths in the browser.
- Report — the owner signs in with the wallet: spend by supplier, the register, CSV and signed JSON export.
Guide: https://x402receipts.com/guide.html · Status: https://app.x402receipts.com/status · Contact: [email protected]
MIT licensed.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.