Skip to content
Back to skills

Mpp Tempo Method

ASecurity

Configure Tempo blockchain as an MPP payment method — USDC stablecoin payments with sub-second finality, 100,000+ TPS, and no gas volatility. Use when setting up crypto-native payment rails for machine payments.

  • 39 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added May 29, 2026
ai-agentsjavascripttypescriptjavarailsgitapibackenddocumentation

Works with

  • cli
  • api

Security analysis

A100/100

Scanned May 29, 2026

npx -y skills add OrcaQubits/agentic-commerce-skills-plugins --skill mpp-tempo-method --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Mpp Tempo Method?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Mpp Tempo Method
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/orcaqubits-mpp-tempo-method/badge)](https://www.skillsdirectory.com/skills/orcaqubits-mpp-tempo-method)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: mpp-tempo-method
description: >
  Configure Tempo blockchain as an MPP payment method — USDC stablecoin
  payments with sub-second finality, 100,000+ TPS, and no gas volatility. Use
  when setting up crypto-native payment rails for machine payments.
---

# MPP Tempo Payment Method

## Before writing code

**Fetch live docs**:
1. Fetch `https://docs.stripe.com/payments/machine/mpp` for Stripe's Tempo integration guide
2. Web-search `tempo blockchain usdc machine payments mpp` for current Tempo chain details
3. Web-search `site:github.com stripe-samples machine-payments tempo` for Tempo payment sample code
4. Fetch `https://mpp.dev/overview` for the Tempo payment method specification

## Conceptual Architecture

### What Tempo Is

Tempo 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.

### Key Properties

| 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 |

### Server-Side Configuration

```typescript
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,
    }),
  ],
});
```

### Payment Flow (Tempo)

1. Server returns 402 with Tempo-specific challenge (includes deposit address)
2. Client sends USDC on Tempo chain to the deposit address
3. Transaction confirms in sub-second
4. Client constructs credential with on-chain proof (tx hash)
5. Server verifies the on-chain transaction
6. Server returns resource with receipt

### Stripe Integration for Tempo

When using Stripe as the merchant backend, Tempo payments land directly in your Stripe balance:

```javascript
// 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`.

### Stripe Settlement Properties

- Payments land in your Stripe balance in fiat
- Standard Stripe metrics, reporting, and multi-currency payouts apply
- Individual charges can be as low as 0.01 USDC
- Stripe uses a unique deposit address per payment for privacy
- Refunds return stablecoins to the originating wallet

### Geographic Availability

Available to developers with a **US legal entity** in all states **except** New York and Texas.

### Tempo vs Other Chains

| 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 |

### Best Practices

- Use environment variables for recipient address and private keys
- Monitor wallet balances for receiving addresses
- Implement refund logic using the Stripe Refunds API
- Set up Stripe webhook listeners for `payment_intent.succeeded` events
- Consider multi-chain support (Tempo + Stripe SPT) for maximum client compatibility

Fetch the latest Stripe machine payments docs and Tempo blockchain documentation for current contract addresses, API versions, and chain configuration before implementing.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…