Sui payments
for MPP.
Accept USDC on any API. 5 lines of code.
Your AI agent pays automatically.
Accept payments. 5 lines.
No webhooks. No Stripe dashboard. No KYC. Your API returns 402 — the agent pays — content delivered.
import { sui } from '@t2000/mpp-sui/server'; import { Mppx } from 'mppx'; const mppx = Mppx.create({ methods: [sui({ currency: SUI_USDC, recipient: '0xYOUR_ADDRESS' })] }); export const GET = mppx.charge({ amount: '0.01' })( () => Response.json({ data: 'paid content' }) );
import { T2000 } from '@t2000/sdk'; const agent = new T2000(); const result = await agent.pay({ url: 'https://mpp.t2000.ai/openai/v1/chat/completions', body: { model: 'gpt-4o', ... }, maxPrice: 0.05 }); // If the API returns 402, agent pays automatically. // USDC transferred on Sui. Content returned.
Your agent pays.
No API keys. No credit cards. Just money. The agent pays from its Sui USDC balance — automatically.
You: "Ask GPT-4o to summarize this PDF" Claude: "Done. Paid $0.01 USDC from your t2000 balance. Here's the summary."
The 402 flow. 4 steps.
Like a browser discovering a paywall — but for machines. No pre-registration. No API keys. Just HTTP.
Agent requests a resource
Any HTTP request — GET, POST, whatever. The agent doesn't know if it costs money yet.
POST https://mpp.t2000.ai/openai/v1/chat/completionsAPI returns 402 Payment Required
The MPP challenge tells the client exactly what to pay: amount, currency, recipient.
402 → { amount: '0.01', currency: 'USDC', recipient: '0x...' }Agent pays on Sui
The mppx client builds a USDC transfer, signs it with the agent's keypair, and broadcasts to Sui.
build USDC transfer → sign → broadcast → finalized in ~400msAgent retries with proof
The credential (Sui transaction digest) is sent back. Server verifies on-chain, delivers content.
POST /v1/chat/completions + x-payment-credential: { digest: '...' } → 200 OKCLI, SDK, or AI.
Pay for APIs from the terminal, your code, or through natural conversation with Claude.
❯ t2000 pay \ mpp.t2000.ai/openai/v1/chat/completions \ --max-price 0.05 ✓ Paid $0.01 USDC tx: 7xK2m...9fQ3 → 200 OK (1.2s)
const result = await agent.pay({ url, body, maxPrice: 0.05 }); // Handles 402 → pay → retry // automatically.
You: "Ask GPT-4o what it thinks about Sui" Claude: → calls t2000_pay → pays $0.03 USDC → returns image
Built for machines.
MPP is chain-agnostic. We chose Sui because agent payments need speed, low cost, and finality.
Not a proprietary protocol. A standard.
MPP is an open standard by Stripe and Tempo Labs. @t2000/mpp-sui is one payment method. Any MPP client can pay any MPP server.
Accept Sui payments.
Today.
Open source. No intermediary. Built on Sui.
npm install @t2000/mpp-sui