L402 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.
| L402 L402 | Machine Payments Protocol MPP | |
|---|---|---|
| Lifecycle step | 7 Pay: Settle the bill | 7 Pay: Settle the bill |
| Answers | How can a client pay for, and then authenticate to, a metered API resource over the Lightning Network with no accounts or database-backed sessions? | 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 | Lightning Labs | 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) | Active, registered as an HTTP Authentication scheme (RFC 7235-style) | Open protocol; developer docs distinguish the normative IETF specification from the mpp.dev developer-friendly overview |
| Phase | living | review |
| Version | current protocol-specification.md on the master branch | draft-httpauth-payment-01 (2026-09-09) |
| Form / transport | HTTP header | HTTP header |
| Found at | none — signalled per-request, no well-known file | none — signalled per-request, no well-known file |
| Adoption | unmeasured | unmeasured |
| Evidence | 2 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://raw.githubusercontent.com/lightninglabs/L402/master/protocol-specification.md | https://datatracker.ietf.org/doc/html/draft-httpauth-payment-01 |
When to use which
- Choose L402 when your question is “How can a client pay for, and then authenticate to, a metered API resource over the Lightning Network with no accounts or database-backed sessions?” and you accept its maturity: phase living, adoption unmeasured.
- 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.
Read the full articles
- L402: How can a client pay for, and then authenticate to, a metered API resource over the Lightning Network with no accounts or database-backed sessions?
- Machine Payments Protocol: How can a machine client (an agent, script, or another server) pay for an HTTP resource using any payment network, not just one?