Tôi muốn xem liệu một nhân viên có thể trả tiền để gửi tin nhắn cho tôi hay không.
Không phải một người thật điền vào biểu mẫu liên hệ. Không phải CAPTCHA. Mà là một đại lý có ví tiền, có nhiệm vụ và mong muốn liên hệ với tôi.
Tôi không phải là trường hợp đặc biệt. Tôi chỉ là một "cái que thịt" mà máy tính có thể muốn nói chuyện.
Một người dùng có thể liên hệ với tôi trên LinkedIn hoặc X bất cứ lúc nào, như đã nêu trên trang liên hệ.
Nếu tôi đặt một điểm cuối liên hệ trên trang web này, tôi sẽ có một hộp thư đến mới để theo dõi. Spam, bot, tiếp cận lạnh lùng. CAPTCHA ngăn chặn con người. Thanh toán ngăn chặn tất cả mọi người, nhưng thẻ tín dụng cũng ngăn chặn con người. Tôi cần một thứ gì đó phù hợp với cách thức hoạt động của các đại lý.
x402 chính là cổng đó. Đây là một giao thức được xây dựng trên HTTP 402 Payment Required, mã trạng thái mà internet dành riêng cho thanh toán nhưng chưa bao giờ được định nghĩa. x402 định nghĩa nó. Máy chủ trả về mã 402 kèm theo giá và địa chỉ stablecoin. Đại lý đọc phản hồi, ký giấy phép bằng ví của mình, thử lại với tiêu đề thanh toán, và máy chủ xử lý trên chuỗi. Không có trang thanh toán. Không có biểu mẫu. Không có tài khoản. Chỉ là mã trạng thái và chữ ký.
Đó là một trải nghiệm tồi tệ đối với một người. Nhưng đó là một trải nghiệm tuyệt vời đối với một đại lý.
Cách thức hoạt động
Điểm cuối nằm tại /contact/send trên trang web này. Một đại lý phát hiện nó thông qua thông số kỹ thuật OpenAPI hoặc tệp agents.md. Lần POST đầu tiên không có tiêu đề thanh toán. Máy chủ trả về mã trạng thái 402 kèm theo giá, các tài sản được chấp nhận và một sơ đồ mô tả các trường cần bao gồm. Đại lý không cần tài liệu hướng dẫn nào ngoài chính phản hồi đó.
sequenceDiagram
participant Human as Human
participant Agent as Agent
participant Site as benmilne.com
participant Facilitator as x402 Facilitator
participant Chain as Blockchain
participant Admin as Admin Panel
Human-->>Agent: "Contact Ben Milne about X"
Agent-->>Site: POST /contact/send (no payment)
Site-->>Agent: 402 + price + assets + field schema
Agent-->>Agent: Sign stablecoin permit
Agent-->>Site: POST + PAYMENT-SIGNATURE + message body
Site-->>Facilitator: Verify signature
Facilitator-->>Site: Valid
Site-->>Facilitator: Settle
Facilitator->>Chain: On-chain transfer (SBC)
Chain-->>Facilitator: Tx hash
Facilitator-->>Site: Settlement confirmed
Site-->>Site: Store message in D1
Site-->>Agent: 200 + receipt with tx hash
Admin-->>Admin: Message appears with block explorer link
rect rgba(200, 120, 50, 0.08)
Note over Human,Admin: Future: callback URL enables two-way communication
end
The Stable Coin Company vận hành một công cụ hỗ trợ để xác minh giấy phép có chữ ký của đại lý và thực hiện chuyển khoản trên chuỗi, thanh toán gas thay mặt cho cả hai bên. Đại lý không cần phải giữ ETH hoặc SOL. Đại lý chỉ cần giữ một loại tài sản, đó là loại tài sản mà đại lý sử dụng để thanh toán.
Bắt đầu
Tôi đã viết một thư viện nhỏ có tên x402-payment-path cho việc này. Thư viện này xử lý thách thức 402, xác minh chữ ký, thanh toán và tạo biên lai.
Tiêu chuẩn thanh toán cơ bản là x402, tiêu chuẩn thanh toán gốc của Hiệp hội Thanh toán Điện tử (stablecoin) mà Coinbase đã mã nguồn mở và hiện được Quỹ x402 duy trì dưới dạng dự án của Quỹ Linux. Công ty Stable Coin vận hành nền tảng trung gian, hỗ trợ cả Hợp đồng Thông minh (USDC) và SBC trên các nền tảng Base, Solana và Radius. Tôi sử dụng SBC vì đây là tài sản tôi am hiểu nhất.
Nếu bạn muốn triển khai điều này cho một sản phẩm thay vì một tin nhắn, bạn sẽ thay đổi những gì xảy ra sau khi thanh toán. Thay vì lưu trữ tin nhắn, bạn sẽ tạo một URL tải xuống, kích hoạt webhook hoặc bắt đầu một lô hàng. Thư viện không quan tâm hành động đó là gì. Nó chỉ giới hạn hành động sau khi thanh toán.
Quyết định
Điểm cuối chấp nhận cả USDC và SBC. Tôi đã sử dụng SBC vì đây là tài sản mà tôi hiểu rõ nhất và là tài sản mà tôi muốn xác minh từ đầu đến cuối trên cả hai chuỗi.
Tôi có hai ví. Ví EVM của tôi nhận SBC trên Base. Một ví Solana riêng biệt nhận SBC trên Solana. Cùng một điểm cuối, cùng một mức giá, các kênh thanh toán khác nhau.
Các tin nhắn được lưu trong bảng D1. Tôi đọc chúng trong bảng điều khiển quản trị. Không chuyển tiếp email, không có hộp thư đến để theo dõi. Một tin nhắn không nên có thể làm gì khác ngoài việc chỉ là một tin nhắn.
Giá là /bin/sh.10. Đủ cao để khiến spam trở nên không kinh tế. Đủ thấp để trở nên đơn giản đối với một đại lý hợp pháp.
Nó hoạt động
Dưới đây là các giao dịch thực tế từ ngày 13 tháng 6 năm 2026. Mỗi tin nhắn có giá 0,10 đô la SBC. Thanh toán được thực hiện trên chuỗi.
| Người gửi | Mạng | Số tiền | Giao dịch |
|---|---|---|---|
cursor-agent/0.46.2 | Cơ sở | /bin/sh,10 SBC | 0x5265bdd1…963cd · BaseScan |
deal-flow-scout@vcscan.ai | Base | 0,10 SBC | 0xe0aa91c4…4313d · BaseScan |
claude-research-agent/1.2 | Base | /bin/sh,10 SBC | 0xb0c96326…4dd05 · BaseScan |
e2e-test-agent | Base | /bin/sh,10 SBC | 0x0fca4265…c1b08 · BaseScan |
e2e-test-agent | Solana | /bin/sh,10 SBC | 2typCyWo…hsYc · Solscan |

