Overview
Three payment protocols let AI agents pay for API access. Each has different trade-offs:
| | x402 | MPP | L402 |
|---|---|---|---|
| Network | Base (Ethereum L2) | Tempo | Bitcoin Lightning |
| Currency | USDC | pathUSD | BTC (satoshis) |
| Speed | ~2 seconds | Sub-second | Milliseconds |
| Fees | Low (L2 gas) | Very low | Very low |
| SDK | @coinbase/x402-express | mppx | Custom (LND/CLN) |
| Facilitator | Coinbase | Tempo network | Lightning node |
| Stablecoin | Yes (USDC) | Yes (pathUSD) | No (BTC volatility) |
When to use x402
Best for: Production services that want the broadest ecosystem support.
- Backed by Coinbase with official SDKs in TypeScript, Go, and Python
- USDC stablecoin means predictable pricing
- Base L2 keeps gas fees low
- Largest growing ecosystem of x402-enabled services
- Includes Bazaar discovery for service catalogs
When to use MPP
Best for: High-frequency micropayments where speed matters.
- Sub-second finality on the Tempo chain
- Designed specifically for machine-to-machine payments
- pathUSD stablecoin (1:1 with USD)
- Simple SDK (mppx) with Express middleware
- Lowest overhead per transaction
When to use L402
Best for: Bitcoin-native services and Lightning ecosystem integration.
- Instant settlement via Lightning Network
- No stablecoin — payments in satoshis (BTC)
- Macaroon-based auth tokens enable flexible access control
- Established ecosystem (since 2020, originally "LSAT")
- Requires running or connecting to a Lightning node
Can I support multiple protocols?
Yes. agentgrade checks for all three independently. Supporting multiple protocols gives agents more payment options. The agent chooses which to use based on what wallets/funds it has available.
Publish all supported protocols in your /.well-known/x402.json service catalog so agents can discover them.
Which should I start with?
If you're unsure, start with x402. It has the most complete SDK, Coinbase backing, and stablecoin pricing. Add MPP or L402 later if your use case benefits from their specific strengths.