# x402 vs Machine Payments Protocol

Both belong to the HTTP 402 family group on this map. The map lists them as complementary: sites and agents commonly implement both.

[7 Pay](/category/pay/) [x402](/protocols/x402/) · [7 Pay](/category/pay/) [Machine Payments Protocol](/protocols/mpp/)

|  | [x402](/protocols/x402/) | [Machine Payments Protocol](/protocols/mpp/) MPP |
| --- | --- | --- |
| Lifecycle step | 7 Pay: Settle the bill | 7 Pay: Settle the bill |
| Answers | How can an HTTP client pay per-request or per-resource, in stablecoins, without accounts, API keys, or signup? | How can a machine client (an agent, script, or another server) pay for an HTTP resource using any payment network, not just one? |
| Governed by | x402 Foundation, a Series of LF Projects, LLC (Linux Foundation); operational launch announced 2026-07-14; Executive Director Michael Hursta from 2026-10-01; 50+ members | Co-authored by Tempo and Stripe; the core specification (the abstract 402/Challenge/Credential/Receipt shape) is submitted to the IETF standards track as the Payment HTTP Authentication Scheme, while individual payment methods (Tempo, EVM, Stripe Card, Lightning, Solana, Stellar, Monad, NEAR Intents, RedotPay) are maintained separately from the core, to keep the core neutral to any one rail |
| Status (issuer's words) | Open, neutral standard for internet-native payments | Open protocol; developer docs distinguish the normative IETF specification from the mpp.dev developer-friendly overview |
| Phase | living | review |
| Version | x402 protocol specification v2, transports-v2/http.md | draft-httpauth-payment-01 (2026-09-09) |
| Form / transport | HTTP header | HTTP header |
| Found at | none — signalled per-request via the 402 status code, not a fixed well-known path | none — signalled per-request, no well-known file |
| Adoption | claimed — x402 Foundation (x402.org live dashboard) | unmeasured |
| Evidence | 5 verified | 5 verified |
| Primary use case | Accept payments from agents | Accept payments from agents |
| Last verified | 2026-10-19 (current) | 2026-10-19 (current) |
| Specification | [https://github.com/x402-foundation/x402/blob/main/specs/transports-v2/http.md](https://github.com/x402-foundation/x402/blob/main/specs/transports-v2/http.md) | [https://datatracker.ietf.org/doc/html/draft-httpauth-payment-01](https://datatracker.ietf.org/doc/html/draft-httpauth-payment-01) |

## When to use which

- Choose x402 when your question is “How can an HTTP client pay per-request or per-resource, in stablecoins, without accounts, API keys, or signup?” and you accept its maturity: phase living, adoption claimed (x402 Foundation (x402.org live dashboard)).
- Choose Machine Payments Protocol when your question is “How can a machine client (an agent, script, or another server) pay for an HTTP resource using any payment network, not just one?” and you accept its maturity: phase review, adoption unmeasured.

Guidance is derived from the two records (question, phase, adoption, prerequisites, pairings), not from opinion. Each record's page carries its numbered references.

## Read the full articles

- [x402](/protocols/x402/): How can an HTTP client pay per-request or per-resource, in stablecoins, without accounts, API keys, or signup?
- [Machine Payments Protocol](/protocols/mpp/): How can a machine client (an agent, script, or another server) pay for an HTTP resource using any payment network, not just one?

Ask the MCP server to compare any two: the compare-protocols prompt, or get on both ids. [Connect](/connect/).

[x402.json](/data/protocols/x402.json) · [mpp.json](/data/protocols/mpp.json) · [Markdown](/compare/x402-vs-mpp/index.md)
