x402 คืออะไร
x402 เป็นโปรโตคอลเปิดสำหรับการชำระเงินที่เป็น HTTP-native ซึ่งเผยแพร่โดย Coinbase ในปลายปี 2024 มันกำหนดวิธีที่เซิร์ฟเวอร์ส่งคืน 402 Payment Required พร้อมกับ JSON body ที่มีโครงสร้าง - รายการข้อกำหนดการชำระเงินที่ยอมรับได้ (scheme, network, chain id, recipient address, amount in USDC base units และ payment-request id) - เพื่อให้ลูกค้าเครื่องจักรสามารถวิเคราะห์การตอบสนอง ชำระเงินบน-chain และลองเรียกเดิมอีกครั้งด้วย X-Payment header ทั้งหมดนี้โดยโปรแกรม.
HTTP 402 นั่งอยู่โดยไม่ได้ใช้งานเป็นเวลา 30 ปี x402 ทำให้มันทำงาน
The 402 Payment Required status code was reserved in the original HTTP spec for "future use" and never received a standardized implementation. For three decades, every actual payment flow on the web was built on top of 200 / 401 / 403: a server returns 401 when authentication is missing, the client signs up via a separate UI flow, gets credentials, and re-authenticates. The signup happens out of band. None of this works for AI agents, which cannot complete signup forms.
x402 fixes this by giving 402 a usable specification. A server can return 402 with structured machine-readable payment instructions; a client can parse those instructions, pay, and retry, all without ever touching a signup form. The protocol is the missing piece between "AI agents can call APIs" and "AI agents can pay for the APIs they call". Before x402, the only practical agent payment paths were pre-paid balance accounts (with manual top-up) or proprietary integrations per API. Both broke at scale.
ความสำคัญเชิงกลยุทธ์ของ x402 คือมันตั้งมาตรฐานที่ระบบนิเวศอื่นๆ สามารถสร้างขึ้นได้ กระเป๋าเงินจะดำเนินการจัดการ x402 หนึ่งครั้ง และ API ที่สอดคล้องกับ x402 ทุกตัวทำงานร่วมกับกระเป๋าเงินนั้น เฟรมเวิร์กเซิร์ฟเวอร์จะดำเนินการ middleware x402 หนึ่งครั้ง และลูกค้าที่รับรู้ x402 ทุกคนสามารถจ่ายให้กับพวกเขา ผู้ช่วย (บริการที่ชำระเงินที่อยู่เบื้องหลัง) แข่งขันกันในด้านคุณภาพของบริการแทนที่จะเป็นการล็อค
หนึ่งการตอบสนอง หนึ่งการลองใหม่ หนึ่งการชำระเงิน
วงจรชีวิตมีสามสถานะ: การโทรที่ยังไม่ได้ชำระเงิน การชำระเงิน และการโทรที่ลองใหม่ ด้านล่างคือสิ่งที่การตอบสนองจากการโทรที่ยังไม่ได้ชำระเงินดูเหมือนจริงๆ บนสาย
HTTP/1.1 402 Payment Required Content-Type: application/json { "resource": "POST /api/research-query", "accepts": [ { "scheme": "exact-usdc", "network": "mainnet", "chainId": "eip155:8453", "payToAddress": "0xAgent...", "amountWeiUsdc": "50000", "paymentRequestId": "pr_01J9...", "maxAgeSeconds": 60 } ] }
- Status code 402. Distinct from 401 (auth missing) and 403 (auth refused). The presence of 402 signals "payment is the missing input."
- resource + accepts[]. เนื้อหาชื่อทรัพยากรที่ได้รับการปกป้องและระบุข้อกำหนดการชำระเงินที่ยอมรับได้หนึ่งข้อหรือมากกว่า การย้ายสามารถอ้างถึงข้อกำหนดสองข้อ (เช่น mainnet และ testnet) และให้ลูกค้าเลือก.
- scheme / network / chainId. แผนการชำระเงิน (exact-usdc), เครือข่าย (mainnet คือ Base), และ id CAIP-2 ของมัน ลูกค้าจะจับคู่กับสิ่งเหล่านี้ก่อนที่จะชำระเงิน.
- payToAddress / amountWeiUsdc. กระเป๋าเงินผู้รับและจำนวนที่แน่นอนในหน่วยพื้นฐาน USDC (50000 = 0.05 USDC, 6 ทศนิยม). ลูกค้าตรวจสอบทั้งสองก่อนที่จะชำระเงิน.
- paymentRequestId + maxAgeSeconds. รหัสเชื่อมโยงการชำระเงินกับการเสนอราคา; maxAgeSeconds คือการชำระเงินต้องสดใหม่เพียงใด การชำระเงินที่อ้างอิงถึงรหัสที่แตกต่างกัน หรือเก่ากว่าหน้าต่างจะถูกปฏิเสธ.
- การลองใหม่มี X-Payment header. ลูกค้าชำระเงินบน-chain จากนั้นส่งคำขอเดิมอีกครั้งด้วย X-Payment header ที่พิสูจน์การชำระเงิน เซิร์ฟเวอร์ตรวจสอบและส่งคืนผลลัพธ์ที่แท้จริง ไม่มี header การตอบสนองหรือหน้าที่โฮสต์เป็นส่วนหนึ่งของ x402 wire เอง.
x402 ในธรรมชาติ.
สามการปรับใช้ที่ชัดเจน เรียงตามความเป็นผู้ใหญ่ของการนำไปใช้ในแต่ละชั้น.
เซิร์ฟเวอร์ MCP ส่งคืนความท้าทาย 402 ให้กับการเรียกเครื่องมือที่ยังไม่ได้ชำระเงิน
เครื่องมือ MCP ที่ต้องชำระเงินได้รับการเรียกจาก Claude Desktop และผู้โทรยังไม่ได้ทำเครื่องหมายว่าได้รับเงินแล้ว เซิร์ฟเวอร์สร้างความท้าทาย requirePayment - 402 ที่มีเนื้อหาพร้อมราคและ hostedUrl - และส่งคืนเป็นข้อผิดพลาดของเครื่องมือ Claude Desktop แสดงลิงก์ในแชท; ผู้ใช้จ่าย $0.05 USDC; การเรียกครั้งถัดไปไปยังเครื่องมือเดียวกันสำเร็จ.
การเรียกเก็บเงินต่อการโทรที่จุดสิ้นสุด API
API วิจัยเรียกเก็บเงิน $0.50 ต่อการโทรหลัง x402 server adapter ตัวแทน AI เรียก endpoint ได้ 402 รายการจำนวนและผู้รับ ชำระเงินบน Base จากกระเป๋าเงินของมัน และส่งคำขอใหม่ด้วย X-Payment header ตัวเชื่อมตรวจสอบ header และส่งคืนการตอบสนองที่ชำระเงิน วงจรทั้งหมดเสร็จสิ้นภายในเวลาไม่ถึง 60 วินาที.
ตัวแทนชำระเงินโดยโปรแกรมผ่านกระเป๋าเงินที่รู้จัก x402
ระยะเวลาการทำงานของเอเจนต์มีความตระหนักรู้เกี่ยวกับ x402 (มันดำเนินการตามสเปค) เมื่อมันเจอ 402 มันจะอ่าน payToAddress และจำนวนจาก accepts[], ลงนามการโอนจากกระเป๋าเงินที่ได้รับอนุญาตล่วงหน้า (ภายในสิทธิ์การใช้จ่ายของมัน), กระจายไปยัง Base, และลองเรียกเดิมอีกครั้งด้วย X-Payment header ไม่มีการมีส่วนร่วมของมนุษย์; ลูปจะเสร็จสิ้นใน 5-10 วินาที
สิ่งที่อยู่รอบ ๆ x402 ในสแต็ก
x402 คือโปรโตคอล สามคำนี้ครอบคลุมแนวคิดที่มันตั้งอยู่บนและกรณีการใช้งานที่มันเปิดใช้งาน.