BlockPay

The payment infrastructure
for the agentic web.

402 Implements x402 Settles on Sui USDC · pay per call
BlockPay
1 — The problem

Software can call any API.
Paying for one is another story.

AI agentneeds 1 data point
1Create an accountemail · password
2Verify emailwait for the inbox
3Get an API keya human provisions it
4Add a credit cardbilling · KYC
5Pick a monthly plan$99 / month
$0.002/v1/market-data
Built for humans
filling in forms
0steps before 1st call
—time to first call
$0minimum spend
$0.002what it actually needed
Software needs to buy one thing, right now — and move on.
BlockPay
2 — The missing status code

HTTP reserved 402 in 1997.

BlockPay makes it settle.

402402402
Payment Required
Reserved for future use
Settled on Sui ✓
1997HTTP/1.1 reserves 402 Payment Required — “for future use”.
2025x402 turns 402 into an open payment handshake over HTTP.
NowBlockPay settles it on Sui — inside the request.
BlockPay
3 — What is BlockPay

Payment infrastructure for software that pays.

Put a price on any HTTP endpoint. Agents, machines and people pay per call in USDC — verified before your handler runs, settled on Sui before your response goes out.

/01

SDKs

Middleware that prices any route, and clients that pay automatically within caps you set.

@blockpay402/*
/02

Facilitator

Verifies every payment and settles it on Sui. Sponsors gas. Never holds funds.

/verify · /settle · /supported
/03

Move contract

Payment channels for prices too small to settle one transaction at a time.

blockpay::channel
/04

Platform

Merchant dashboard: API keys, payment ledger, analytics, redemption, webhooks.

app.blockpay.gg
x402 v2 sui:mainnet Native USDC Open source · Apache-2.0
BlockPay
4 — How it works

One HTTP round trip. Quoted, signed, settled.

TRACE agent · research-07 pending
402 PAYMENT-REQUIRED (decoded)
"scheme": "exact",
"network": "sui:mainnet",
"amount": "10000", // 0.01 USDC
"payTo": "0x9c4e…a71f",
"extra": { "gasless": true }
0.01USDC paid
0 msend-to-end
0gas for caller
BlockPay
5 — Trust model

Three ideas. Nobody in between your money.

HTTP/1.1 402 Payment Required
"scheme": "exact"
"network": "sui:mainnet"
"amount": "10000"
"asset": "…::usdc::USDC"
"payTo": "0x9c4e…a71f"
402

The response is the quote.

Price, asset, network and recipient travel in the 402. Callers know the exact cost before they sign.

transfer0.01 USDC
to0x9c4e…a71f
facilitator can broadcast · never change
PAYMENT-SIGNATURE

The signature is the authorization.

The caller signs exactly what it was quoted. No stored cards, no standing mandates, no chargebacks.

Sui transaction
final · <1s
digest7f3a…c21e
from0x123…be04
to0x9c4e…a71f
+0.01 USDC
TX DIGEST

The chain is the receipt.

Every payment ends as a balance change on Sui that anyone can verify.

BlockPay
6 — Integrate

One middleware between your route and revenue.

server.tsresource server
ExpressNext.jsHonoany Fetch runtime handler fails → nobody pays
client.tsagent · bot · app
terminalx402 · sui
BlockPay
7 — Sub-cent pricing

Charge $0.0001 per call.

Payment channels: deposit once, then pay each request with a signed voucher — verified in ~10 ms, settled on Sui in batches.

Client / agent
voucher key · ed25519
one per channel
signing vouchers…
off-chain vouchers · Σ running total
Your API
+ facilitator · checks the voucher
no chain access per call
verified in —
$
claim ×1 tx
calls 0 paid 0.0000 USDC per call $0.0001 on-chain txs 0
Sui
blockpay::channel
escrow · payer can always exit
0.0000 USDC locked
redeemer → claim(channel, Σ, sig)
one transaction · many calls
Merchant
0x9c4e…a71f
+0.0000
BlockPay
8 — Built for AI agents

Agents buy their own inputs —
within budgets they can’t talk around.

agent.ts@blockpay402/agent
session agent-7f3a spent 0.0000 / 0.10 USDC
11:02:41.204GET /v1/search0.0010✓ 14 ms
11:02:41.633GET /v1/inference0.0020✓ 13 ms
11:02:42.019GET /v1/geo/tiles0.0005✓ 11 ms
11:02:42.877GET /v1/filings/10-k0.0040✓ 12 ms
11:02:43.310GET data.newhost.ai/feednew host · above soft threshold → ask human0.0200approve?
11:02:44.052GET /v1/premium/reportPaymentCapExceededError · nothing signed0.5000✗ blocked
0.0275USDC spent
5paid calls
1blocked by cap
6audit records
BlockPay
9 — Why BlockPay

Infrastructure, not a checkout.

/01
<1s

Sub-second, gasless

USDC finalizes on Sui inside the request. Callers never need SUI for gas.

/02
$0.0001

Sub-cent pricing

One deposit, vouchers in milliseconds, settled in batches.

/03
0funds held by the facilitator

Non-custodial

Money moves only on a payment the client signed — straight to your address.

/04
1middleware · no caller accounts or keys

One middleware

Wrap any HTTP route with a price. Express, Next.js, Hono or any Fetch runtime.

/05

Parallel by default

Sui runs independent payments in parallel — throughput grows with your traffic.

/06
0%revenue share · flat fee per payment

Fees you can quote

Callers pay exactly the quoted price. You pay a flat fee from prepaid credit.

Why Sui gasless USDC address balances sub-second finality native USDC by Circle Move contracts
BlockPay
10 — Use cases

If it speaks HTTP, it can pay per request.

402pay per request
BlockPay
11 — Platform

Hosted for you. Open source if you’d rather not.

Sign in with your Sui walletThe address you get paid to. No email, no password.
Every payment, in real timePayers, top endpoints, CSV export.
Keys, webhooks, redemptionOne-click channel redeem. Prepaid credit, flat fee.
Or run it yourselfOpen-source facilitator. Same flows, your infrastructure.
facilitator.blockpay.gg · x402 v2
app.blockpay.gg/overview
Overview live
Volume (USDC)0
Paid calls0
Unique payers0
Awaiting redemption0
paid calls · last 30 days
endpointpayerschemestatusamount
12 — Get started

Put a price on your
first endpoint.

One middleware and a Sui address. Have a paid route answering 402s today.

$
Implements x402 · Settles on Sui
↓ / scroll — next slide · I — index · H — controls

Controls

scroll ↓ SpaceNext slide
↑ PgUpPrevious slide
ISlide index
RReplay the current slide
PAutoplay from here (toggle)
ARestart from the cover and autoplay the whole deck
FFullscreen
Home EndFirst / last slide · URL #3 opens slide 3
H EscClose this panel