Skip to content
LogoLogo

MPP vs x402

How the two HTTP 402 payment protocols compare

MPP and x402 both use HTTP 402 Payment Required to charge for API requests. x402 focuses on on-chain payment mechanisms. MPP defines a payment-method-agnostic HTTP authentication framework for stablecoins, cards, Lightning, and other payment rails.

You can run both protocols on the same endpoint with mppx, so adopting MPP doesn't require you to exclude x402 clients.

Quick answer

Choose MPP by default when you need multiple payment rails, standard HTTP authentication semantics, or a protocol-level model for one-time and session payments.

Choose x402 when your service exclusively needs on-chain payments and its registered schemes match your billing model.

Side-by-side comparison

x402MPP
Core modelOn-chain payment schemes attached to requestsPayment authentication framework for machine-to-machine payments
HTTP status402 Payment Required402 Payment Required
Challenge headerPAYMENT-REQUIREDWWW-Authenticate: Payment
Credential headerPAYMENT-SIGNATUREAuthorization: Payment, or an advertised alternate field
Receipt headerPAYMENT-RESPONSEPayment-Receipt
Payment railsRegistered blockchain network mechanismsStablecoins, cards, Lightning, and custom methods
Usage-based billingupto and EVM batch-settlement schemesPayment-method intents, including session
Request bindingDepends on the scheme and extensionsCore Challenge binding and request digest support
IdempotencyOptional Payment Identifier extensionChallenge identity plus standard Idempotency-Key guidance
Error modelProtocol-specific responsesRFC 9457 Problem Details
Standards pathx402 Foundation specificationPayment HTTP Authentication Scheme submitted to the IETF

The biggest difference

The most important distinction is scope. x402 registers payment schemes for blockchain networks. MPP standardizes how any payment method negotiates a payment through HTTP authentication.

MPP supports the broader model most teams actually need. An MPP Challenge can describe:

  • multiple payment methods on the same endpoint
  • one-time or session-based payment intents
  • expiration and idempotency constraints
  • request binding so the payment is tied to the exact request

That makes MPP the recommended choice for APIs and agents that need to evolve beyond one payment rail. It also lets HTTP infrastructure handle payment Credentials through the same authentication fields it already understands.

Payment methods

x402 focuses on on-chain payments across registered networks and schemes. That's useful when your clients already have compatible wallets and your service wants blockchain settlement.

MPP keeps the same stablecoin path, but it also supports non-stablecoin methods. A single endpoint can advertise:

This matters if you want to serve agents and human-operated apps, or if you don't want your API monetization strategy tied to blockchain settlement.

Sessions and micropayments

x402 supports fixed-price exact, usage-based upto, and EVM batch-settlement schemes. Batch settlement funds a channel and uses off-chain vouchers for repeated requests. See the x402 payment schemes.

MPP defines session billing as a payment intent within the same Challenge–Credential–Receipt framework used by other payment methods. A client funds a session, sends signed off-chain vouchers per request, and lets the server settle the net result later. That makes micropayments, streaming APIs, and token-metered usage practical without changing the HTTP authentication model.

Use MPP when you want one client and server interface across session and one-time payments or across different payment rails. Use x402 batch settlement when its supported EVM networks and on-chain model match your deployment.

Compatibility

MPP is compatible with existing x402-style charge flows.

The x402 "exact" model maps cleanly onto MPP's charge intent. With mppx, you can run x402-compatible EVM charges inline with an MPP route: the server emits both MPP and x402 Challenges, accepts either Credential format, and returns the matching Receipt header.

For a working inline server setup, see Use MPP with x402.

Which one should you choose?

Choose MPP if:

  • you are building a production API
  • you want multiple payment methods on one endpoint
  • you need sessions, streaming, or micropayments
  • you want standard WWW-Authenticate / Authorization semantics
  • you want one HTTP authentication model across payment rails and intents

Choose x402 if:

  • you exclusively want on-chain payments
  • your clients use x402-compatible wallets and schemes
  • exact, upto, or EVM batch-settlement matches your billing model
  • you want to use the x402 facilitator and extension ecosystem directly

Next steps