From stripe-mpp
Configures Tempo blockchain as MPP payment method for USDC with sub-second finality and 100k+ TPS. Supports MPpx TypeScript setup or Stripe integration for machine payments.
npx claudepluginhub orcaqubits/agentic-commerce-skills-plugins --plugin stripe-mppThis skill is limited to using the following tools:
**Fetch live docs**:
Guides Payload CMS config (payload.config.ts), collections, fields, hooks, access control, APIs. Debugs validation errors, security, relationships, queries, transactions, hook behavior.
Acquire memory dumps from live systems/VMs and analyze with Volatility 3 for processes, networks, DLLs, injections in incident response or malware hunts.
Provides x86-64/ARM disassembly patterns, calling conventions, control flow recognition for static analysis of executables and compiled binaries.
Fetch live docs:
https://docs.stripe.com/payments/machine/mpp for Stripe's Tempo integration guidetempo blockchain usdc machine payments mpp for current Tempo chain detailssite:github.com stripe-samples machine-payments tempo for Tempo payment sample codehttps://mpp.dev/overview for the Tempo payment method specificationTempo is a purpose-built blockchain for stablecoin payments and high-frequency transactions, incubated by Stripe and Paradigm. It is the primary crypto payment rail for MPP.
| Property | Value |
|---|---|
| Chain ID | 4217 (mainnet) |
| Throughput | 100,000+ TPS |
| Finality | Sub-second |
| Gas model | No native gas token (predictable fees, no gas volatility) |
| Currency | USDC |
| USDC Contract | 0x20c000000000000000000000b9537d11c60e8b50 |
| Minimum charge | 0.01 USDC |
import { Mppx, tempo } from 'mppx/server';
const mppx = Mppx.create({
secretKey: process.env.MPP_SECRET_KEY,
methods: [
tempo.charge({
chainId: 4217, // Tempo mainnet
currency: '0x20C000000000000000000000b9537d11c60E8b50', // USDC
recipient: process.env.TEMPO_RECIPIENT_ADDRESS,
}),
],
});
When using Stripe as the merchant backend, Tempo payments land directly in your Stripe balance:
// Stripe PaymentIntent for crypto (requires preview API version)
const paymentIntent = await stripe.paymentIntents.create({
amount: 1,
currency: 'usd',
payment_method_types: ['crypto'],
payment_method_options: {
crypto: {
mode: 'deposit',
deposit_options: {
network: ['tempo']
}
}
}
}, {
apiVersion: '2026-03-04.preview' // Required preview version
});
The response includes next_action.crypto_display_details.deposit_addresses.tempo.address.
Available to developers with a US legal entity in all states except New York and Texas.
| Property | Tempo | Base (x402) | Solana (x402) |
|---|---|---|---|
| Protocol | MPP | x402 | x402 |
| Finality | Sub-second | ~2 seconds | ~400ms |
| Gas model | No gas token | ETH gas | SOL gas |
| Stripe integration | Native | Via facilitator | Via facilitator |
| Sessions | Yes | No | No |
payment_intent.succeeded eventsFetch the latest Stripe machine payments docs and Tempo blockchain documentation for current contract addresses, API versions, and chain configuration before implementing.