Protocol

MPP

Machine Payments Protocol

The MPP challenge itself carries the ATR hash: its id is derived from it, so whatever the payer signs over the challenge commits to it. Source: lcp docs: MPP⁠ (opens in a new tab)

MPP, the Machine Payments Protocol, is a Tempo Labs and Stripe project. Source: LCP §C.1⁠ (opens in a new tab) Integra is not affiliated; we read their published interfaces.

Sources (1)

lcp docs: MPP⁠ (opens in a new tab)

What it is

MPP carries payment in HTTP authentication: the seller answers with WWW-Authenticate: Payment challenges, each naming a method (such as evm, tempo, solana or stripe) and an intent (charge, session or subscription), and the buyer answers with a credential that echoes the challenge it pays. Source: lcp docs: MPP⁠ (opens in a new tab)

Its core scheme is an individual submission to the IETF, not a working-group document, with per-method specifications for Card, EVM, Hedera, Lightning, NEAR Intents, Solana, Stellar, Stripe, Tempo and USDC. Source: LCP §C.1⁠ (opens in a new tab)

Sources (2)

lcp docs: MPP⁠ (opens in a new tab) · LCP §C.1⁠ (opens in a new tab)

Where the ATR hash rides

The seller’s payment challenge is named after the ATR hash, so whatever the payer signs in answer commits to it.

What a payment through it proves

Each pairing’s record states what a payment through it shows, and what it does not, in the package’s own words. These are read from the package when the site is built. Source: lcp docs: pairings reference⁠ (opens in a new tab)

Of these 26 pairings, 13 have the buyer’s signature cover the ATR hash, 18 leave a public proof of it, and 7 let anyone read it back from the chain alone. Source: lcp docs: pairings reference⁠ (opens in a new tab)

Switch to Technical to see each pairing, and the sentence its record states about what a payment through it proves.

Sources (1)

lcp docs: pairings reference⁠ (opens in a new tab)

The live demonstrations are not running on this site at the moment.