Đó là bảng điều khiển quản trị của tôi. Bảy tin nhắn. Base và Solana. Mỗi tin nhắn đều đã được xác nhận trên chuỗi trước khi hiển thị.
Gửi tin nhắn cho tôi
Nếu bạn đang xây dựng một agent, điểm cuối là POST benmilne.com /contact/send. Điều này được ghi trong đặc tả OpenAPI và agents.md.
Gửi yêu cầu POST mà không có tiêu đề thanh toán và máy chủ sẽ trả về mã trạng thái 402 kèm theo tất cả thông tin cần thiết. Thư viện khách hàng x402 sẽ xử lý việc ký và thử lại từ đó. Giá là 0,10 đô la. SBC và USDC trên Base và Solana. Nếu bạn bao gồm URL callback, tôi sẽ có khả năng trả lời tại URL đó trong tương lai.
Những gì tôi đã học được
Phản hồi 402 là một hóa đơn có thể đọc được bằng máy. Trình đại lý không cần giao diện người dùng. Nó cần giá, địa chỉ tài sản và mạng. Nó ký, thanh toán và thử lại.
Tôi đã thử thêm hỗ trợ USDC thông qua các nhà cung cấp dịch vụ trong cộng đồng tự giới thiệu là không cần khóa. Không có nhà cung cấp nào hoạt động mà không cần cấp phép. Một nhà cung cấp yêu cầu đăng ký địa chỉ. Một nhà cung cấp khác gặp vấn đề không tương thích phiên bản. SBC thông qua The Stable Coin Company là nhà cung cấp duy nhất hoạt động mà không cần bất kỳ thiết lập nào. Không cần khóa, không cần tài khoản, không cần đăng ký. Điều này rất quan trọng nếu bạn muốn các tác nhân có thể thanh toán mà không cần con người phải cấu hình trước.
Một điều cũng khiến tôi ngạc nhiên: cả MetaMask và Phantom đều liên tục ẩn SBC trong ví của tôi, ngay cả sau khi tôi đã phê duyệt nhiều lần. Tôi thêm token, xác nhận giao dịch, kiểm tra số dư, và tài sản lại biến mất. Điều này lặp đi lặp lại trong quá trình thử nghiệm. Tôi rất tôn trọng cả hai đội ngũ, nhưng việc phải liên tục thông báo cho ví trên thiết bị của mình rằng tôi muốn sử dụng tài sản của chính mình từ một nhà phát hành được cấp phép, lặp đi lặp lại, thật là vô lý. Internet rất rộng lớn. Các ví nên tin tưởng vào những lựa chọn mà người dùng đã thực hiện.
Mã nguồn tôi sử dụng cho việc này là mã nguồn mở và bạn có thể tự do làm bất cứ điều gì bạn muốn với nó, giả sử MetaMask hoặc Phantom không muốn can thiệp vào những gì bạn làm.