Bán API của bạn cho các AI agents.
Các tác nhân AI không thể điền vào mẫu thẻ tín dụng. Họ có thể thanh toán cho bạn bằng USDC. Blockchain0x thực hiện cuộc gọi API đó.
API của bạn được thiết kế cho con người. Các người gọi của bạn giờ đây là các tác nhân.
Thập kỷ tới của doanh thu API sẽ không đến từ việc đăng ký của con người. Nó sẽ đến từ các tác nhân AI gọi API thay mặt cho người dùng của họ, thường là lập trình và không có bất kỳ con người nào trong quy trình. Những tác nhân đó không thể sử dụng quy trình thanh toán hiện tại của bạn. Họ không thể điền vào mẫu thẻ tín dụng, không thể tạo tài khoản, không thể nhấp vào email xác nhận, không thể nhớ mật khẩu.
Những gì họ có thể làm là đọc phản hồi 402 Payment Required, phân tích số lượng USDC và người nhận từ thân JSON, thanh toán trên Base, và phát hành lại cuộc gọi với bằng chứng thanh toán. Đó là toàn bộ hình dạng của thương mại API do đại lý điều khiển. Mô hình chi phí (thanh toán theo cuộc gọi trong stablecoin) cũng phù hợp với hình dạng sử dụng của đại lý tốt hơn nhiều so với các đăng ký dựa trên thẻ: thẻ thất bại ở các giao dịch dưới 1 đô la; USDC trên Base có chi phí vài xu cho gas; việc hoàn tiền không xảy ra giữa các máy.
Blockchain0x là cầu nối. Liệt kê các tuyến đường bạn muốn tính phí trong bảng giá và gắn bộ chuyển đổi x402. Khi một cuộc gọi chưa thanh toán chạm vào một tuyến đường có giá, bộ chuyển đổi trả về mã 402 mô tả chính xác những gì cần thanh toán. Tác nhân thanh toán trên Base và thử lại với tiêu đề X-Payment; bộ chuyển đổi xác minh nó và trình xử lý của bạn chạy. Bạn thu thập USDC và chạy API của bạn như trước. Không có gì về logic kinh doanh của bạn thay đổi; lớp thanh toán đi kèm.
Mã trạng thái HTTP cuối cùng cũng có một ứng dụng.
HTTP 402 was reserved in the original spec for "future use" and never standardized. For thirty years it sat unused while the internet built per-account subscription billing on top of 200/401/403. With Coinbase's x402 protocol, 402 finally has a standard implementation: any API that needs payment-before-it-runs can return a structured 402, and any client that understands the spec can pay and retry.
HTTP/1.1 402 Payment Required
Content-Type: application/json
{
"resource": "POST /api/expensive-operation",
"accepts": [
{
"scheme": "exact-usdc",
"network": "mainnet",
"chainId": "eip155:8453",
"payToAddress": "0xYourAgentWalletAddress",
"amountWeiUsdc": "500000",
"paymentRequestId": "pr_demo",
"maxAgeSeconds": 60
}
]
}Ý nghĩa của yêu cầu accepts[] là gì
- scheme - sơ đồ thanh toán. exact-usdc có nghĩa là một số tiền USDC chính xác trên một chuỗi EVM. Khách hàng khớp với điều này trước khi thanh toán.
- network / chainId - chuỗi để giải quyết (mainnet là Base, CAIP-2 eip155:8453). Một cuộc di cư có thể trích dẫn cả hai mạng bằng cách liệt kê hai yêu cầu trong accepts.
- payToAddress / amountWeiUsdc - ví người nhận và số tiền chính xác bằng đơn vị cơ bản USDC (500000 = 0.50 USDC, 6 chữ số thập phân). Khách hàng xác minh cả hai trước khi thanh toán.
- paymentRequestId - liên kết thanh toán với báo giá này. Bộ chuyển đổi từ chối một X-Payment tham chiếu đến một paymentRequestId khác với tuyến đường đã trích dẫn.
- maxAgeSeconds - mức độ mới của thanh toán phải như thế nào. Một thanh toán cũ hơn khoảng thời gian này sẽ bị từ chối và người gọi phải thanh toán lại.
x402 là máy đến máy: một máy khách nhận thức x402 đọc accepts, thanh toán yêu cầu đã chọn trên chuỗi, sau đó phát hành lại yêu cầu với một tiêu đề X-Payment mà bộ chuyển đổi xác minh. Một máy khách không nói x402 chỉ nhận 402 và không nhận được kết quả nào, đó là kết quả đúng (cuộc gọi không được thanh toán). Không có trang thanh toán được lưu trữ trong quy trình này; khoản thanh toán được giải quyết lập trình bởi ví của người gọi.
Một bảng giá. Ba ngôn ngữ. Hình dạng giống nhau.
Bạn gắn một adapter và cung cấp cho nó một bảng giá được khóa theo METHOD cộng với path. Nó chỉ chặn các route bạn liệt kê; handler của bạn sẽ không bao giờ thấy một lệnh chưa thanh toán, vì khi nó chạy thì header X-Payment đã được xác minh rồi. Cấu trúc này giống hệt nhau giữa Python, TypeScript và Go - wire format của X-Payment là như nhau, nên một server Go có thể chấp nhận header được tạo bởi client Python.
from flask import Flask
from blockchain0x import Client
from blockchain0x_x402.server import x402_before_request_factory, PricingEntry
sdk = Client() # reads BLOCKCHAIN0X_API_KEY
app = Flask(__name__)
# Only routes named in the pricing table are gated.
app.before_request(x402_before_request_factory(
sdk=sdk,
pricing={
"POST /api/expensive-operation": PricingEntry(
amount_usdc="0.50",
pay_to_address="0xYourAgentWalletAddress",
payment_request_id="pr_demo",
),
},
))
@app.route("/api/expensive-operation", methods=["POST"])
def expensive_operation():
return run_the_work() # only runs after X-Payment verifiesimport express from "express";
import { createClient } from "@blockchain0x/node";
import { createX402Middleware } from "@blockchain0x/x402/server/express";
const sdk = createClient({ apiKey: process.env.BLOCKCHAIN0X_API_KEY! });
const app = express();
// Only routes named in the pricing table are gated.
app.use(createX402Middleware({
sdk,
pricing: {
"POST /api/expensive-operation": {
amountUsdc: "0.50",
payToAddress: "0xYourAgentWalletAddress",
paymentRequestId: "pr_demo",
},
},
}));
app.post("/api/expensive-operation", async (req, res) => {
res.json(await runTheWork()); // req.x402Payment holds the verified payment
});import (
"net/http"
x402 "tosh-labs/blockchain0x-x402-go"
)
func main() {
pricing := map[string]x402.PricingEntry{
"POST /api/expensive-operation": {
AmountUSDC: "0.50",
PayToAddress: "0xYourAgentWalletAddress",
PaymentRequestID: "pr_demo",
},
}
// serverSdk is your Blockchain0x Go SDK client.
h := x402.Middleware(x402.ServerOptions{Sdk: serverSdk, Pricing: pricing})(
http.HandlerFunc(expensiveOperation))
http.Handle("/api/expensive-operation", h)
http.ListenAndServe(":8080", nil)
}Chúng tôi cung cấp các bộ chuyển đổi máy chủ cho Express và Fastify (Node), ASGI (Starlette và FastAPI) và Flask (Python), và net/http của Go. Đối với các khung khác, thân 402 và tiêu đề X-Payment là HTTP đơn giản mà các trợ lý wire trong @blockchain0x/x402 xây dựng và phân tích - viết tay kiểm tra trong cách diễn đạt của ngăn xếp của bạn. Các gói x402 cho Ruby và JVM được xuất bản cho phía khách hàng.
Khi nào nên sử dụng từng công cụ.
Stripe là công cụ phù hợp cho thanh toán của con người. Blockchain0x là công cụ phù hợp cho thanh toán của đại lý. Họ giải quyết các vấn đề khác nhau và thường ngồi cạnh nhau trên cùng một API.
| Kích thước | Blockchain0x | Stripe Checkout |
|---|---|---|
| Người mua | Bất kỳ khách hàng HTTP nào (con người hoặc tác nhân AI) | Con người tại trình duyệt |
| Xác thực cần thiết trước khi thanh toán | Không - cuộc gọi đầu tiên trả về 402 với các yêu cầu thanh toán | Có - email + mẫu thẻ |
| Tốc độ thanh toán | 5 giây (USDC trên Base) | 2-7 ngày (mạng thẻ) |
| Rủi ro hoàn tiền | Không có (USDC là cuối cùng) | Tối đa 120 ngày thời gian hoàn tiền |
| Kinh tế chi phí theo giao dịch | Hoạt động với giá $0.01-$0.10 mỗi cuộc gọi (gas Base + phí của chúng tôi) | Phí thẻ làm cho các giao dịch dưới $1 trở nên không kinh tế |
| Hoàn tiền | Thủ công - mã của bạn gửi USDC trở lại địa chỉ người trả tiền | Tự động qua bảng điều khiển Stripe |
| Hỗ trợ quốc tế | Cùng một ví, bất kỳ quốc gia nào, không cần cấu hình thêm | Cấp phép theo quốc gia, chuyển đổi tiền tệ, quy tắc khu vực |
| Tốt nhất cho | Tiêu thụ API điều khiển bởi tác nhân lập trình | Thanh toán do con người điều khiển (đăng ký SaaS, thương mại điện tử) |
Mô hình mà hầu hết các nhà cung cấp API áp dụng: giữ Stripe cho quy trình đăng ký của con người (bảng điều khiển của bạn, trang sản phẩm đăng ký của bạn); thêm Blockchain0x tại rìa API để truy cập tác nhân theo chương trình. Bộ chuyển đổi x402 chỉ kiểm soát các tuyến đường mà bạn đưa vào bảng giá của nó, vì vậy các tuyến đường xác thực Stripe của con người của bạn không bị ảnh hưởng. Chỉ định các tác nhân vào các tuyến đường đã định giá và con người vào phần còn lại, và cả hai đối tượng đều được phục vụ bởi cùng một mã API.
Pro cho lưu lượng truy cập sớm. Kinh doanh khi nhật ký kiểm toán trở thành yêu cầu.
Các nhà cung cấp API hầu như luôn bắt đầu với Pro ngay từ ngày đầu tiên: Miễn phí chỉ đọc, và bộ chuyển đổi x402 cần quyền truy cập API để xác minh và giải quyết các khoản thanh toán cũng như webhook để theo dõi chúng. Các API có lưu lượng truy cập cao sẽ chuyển sang lĩnh vực Doanh nghiệp khi khối lượng hàng tháng tăng. Xem trang giá để biết chi phí chính xác theo từng đại lý và vị trí của các cấp độ.
- Free: chỉ hữu ích cho dashboard và khám phá metadata. Chỉ đọc, nên adapter không thể xử lý thanh toán.
- Pro: mặc định cho việc kiếm tiền từ API đang chạy thực tế. Toàn bộ quyền truy cập API, webhooks, xuất dữ liệu.
- Business: khi bạn cần audit logs cho tuân thủ, hoặc cần hạn mức rate API cao hơn.