Build OpenClaw agents that transact with Amazon Bedrock AgentCore payments
Quick Summary
AWS와 OpenClaw Foundation은 사람이 사전 승인한 지갑·수신자·자산·네트워크·금액·예산·만료 제약 안에서 OpenClaw 에이전트가 HTTP 402 유료 서비스에 결제할 수 있도록 AgentCore payments와 aws agents pay를 통합했다.
🖼️ 인포그래픽

🖼️ 4컷 인포그래픽

💡 한 줄 요약
AWS와 OpenClaw Foundation은 사람이 사전 승인한 지갑·수신자·자산·네트워크·금액·예산·만료 제약 안에서 OpenClaw 에이전트가 HTTP 402 유료 서비스에 결제할 수 있도록 AgentCore payments와 aws-agents-pay를 통합했다.
📌 핵심 요약
- AgentCore payments는 x402와 같은 프로그램형 결제 프로토콜을 위한 지갑 연동과 지출 한도를 제공하며, 에이전트가 유료 API·콘텐츠·컴퓨트 서비스·MCP 도구를 이용할 때 사람의 매회 승인을 요구하지 않는 제한형 결제 경로를 구성한다.
- 이 설계는 프롬프트 주입을 방지한다고 가정하지 않고 비신뢰 입력이 모델을 조작할 수 있다고 전제하며, 결제 권한을 수신자·자산·네트워크·건당 금액·세션 누적 예산·만료 시점으로 제한한다.
- 사람은 신뢰할 수 있는 관리 터미널에서 지갑과 결제 세션을 만들고 수신자와 예산을 승인하며, 별도의 런타임 IAM 역할은 상태 조회와 ProcessPayment만 수행하고 세션 생성·확장·교체 또는 쓰기 권한을 갖지 않는다.
- aws-agents-pay는 get_payment_session_status와 get_paid_content만 모델에 노출하고, HTTP 402 응답의 출처·경로와 결제 조건을 검증한 뒤 동일 요청에 멱등성 토큰을 재사용하지만 동시 중복 요청에는 경합 가능성이 남는다.
- 구성에는 OpenClaw 2026.3.24 이상, Node.js와 npm, AgentCore payments 접근 권한, 분리된 IAM 역할이 필요하며, Base Sepolia 시험 정책에는 정확한 USDC 자산 계약·승인 수신자·건당 한도·세션 예산·만료를 반영하고 수신자와 계약을 독립된 출처로 검증해야 한다.
🧩 주요 포인트
- 사실: AgentCore payments는 지갑 제공자 자격 증명과 세션 쓰기 권한을 모델 런타임 밖에 두고 사전 승인된 한도만 집행한다. → 의미: 모델의 안전한 판단에 의존하기보다 모델이 조작되더라도 결제 피해 범위를 정책으로 제한한다.
- 사실: aws-agents-pay는 HTTP 402 챌린지 검증, ProcessPayment 호출, 멱등성 토큰 재사용, 10 KiB 응답 제한과 untrusted: true 표시를 적용한다. → 영향: 자동 결제를 지원하면서 중복 결제와 유료 응답 취급에 대한 통제 경계를 유지한다.
- 사실: Base Sepolia는 시험, Base는 운영 예시로 제공되며 allowedRecipients 또는 allowAnyRecipient: true를 선택할 수 있다. → 의미: 수신자 허용 목록의 통제력과 서비스 탐색의 유연성을 선택하더라도 네트워크·자산·건당 한도·세션 예산 제약은 유지된다.
🧠 상세 정리
1. 자율 에이전트 결제의 필요성
웹을 탐색하고 API와 MCP 서버를 호출하는 자율 에이전트는 작업 도중 HTTP 402 Payment Required를 반환하는 유료 서비스와 마주칠 수 있으며, 운영자가 자리에 없으면 결제 때문에 흐름이 중단될 수 있다. 이 글은 매 거래마다 사람을 호출하지 않으면서도 사람이 사전에 승인한 범위 안에서만 에이전트가 결제를 시작하도록 하는 OpenClaw과 AgentCore payments의 결합 방식을 설명한다. 결제 권한은 수신자, 자산, 네트워크, 건당 금액, 세션 누적 예산, 만료 시점으로 제한되며, 지갑 제공자 자격 증명과 결제 세션의 생성·확장 권한은 모델이 보는 런타임 밖에 둔다. 따라서 자동화의 목적은 모델에 무제한 지갑 권한을 주는 것이 아니라, 신뢰할 수 있는 관리 경로에서 사람이 만든 제한형 세션을 런타임이 승인된 범위 안에서 사용하도록 하는 데 있다.
2. 소액 결제와 HTTP 기반 프로토콜
일부 API, 콘텐츠 서비스, 컴퓨트 서비스와 MCP 도구는 사용량에 따라 비용을 받으며, 개별 거래 금액은 1달러 미만이거나 1센트의 일부 수준일 수 있다. 이러한 규모에서는 카드 결제의 최소 처리 수수료 때문에 거래 자체가 경제성을 잃을 수 있지만, 스테이블코인은 작은 금액과 거의 실시간에 가까운 정산을 지원할 수 있다. x402와 Machine Payments Protocol은 에이전트와 서비스 사이에서 결제 절차를 프로그램으로 처리하기 위한 프로토콜이며, 특히 x402는 HTTP 402 응답을 결제 흐름의 출발점으로 활용한다. AgentCore payments는 결제 프로토콜이 변화하는 과정에서도 지갑 연동과 지출 한도를 일관된 계층으로 제공해 에이전트가 사전 승인된 조건 아래 유료 자원에 접근하도록 한다.
3. 프롬프트 주입을 전제로 한 권한 제한
에이전트 결제를 직접 구현하려면 지갑 제공자 연동, 자격 증명 보호, 결제 승인, 결정적인 지출 한도와 결제 관측 기능을 함께 갖춰야 한다. 동시에 모델은 웹 페이지나 API 응답 등 비신뢰 입력에 의해 조작될 수 있으므로, 결제 기능이 모델의 판단만을 신뢰해서는 안 된다. 제시된 설계는 프롬프트 주입 자체를 막는다고 주장하지 않고, 오히려 비신뢰 입력이 모델을 조작할 수 있다는 전제에서 런타임 권한을 제한한다. 그 제한은 수신자, 자산, 네트워크, 건당 금액, 세션 전체 예산과 만료 시점에 적용되며, 공격이나 오판이 발생해도 모델이 승인 범위를 스스로 넓히지 못하도록 세션 관리 권한을 분리한다.
4. AgentCore payments 구성 요소
AgentCore payments의 OpenClaw 통합은 x402 v2를 사용해 판매자의 HTTP 402 챌린지를 구성된 지갑 제공자로 처리하고, 클라이언트가 원래 요청을 다시 보낼 때 사용할 서명된 승인을 반환한다. AgentCore Identity는 지갑 제공자의 자격 증명을 보관하며, 모델이 직접 자격 증명을 다루지 않게 하는 관리 경계를 형성한다. 텔레메트리 전달을 구성하면 AgentCore Observability가 Amazon CloudWatch와 AWS X-Ray를 통해 로그, 지표와 추적 정보를 제공할 수 있다. 결제 연결은 Coinbase 지갑 또는 Stripe Privy 지갑을 지원하고 두 제공자 모두 내장형 스테이블코인 지갑과 세션별 지출 한도를 사용하며, 제공자와 지역의 지원 여부에 따라 스테이블코인이나 직불카드를 통한 자금 충전이 가능하다.
5. OpenClaw의 관리 영역과 런타임 분리
OpenClaw은 기기에서 실행되며 로컬 Gateway를 통해 모델, 도구와 메시징 채널을 연결하는 AI 도우미이고, OpenClaw Foundation이 프로젝트를 관리하며 플러그인이 기능을 확장한다. 이 통합에서는 사람이 신뢰할 수 있는 터미널에서 지갑을 준비하고 결제 세션을 생성하며 수신자와 예산을 승인한 뒤, 모델이 보는 런타임에는 제한된 결제 도구만 제공한다. aws-agents-pay가 모델에 노출하는 도구는 세션 사용 가능 여부를 확인하는 get_payment_session_status와 승인된 유료 URL을 요청하는 get_paid_content 두 개다. 런타임은 이미 승인된 세션 안에서 결제를 시작할 수 있지만 세션을 새로 만들거나 연장하거나 다른 세션으로 교체할 수 없으므로, 행정 권한과 실제 사용 권한이 분리된다.
6. HTTP 402 결제의 실제 처리 흐름
에이전트는 먼저 get_payment_session_status를 호출해 운영자가 만든 결제 세션이 사용 가능한지 확인한 다음, 승인된 URL을 get_paid_content로 요청한다. 플러그인은 제한된 네트워크 탐색으로 HTTP 402와 x402 v2 챌린지를 받은 뒤 챌린지의 자원이 요청 URL과 동일한 출처와 경로를 가리키는지 확인하고, 네트워크·자산·수신자·금액이 운영자 정책과 일치할 때만 ProcessPayment를 호출한다. 같은 결제 요청을 다시 시도할 때는 두 번째 결제를 만들지 않도록 동일한 멱등성 토큰을 재사용하지만, 동일 요청을 동시에 실행하면 경합이 발생할 수 있으므로 동시 중복 요청은 피해야 한다. 플러그인은 서명된 승인의 validAfter 시점까지 기다렸다가 결제 서명을 포함해 원래 요청을 다시 전송한다. 이 예제에서 returnBody가 활성화되면 유료 응답 본문은 최대 10 KiB로 제한되고 untrusted: true로 표시되며, 서명된 결제 증명 자체는 모델에 반환되지 않는다.
7. 지원 네트워크와 OpenClaw 협업
Agent Toolkit for AWS의 현재 OpenClaw 설정 흐름은 시험용 Base Sepolia와 운영용 Base를 예시로 제공하며, Ethereum과 다른 EVM 호환 체인 및 Solana를 포함한 다른 체인으로도 구성을 맞출 수 있다. 예시 화면에서는 OpenClaw Gateway의 AI 도우미 Bob이 시애틀 날씨 요청을 처리하면서 Base Sepolia의 유료 날씨 API에 0.001 USDC 시험 결제를 실행한다. AWS는 OpenClaw Foundation과 이 통합을 공동으로 진행했고, ClawCon 같은 커뮤니티 행사 지원과 Foundation 엔지니어링 팀의 플러그인 프레임워크 통합 작업에 참여했다. OpenClaw Foundation의 Patrick Erichsen은 결제를 별도의 특수 기능이 아니라 잘 정의된 플러그인 도구가 제공하는 새로운 기능으로 설명하며, 에이전트가 사용한 만큼 결제하는 경로와 기존의 대화형 설정 방식을 함께 유지할 수 있다고 밝혔다.
8. 사전 요구 사항과 플러그인 검증
구축에는 OpenClaw 2026.3.24 이상, Node.js와 npm, AgentCore payments에 접근할 수 있는 AWS 계정과 관리·런타임용으로 분리된 IAM 역할이 필요하다. 런타임 역할에는 상태 확인에 필요한 읽기 작업과 ProcessPayment만 허용하고, 결제 세션을 변경하는 쓰기 권한을 부여해서는 안 된다. Coinbase CDP 또는 Stripe Privy 자격 증명은 대화형 AgentCore CLI에만 입력하며, Base Sepolia x402 v2 엔드포인트와 판매자 수신자 주소 및 USDC 자산 계약은 HTTP 402 응답과 독립된 신뢰 가능한 출처로 검증해야 한다. ClawHub에서 @aws/aws-agents-pay 패키지를 확인한 뒤 설치하면 플러그인 ID는 aws-agents-pay, 포함된 스킬 이름은 agents-pay가 된다. 설치 후 스킬 정보와 플러그인 구성을 조사해 모델에 get_payment_session_status와 get_paid_content만 노출되는지 확인해야 하며, 설정·세션 생성·셸 또는 다른 도구가 보이면 중단해야 한다. 보안 책임은 AWS 공유 책임 모델을 따르며, 사용자는 IAM 권한 구성, 지갑 제공자 자격 증명 보호와 결제 정책 정의를 담당한다.
9. 사람이 승인하는 세션 생성과 정책 구성
플러그인을 설치하는 것만으로 결제 관리자, 커넥터, 결제 수단이나 결제 세션이 생성되지는 않으며, 이러한 자원은 신뢰할 수 있는 터미널에서 별도로 준비해야 한다. OpenClaw에 agents-pay 설정 지원을 요청하는 방식과 안내서를 직접 따르는 방식 중 하나를 선택할 수 있지만, 두 방식 모두 사람이 관리 명령을 실행하고 대화형 터미널에서 approve를 직접 입력해야 세션이 생성된다. 설정 안내서는 AgentCore 프로젝트와 결제 자원 생성, 설정 마법사 실행, 생성된 구성을 OpenClaw에 추가하는 절차를 다루며, OpenClaw의 설명 기능이 사람의 승인 단계를 대신하지 않는다. 플러그인을 활성화하기 전 구성에는 결제 관리자 ARN, 결제 수단 ID, 세션 ID, 사용자 ID, 네트워크, 정확한 자산 계약, 승인 수신자와 양수인 건당 결제 한도가 포함됐는지 검토해야 한다. 고정 판매자 환경에서는 allowedRecipients의 모든 주소를 판매자 문서나 다른 신뢰 가능한 출처로 별도 검증하고, HTTP 402 응답에 나타났다는 이유만으로 승인해서는 안 된다. 더 넓은 탐색 환경에서 allowAnyRecipient: true를 사용하면 게시자가 수익자를 선택할 수 있지만 수신자 허용 목록을 포기하는 대신 유연성을 얻는 것이며, 출처·네트워크·자산·건당 한도·세션 예산 통제는 계속 적용된다.
🧾 핵심 주장 / 시사점
- 이 통합의 핵심 보안 원리는 모델의 입력이나 판단을 완전히 신뢰하는 것이 아니라, 모델이 조작될 수 있어도 사용할 수 있는 결제 권한을 사람이 만든 세션 안에 가두는 것이다.
- 1달러 미만이나 1센트의 일부까지 내려가는 사용량 기반 거래에서는 카드의 최소 처리 수수료가 장애가 될 수 있어, 스테이블코인과 x402의 소액·HTTP 기반 결제 특성이 에이전트 자동화와 직접 연결된다.
- 관리 역할과 런타임 역할의 분리, HTTP 402 챌린지 검증, 멱등성 토큰, 10 KiB 제한, untrusted: true 표시와 결제 증명 비노출은 결제 실행과 응답 소비의 각 단계에 서로 다른 통제를 적용한다.
✅ 액션 아이템
- OpenClaw 2026.3.24 이상에서 aws-agents-pay 설치 후 모델 노출 도구가 get_payment_session_status와 get_paid_content 두 개뿐인지 확인.
- 관리용 IAM 역할과 런타임 IAM 역할 분리, 런타임의 세션 쓰기 권한 제외 및 상태 조회와 ProcessPayment 권한만 적용.
- Base Sepolia 결제 정책에 정확한 USDC 자산 계약, 승인 수신자, 건당 한도, 세션 예산과 만료를 반영하고 독립된 출처로 검증.
❓ 열린 질문
- 동시 중복 요청의 경합을 피하면서 같은 결제 요청에 동일한 멱등성 토큰을 재사용하는 실행 방식은 무엇인가?
- Base Sepolia 시험을 Base 운영으로 전환할 때 네트워크·자산·수신자·예산 제약을 어떤 순서로 재검증할 것인가?
- allowedRecipients와 allowAnyRecipient: true 중 대상 서비스에 적용할 수신자 정책은 무엇인가?