v0.1 · draft// MACHINE PAYMENTS PROTOCOL · ON SUI

An open standard for
agent-to-service payments.

When a server returns 402, the client pays in USDC and retries — no keys, no accounts, no subscriptions. suimpp is the Sui scheme for x402: standard exact on network sui:mainnet, settled gasless.

mpp · 402 flowEXAMPLE
$ curl -X POST https://mpp.t2000.ai/openai/v1/chat/completions \
  -d '{"model":"gpt-4o","messages":[{"role":"user","content":"hi"}]}'

HTTP/1.1 402 Payment Required
WWW-Authenticate: Payment id="a1b2…", realm="mpp.t2000.ai", method="sui", intent="charge"
  request="eyJhbW91bnQiOiIwLjAxMiI…"

── agent signs PTB · transfers 0.012 USDC on Sui · gasless ──

 digest Hp4oHHs… verified · 380ms
HTTP/1.1 200 OK
Payment-Receipt: eyJtZXRob2QiOiJzdWki…
{"choices":[{"message":{"content":"Hello!"}}]}
// THE PROTOCOL

Three rules.

01

HTTP 402.

402 Payment Required. The server names the price, recipient, and currency in one header.

02

USDC on Sui. Gasless.

Clients pay in USDC. The SDK handles Sui's gasless tier — no SUI needed.

03

Discoverable.

Servers advertise prices in their OpenAPI doc. Tooling validates the contract before clients call.

// PAYMENT FLOW

One round trip.

Request → 402. Pay. Retry with the digest and a grief-protection signature. 200 OK.

Agent                              Server                           Sui
  │                                   │                              │
  │── POST /api/resource ────────────>│                              │
  │                                   │                              │
  │<── 402 Payment Required ─────────│                              │
  │    WWW-Authenticate: Payment      │                              │
  │      method="sui"                 │                              │
  │      request="<base64>"           │                              │
  │                                   │                              │
  │   ┌─ Build PTB: split + transfer USDC ─────────────────────────>│
  │   └─ TX confirmed ←──────────────────────────────────────────────│
  │      digest: "Hp4oHHs..."        │                              │
  │                                   │                              │
  │── Retry + Authorization ────────>│                              │
  │   Payment <base64({              │                              │
  │     challenge, payload: {        │                              │
  │       digest, signature           │                              │
  │     }})>                          │                              │
  │                                   │── getTransaction(digest) ──>│
  │                                   │   verify: success,           │
  │                                   │   recipient + amount match,  │
  │                                   │   signature → sender         │
  │                                   │                              │
  │<── 200 OK + Payment-Receipt ─────│                              │

Full normative details in the spec.

// PACKAGES

The reference implementation.

// IMPLEMENTATIONS

Built on suimpp.

Known surfaces using the protocol. Building one? Open an issue.

mpp.t2000.ai
A live x402 gateway — every major AI + data API, pay-per-request in USDC.
GATEWAYOpen ↗
@t2000/cli
The t2000 Agent Wallet — a CLI client that pays x402 endpoints.
CLIENTOpen ↗
Audric
Private, decentralized AI — pays over x402 through the t2000 SDK.
CONSUMEROpen ↗