MPP (Machine Payments Protocol)
MPP is an open payment protocol co-authored by Stripe and Tempo, now on the IETF standardization track. It extends HTTP 402 with standard authentication headers and supports multiple payment methods — stablecoins, fiat cards, Lightning, and more.
MPP is backwards-compatible with x402. Tollbooth’s mpp settlement strategy lets you accept payments from both x402 and MPP clients through the same gateway.
Why MPP
Section titled “Why MPP”- Multiple payment methods — accept USDC stablecoins and Stripe card payments through one config
- Standard headers — uses
WWW-Authenticate/Authorization/Payment-Receiptinstead of custom headers - 50+ integrations — growing ecosystem of MPP-compatible agents and services
- IETF track — on the path to becoming an internet standard
Configuration
Section titled “Configuration”settlement: strategy: mpp methods: - type: tempo # stablecoins via x402 facilitator - type: stripe # fiat card payments via Stripe secretKey: "${STRIPE_SECRET_KEY}"Each method in the methods array adds a payment option. Clients pick whichever method they support.
Tempo method
Section titled “Tempo method”Wraps the existing x402 facilitator for stablecoin payments. This is the same verify/settle flow as the default facilitator strategy, but advertised via MPP headers.
settlement: strategy: mpp methods: - type: tempoNo additional config needed — it uses the same facilitator URL resolution (global facilitator field, per-route overrides, etc.).
Stripe method
Section titled “Stripe method”Accepts fiat card payments via Stripe’s Shared Payment Tokens (SPT). Agents with a Stripe payment method can pay without crypto.
settlement: strategy: mpp methods: - type: stripe secretKey: "${STRIPE_SECRET_KEY}"The gateway creates a Stripe PaymentIntent for each challenge, and the client confirms it with their SPT credential.
How it works
Section titled “How it works”Payment flow
Section titled “Payment flow”Agent Tollbooth Facilitator / Stripe | | | | GET /weather | | |─────────────────────────>| | | | | | 402 Payment Required | | | + payment-required | (x402 header) | | + WWW-Authenticate: | (MPP header, one per method) | | Payment method="tempo"| | | Payment method="stripe"| | |<─────────────────────────| | | | | | (agent picks a method | | | and creates credential)| | | | | | GET /weather | | | + Authorization: | | | Payment id=".." | | | payload=".." | | |─────────────────────────>| | | | verify + settle | | |─────────────────────────────>| | | settlement info | | |<─────────────────────────────| | | | | 200 OK | | | + payment-response | (x402 receipt) | | + Payment-Receipt | (MPP receipt) | |<─────────────────────────| |Header formats
Section titled “Header formats”Challenge (402 response):
WWW-Authenticate: Payment id="abc", method="tempo", intent="charge", amount="0.01", currency="usd", decimals=6, description="GET /weather", request="<base64url-encoded-json>"Credential (request):
Authorization: Payment id="abc", payload="<base64url-encoded-json>"Receipt (success response):
Payment-Receipt: id="abc", receipt="<base64url-encoded-json>"Backward compatibility
Section titled “Backward compatibility”When using the mpp strategy, tollbooth always returns both x402 and MPP headers:
- 402 responses include both
payment-requiredandWWW-Authenticate: Payment - Success responses include both
payment-responseandPayment-Receipt - Incoming requests are accepted with either
payment-signature(x402) orAuthorization: Payment(MPP)
This means existing x402 clients continue to work unchanged.
Comparison with other strategies
Section titled “Comparison with other strategies”| Strategy | Payment methods | Headers | Best for |
|---|---|---|---|
facilitator | USDC stablecoins | x402 only | Simple x402 setups |
nanopayments | USDC (batched) | x402 only | Sub-cent micropayments |
mpp | Stablecoins + fiat cards | x402 + MPP | Universal agent payments |
| Custom | Anything | x402 only | Specialized logic |
Learn more
Section titled “Learn more”- MPP specification
- Stripe MPP documentation
- Settlement strategies — full comparison of all tollbooth settlement options