View a markdown version of this page

建立付款管理員和連接器 - Amazon Bedrock AgentCore

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

建立付款管理員和連接器

Payment Manager 是協調您 AWS 帳戶付款操作的最上層資源。當您建立 Payment Manager 時,您可以指定授權方類型和 IAM 角色,而且服務會在 AgentCore Identity 中佈建對應的工作負載身分。

本指南會逐步引導您建立 Payment Manager,並使用 AWS 管理主控台或 AWS SDK 連接 Payment Connector。如需完整的請求和回應結構描述,請參閱 API 參考中的 CreatePaymentManager 和 CreatePaymentConnector。

提示

您可以使用 AWS 客服人員工具組中的 AgentCore Payments 技能來自動化此頁面上的步驟。技能是 aws-agents 外掛程式的一部分,可讓 AI 編碼代理程式使用 CLI agentcore 建立您的 Payment Manager、連接器、登入資料提供者、付款工具及工作階段,並將程序付款工具新增至您的代理程式。如需詳細資訊,請參閱 GitHub 上的快速入門和客服人員工具組。 AWS GitHub

開始前,請確保您具備以下條件:

  • 完成先決條件 (帳戶、登入資料、提供者金鑰)。

  • 設定所需的 IAM 角色 (管理員角色和服務角色)。

重要

若要建立 Coinbase 付款連接器,您的帳戶必須擁有 Coinbase Wallets for AgentCore Payments 清單的有效 AWS Marketplace 訂閱。透過此訂閱,您的 Coinbase 錢包使用費會根據 Coinbase 網站上的 Coinbase 定價合併到您的每月 AWS 帳單中。訂閱不收取額外費用或義務。如果訂閱遺失, 會使用 SubscriptionRequiredException(HTTP 403) CreatePaymentConnector 失敗。此要求僅適用於 Coinbase;其他供應商,例如 Stripe (Privy) 不受影響。如需詳細資訊,請參閱訂閱 Coinbase Wallets for AgentCore Payments in AWS Marketplace。

建立付款管理員

範例
Console

步驟 1:開啟付款頁面

  1. 開啟 Amazon Bedrock AgentCore 主控台。

  2. 在導覽窗格的建置下,選擇付款。

  3. 在付款管理員區段中,選擇建立付款管理員。

步驟 2:設定 Payment Manager 詳細資訊

  1. 在名稱中,輸入 Payment Manager 的名稱。名稱必須以字母開頭。有效字元為 a–z、A–Z、0–9。名稱最多可有 48 個字元。

  2. (選用) 選擇描述以展開區段,然後輸入描述以協助識別此 Payment Manager。

步驟 3:設定許可

許可區段會指定此付款管理員的許可,以及付款可存取 AWS 的資源。

針對 IAM 許可,選擇下列其中一個選項:

  • 建立和使用新的服務角色 — Amazon Bedrock AgentCore 付款會代表您建立新的服務角色。預設服務角色名稱會自動產生。如需詳細資訊,請參閱服務角色許可。

  • 使用現有的服務角色 — 使用您已建立的服務角色。如果您選擇此選項,請從下拉式清單中選取角色。

步驟 4:設定傳入授權

傳入授權控制誰可以存取此 Payment Manager。在傳入身分驗證區段中,針對傳入身分驗證類型,選擇下列其中一個選項:

若要使用 IAM 授權:

  1. 選擇使用 IAM 使用者名稱。這會使用您用來登入 AWS 主控台的 IAM 使用者名稱。

若要搭配 Amazon Cognito 使用 JWT 授權:

  1. 選擇使用 JSON Web 權杖 (JWT)。

  2. 對於 JWT 結構描述組態,選擇使用 Cognito 快速建立組態 - 建議。Amazon Bedrock AgentCore 付款會使用 Amazon Cognito 做為身分提供者,代表您建立傳入授權組態。不需任何其他設定。

若要搭配現有的身分提供者使用 JWT 授權:

  1. 選擇使用 JSON Web 權杖 (JWT)。

  2. 針對 JWT 結構描述組態,選擇使用現有的身分提供者組態。此選項可讓您從任何身分提供者引入現有的傳入授權組態,以啟用 OAuth 2.0。

  3. 針對探索 URL,輸入身分提供者 (例如 Okta 或 Cognito) 的探索 URL,通常可在該提供者的文件中找到。這可讓您的代理程式或工具擷取登入、下游資源字符和驗證設定。例如 https://accounts.cognito.com/.well-known/openid-configuration。

  4. 對於允許對象,輸入向身分提供者註冊IDs,或在 JWT 對象宣告授權方必須驗證的任何任意字串。選擇 + 新增對象以新增其他對象。

  5. 對於允許的用戶端,在 JWT 對象宣告授權方必須驗證中,輸入向身分提供者註冊的用戶端 IDs 或任何任意字串。選擇 + 新增用戶端以新增其他用戶端。

  6. 針對允許的範圍,輸入所需的範圍。只有在字符至少包含此處設定的其中一個必要範圍時,才允許存取。選擇 + 新增範圍以新增其他範圍。

  7. (選用) 對於自訂宣告,定義符合傳入權杖中特定宣告與預先定義值的規則。針對每個規則,指定宣告名稱、字串類型、運算子和值。選擇 + 新增宣告以新增其他宣告。

步驟 5:新增付款連接器 (選用)

付款連接器會存放與付款服務供應商連線所需的登入資料和組態。在建立期間新增連接器是選用的,但服務需要連接器才能處理付款。

  1. 在付款連接器:新連接器區段中,針對名稱輸入連接器的名稱。有效字元為 a–z、0–9、 A–Z和 _(底線)。名稱最多可有 48 個字元。

  2. (選用) 選擇描述以展開區段,然後輸入連接器的描述。

  3. 在付款驗證區段中,如果您想要重複使用先前在 AgentCore Identity 中建立的付款驗證 (付款憑證提供者),請從下拉式清單中選取現有的付款驗證;或選擇建立新的付款驗證。如果您選擇建立新的付款驗證,請參閱建立付款驗證。

  4. (選用) 若要新增其他連接器,請選擇 + 新增連接器並重複上述步驟。

建立付款驗證

當您選擇在連接器的付款驗證區段中建立新的付款驗證,則會開啟建立付款驗證面板。在此面板中,您會設定新的付款身分驗證  :存放在 AgentCore Identity 中的付款憑證提供者。

  1. 針對付款驗證名稱,輸入付款驗證的名稱。有效字元為 a–z、A–Z、0–9、 _(底線) 和 -(連字號)。

  2. 對於付款提供者,從下拉式清單中選取付款提供者。可用的供應商是 Coinbase 和 Stripe (Privy)。

如果您選擇 Coinbase,請選擇如何提供付款驗證的憑證:

  • 快速建立組態 - 建議 - 快速建立可讓您連結至 Coinbase CDP 帳戶,並讓 AgentCore 付款為您建立登入資料,而無需離開 AgentCore 主控台。它會開啟一個視窗來註冊或登入您的 Coinbase CDP 帳戶。然後,服務會佈建 Coinbase CDP API 金鑰和錢包秘密,並代表您將其儲存為付款驗證。您不會產生或貼上任何金鑰。

  • 使用現有的組態 — 提供您在 Coinbase 開發人員平台中自行產生的 Coinbase CDP 登入資料。

使用快速建立

如果您選取快速建立組態 - 建議,AgentCore 付款會在您透過 Coinbase 授權存取後為您建立付款驗證。請完成下列步驟:

  1. 選取快速建立組態 - 建議。

  2. 選擇建立付款驗證。Coinbase 視窗隨即開啟,並顯示正在進行的 Coinbase 連線。

  3. 在 Coinbase 視窗中,使用您的電子郵件地址和電話號碼登入或註冊,然後選取或建立 Coinbase CDP 專案。

  4. 檢閱請求的存取權,然後授權 AgentCore 付款為您的 Coinbase CDP 專案建立和管理登入資料。

  5. 授權完成後,Coinbase 視窗會顯示已連線的 Coinbase 並關閉。AgentCore 付款會佈建 Coinbase CDP API 金鑰和錢包秘密。服務會將它們安全地存放在 AWS Secrets Manager 中,並代表您建立付款驗證。

注意

快速建立不支援連結至具有錢包秘密的現有專案。如果您授權的 Coinbase 專案已有錢包秘密,AgentCore 會停止付款而不輪換它。反之,請選取使用現有組態,並手動提供您的登入資料。

使用現有的組態

如果您選取使用現有組態,請完成付款提供者組態下的下列欄位,然後選擇建立付款驗證:

  1. 針對 API 金鑰 ID,輸入 Coinbase CDP 帳戶登入資料的唯一識別符。

  2. 針對 API 金鑰秘密,輸入用於向 Coinbase CDP 驗證和簽署請求的私有金鑰。

  3. 對於錢包秘密,輸入用於驗證敏感錢包寫入操作的非對稱私有金鑰。

重要

如果您選取 Coinbase 做為提供者,您的帳戶必須擁有 Coinbase Wallets for AgentCore Payments 清單的有效 AWS Marketplace 訂閱。這是 AWS 帳戶的一次性訂閱。透過此訂閱,您的 Coinbase 錢包使用費會根據 Coinbase 網站上的 Coinbase 定價合併到您的每月 AWS 帳單中。否則,連接器建立會失敗,並顯示 SubscriptionRequiredException(HTTP 403)。如果您未訂閱,主控台會顯示訂閱 Coinbase,以透過 AWS 訂閱按鈕啟用帳單,您可以用來訂閱而不離開精靈。 如需詳細資訊,請參閱訂閱 Coinbase Wallets for AgentCore Payments in AWS Marketplace。

如果您選擇條紋 (私有),請完成付款供應商組態下的下列欄位,然後選擇建立付款驗證:

  1. 在應用程式 ID 中,輸入 Privy 帳戶登入資料的唯一識別符。

  2. 對於應用程式秘密,輸入用於驗證和簽署 Privy 應用程式請求的私有金鑰。

  3. 針對授權 ID,輸入授權實體的唯一識別符。

  4. 針對授權私有金鑰,輸入用來簽署授權請求的私有金鑰。

步驟 6:建立付款管理員

  1. 檢閱您的組態,然後選擇建立付款管理員。

選擇建立付款管理員後,主控台會導覽至付款管理員詳細資訊頁面。成功橫幅會確認已建立 Payment Manager,並提供下列後續步驟:

  1. 設定付款工具與工作階段,選擇性地指定預算。

  2. 將 Payment Manager 整合到您的代理程式架構中。

  3. 探索付費 MCP 工具和端點。

  4. 啟用日誌交付和追蹤,以在可觀測性儀表板中檢視指標。

Payment Manager 詳細資訊頁面包含付款連接器、整合程式碼範本、傳入驗證、可觀測性指標,以及日誌傳遞和追蹤組態的區段。

AgentCore CLI

AgentCore CLI 會從您的專案目錄中同時建立登入資料提供者、Payment Manager 和 Payment Connector。需要 CLI v0.19.0 或更新版本。

互動式精靈:

agentcore add payment-manager

精靈會提示管理員名稱、模式、自動付款切換、花費限制,以及選擇性演練新增連接器與供應商登入資料。

Coinbase — 快速建立 (建議):

快速建立會為您佈建 Coinbase 登入資料提供者,因此您不會傳遞任何 API 金鑰。使用 --provision-mode QUICK_CREATE旗標新增連接器,然後部署:

agentcore add payment-connector \ --manager MyPaymentManager \ --name CoinbaseConnector \ --provider CoinbaseCDP \ --provision-mode QUICK_CREATE agentcore deploy

CLI 會開啟 Coinbase 授權流程。在您授權之後,服務會佈建登入資料,而連接器會達到 READY。

Coinbase CDP — 手動流程 (非互動式):

agentcore add payment-manager \ --name MyPaymentManager \ --auto-payment \ --default-spend-limit 10.00 agentcore add payment-connector \ --manager MyPaymentManager \ --name CoinbaseConnector \ --provider CoinbaseCDP \ --api-key-id <YOUR_API_KEY_ID> \ --api-key-secret <YOUR_API_KEY_SECRET> \ --wallet-secret <YOUR_WALLET_SECRET> agentcore deploy

條紋 (私有) — 手動流程 (非互動式):

agentcore add payment-manager \ --name MyPaymentManager \ --auto-payment \ --default-spend-limit 10.00 agentcore add payment-connector \ --manager MyPaymentManager \ --name StripePrivyConnector \ --provider StripePrivy \ --app-id <YOUR_APP_ID> \ --app-secret <YOUR_APP_SECRET> \ --authorization-id <YOUR_AUTHORIZATION_ID> \ --authorization-private-key <YOUR_PRIVATE_KEY_BASE64> agentcore deploy

執行 會agentcore deploy佈建 IAM 角色、將登入資料存放在 AgentCore Identity 中,並建立 Payment Manager 和 Connector。

AgentCore SDK

AgentCore SDK 支援 Coinbase Quick create (首先顯示) 和手動佈建。直接遵循傳遞提供者憑證的手動範例。它們使用便利方法 create_payment_manager_with_connector,可在單一呼叫中建立 Payment Manager、登入資料提供者和連接器。

Coinbase — 快速建立 (建議):

使用快速建立,您可以建立具有空白credential_provider_configurations清單 和 的連接器provision_mode="QUICK_CREATE"。連接器會傳回狀態PENDING_AUTHENTICATION和授權 URL。透過 Coinbase 授權之後,服務會佈建登入資料提供者,而連接器會達到 READY。

import time import webbrowser from bedrock_agentcore.payments.client import PaymentClient payment_client = PaymentClient(region_name="us-east-1") connector = payment_client.create_payment_connector( payment_manager_id="<paymentManagerId>", name="CoinbaseConnector", connector_type="CoinbaseCDP", credential_provider_configurations=[], provision_mode="QUICK_CREATE", ) # Authorize through Coinbase using the returned URL. webbrowser.open(connector["authorizationUrl"]) # Terminal states that mean provisioning did not succeed. TERMINAL_FAILURES = { "AUTHENTICATION_EXPIRED", "AUTHENTICATION_FAILED", "AWS_MARKETPLACE_SUBSCRIPTION_REQUIRED", "CREATE_FAILED", } # Poll until the connector reaches READY or fails. while True: response = payment_client.get_payment_connector( payment_connector_id=connector["paymentConnectorId"] ) status = response["status"] if status == "READY": break if status in TERMINAL_FAILURES: raise RuntimeError(f"Connector provisioning failed: {status}") time.sleep(5)

授權 URL 的有效期約為 10 分鐘。如果過期,連接器會轉換為 AUTHENTICATION_EXPIRED,然後您重新建立它。

Coinbase CDP 搭配 IAM 授權:

from bedrock_agentcore.payments.client import PaymentClient payment_client = PaymentClient(region_name="us-east-1") response = payment_client.create_payment_manager_with_connector( payment_manager_name="MyPaymentManager", payment_manager_description="Payment manager for my agent.", authorizer_type="AWS_IAM", role_arn="arn:aws:iam::123456789012:role/MyPaymentRole", payment_connector_config={ "name": "CoinbaseConnector", "description": "Coinbase CDP connector", "payment_credential_provider_config": { "name": "MyCoinbaseProvider", "credential_provider_vendor": "CoinbaseCDP", "credentials": { "api_key_id": "your-api-key-id", "api_key_secret": "your-api-key-secret", "wallet_secret": "your-wallet-secret", }, }, }, wait_for_ready=True, max_wait=300, poll_interval=5, ) payment_manager = response.get("paymentManager", {}) payment_connector = response.get("paymentConnector", {}) credential_provider = response.get("credentialProvider", {}) payment_manager_arn = payment_manager.get("paymentManagerArn") payment_connector_id = payment_connector.get("paymentConnectorId") print(f"Payment Manager ARN: {payment_manager_arn}") print(f"Connector ID: {payment_connector_id}")

Coinbase CDP 搭配 JWT 授權:

from bedrock_agentcore.payments.client import PaymentClient payment_client = PaymentClient(region_name="us-east-1") response = payment_client.create_payment_manager_with_connector( payment_manager_name="CoinbasePaymentManagerJWT", payment_manager_description="Coinbase Payment Manager (JWT auth)", authorizer_type="CUSTOM_JWT", role_arn="arn:aws:iam::123456789012:role/BedrockAgentCoreFullAccess", payment_connector_config={ "name": "coinbase-connector-jwt", "description": "Coinbase Connector (JWT)", "payment_credential_provider_config": { "name": "my-coinbase-provider-jwt", "credential_provider_vendor": "CoinbaseCDP", "credentials": { "api_key_id": "your-api-key-id", "api_key_secret": "your-api-key-secret", "wallet_secret": "your-wallet-secret", }, }, }, wait_for_ready=True, ) manager_arn = response["paymentManager"]["paymentManagerArn"] connector_id = response["paymentConnector"]["paymentConnectorId"] provider_arn = response["credentialProvider"]["credentialProviderArn"]

具有 IAM 授權的 Stripe (Privy):

from bedrock_agentcore.payments.client import PaymentClient payment_client = PaymentClient(region_name="us-east-1") response = payment_client.create_payment_manager_with_connector( payment_manager_name="StripePaymentManager", payment_manager_description="Stripe + Privy Payment Manager (IAM auth)", authorizer_type="AWS_IAM", role_arn="arn:aws:iam::123456789012:role/BedrockAgentCoreFullAccess", payment_connector_config={ "name": "stripe-privy-connector", "description": "Stripe + Privy Connector", "payment_credential_provider_config": { "name": "my-stripe-privy-provider", "credential_provider_vendor": "StripePrivy", "credentials": { "app_id": "your-privy-app-id", "app_secret": "your-privy-app-secret", "authorization_private_key": "your-authorization-private-key", "authorization_id": "your-authorization-id", }, }, }, wait_for_ready=True, ) manager_arn = response["paymentManager"]["paymentManagerArn"] connector_id = response["paymentConnector"]["paymentConnectorId"] provider_arn = response["credentialProvider"]["credentialProviderArn"]

具有 JWT 授權的條紋 (私有):

from bedrock_agentcore.payments.client import PaymentClient payment_client = PaymentClient(region_name="us-east-1") response = payment_client.create_payment_manager_with_connector( payment_manager_name="StripePaymentManagerJWT", payment_manager_description="Stripe + Privy Payment Manager (JWT auth)", authorizer_type="CUSTOM_JWT", role_arn="arn:aws:iam::123456789012:role/BedrockAgentCoreFullAccess", payment_connector_config={ "name": "stripe-privy-connector-jwt", "description": "Stripe + Privy Connector (JWT)", "payment_credential_provider_config": { "name": "my-stripe-privy-provider-jwt", "credential_provider_vendor": "StripePrivy", "credentials": { "app_id": "your-privy-app-id", "app_secret": "your-privy-app-secret", "authorization_private_key": "your-authorization-private-key", "authorization_id": "your-authorization-id", }, }, }, wait_for_ready=True, ) manager_arn = response["paymentManager"]["paymentManagerArn"] connector_id = response["paymentConnector"]["paymentConnectorId"] provider_arn = response["credentialProvider"]["credentialProviderArn"]
AWS CLI

使用 IAM 授權建立 Payment Manager:

aws bedrock-agentcore-control create-payment-manager \ --name "MyPaymentManager" \ --authorizer-type AWS_IAM \ --role-arn "arn:aws:iam::123456789012:role/AgentCorePaymentsResourceRetrievalRole" \ --region us-east-1

使用 JWT 授權建立付款管理員:

aws bedrock-agentcore-control create-payment-manager \ --name "MyPaymentManager" \ --authorizer-type CUSTOM_JWT \ --role-arn "arn:aws:iam::123456789012:role/AgentCorePaymentsResourceRetrievalRole" \ --custom-jwt-authorizer-configuration '{ "discoveryUrl": "https://cognito-idp.us-east-1.amazonaws.com/us-east-1_EXAMPLE/.well-known/openid-configuration", "allowedAudience": ["your-client-id"], "allowedClients": ["your-client-id"] }' \ --region us-east-1

Payment Manager 狀態會開始為 ,CREATING並在佈建完成READY時轉換為 。

Coinbase — 快速建立 (建議):

使用快速建立,您可以使用空白的 credential-provider-configurations 清單 和 來建立連接器--provision-mode QUICK_CREATE。您不會先建立登入資料提供者。

aws bedrock-agentcore-control create-payment-connector \ --payment-manager-id <paymentManagerId> \ --name "CoinbaseConnector" \ --type CoinbaseCDP \ --credential-provider-configurations '[]' \ --provision-mode QUICK_CREATE \ --region us-east-1

回應具有狀態 PENDING_AUTHENTICATION和 authorizationUrl。開啟 URL,透過 Coinbase 授權,然後輪詢get-payment-connector直到狀態為 READY。URL 的有效期約為 10 分鐘;如果過期,連接器會轉換為 AUTHENTICATION_EXPIRED,然後您重新建立它。

手動流程:使用手動流程,您可以建立付款憑證提供者,然後在建立連接器時參考其 ARN。這是 Stripe (Privy) 的唯一流程。

在 Payment Manager 就緒後,建立付款憑證提供者:

下列範例會建立 Coinbase CDP 的付款憑證提供者:

aws bedrock-agentcore-control create-payment-credential-provider \ --name "coinbase-provider" \ --credential-provider-vendor CoinbaseCDP \ --provider-configuration-input '{ "coinbaseCdpConfiguration": { "apiKeyId": "your-coinbase-api-key-id", "apiKeySecret": "your-coinbase-api-key-secret", "walletSecret": "your-coinbase-wallet-secret" } }' \ --region us-east-1

下列範例會建立 Stripe Privy 的付款憑證提供者:

aws bedrock-agentcore-control create-payment-credential-provider \ --name "stripe-privy-provider" \ --credential-provider-vendor StripePrivy \ --provider-configuration-input '{ "stripePrivyConfiguration": { "appId": "your-stripe-privy-app-id", "appSecret": "your-stripe-privy-app-secret", "authorizationPrivateKey": "your-stripe-privy-authorization-private-key", "authorizationId": "your-stripe-privy-authorization-id" } }' \ --region us-east-1

登入資料提供者準備就緒後,請建立連接器:

aws bedrock-agentcore-control create-payment-connector \ --payment-manager-id <paymentManagerId> \ --name "CoinbaseConnector" \ --type CoinbaseCDP \ --credential-provider-configurations '[{ "coinbaseCDP": { "credentialProviderArn": "arn:aws:bedrock-agentcore:us-east-1:123456789012:token-vault/default/paymentcredentialprovider/my-cdp-provider" } }]' \ --region us-east-1
AWS SDK

使用 IAM 授權建立 Payment Manager:

import boto3 client = boto3.client("bedrock-agentcore-control", region_name="us-east-1") # Create PaymentManager with IAM authorization payment_manager = client.create_payment_manager( name="MyPaymentManager", authorizerType="AWS_IAM", roleArn="arn:aws:iam::123456789012:role/AgentCorePaymentsResourceRetrievalRole" ) print(f"Payment Manager ID: {payment_manager['paymentManagerId']}")

使用 JWT 授權建立付款管理員:

payment_manager = client.create_payment_manager( name="MyPaymentManager", authorizerType="CUSTOM_JWT", roleArn="arn:aws:iam::123456789012:role/AgentCorePaymentsResourceRetrievalRole", customJWTAuthorizerConfiguration={ "discoveryUrl": "https://cognito-idp.us-east-1.amazonaws.com/us-east-1_EXAMPLE/.well-known/openid-configuration", "allowedAudience": ["your-client-id"], "allowedClients": ["your-client-id"], "allowedScopes": ["payments:write"], "customClaims": [ { "claimName": "tenant_id", "claimValue": "your-unique-tenant-id", "operation": "EQUALS" } ] } )

Coinbase — 快速建立 (建議):

使用快速建立,您可以建立具有空白credentialProviderConfigurations清單 和 的連接器provisionMode="QUICK_CREATE"。您不會先建立登入資料提供者。

# Create a Coinbase connector with Quick create connector = client.create_payment_connector( paymentManagerId=payment_manager["paymentManagerId"], name="CoinbaseConnector", type="CoinbaseCDP", credentialProviderConfigurations=[], provisionMode="QUICK_CREATE" ) print(f"Status: {connector['status']}") print(f"Authorization URL: {connector.get('authorizationUrl')}")

連接器會傳回狀態PENDING_AUTHENTICATION和 authorizationUrl。開啟 URL,透過 Coinbase 授權,然後輪詢get_payment_connector直到狀態為 READY。URL 的有效期約為 10 分鐘;如果過期,連接器會轉換為 AUTHENTICATION_EXPIRED,然後您重新建立它。

手動流程:使用手動流程,您可以建立付款憑證提供者,然後在建立連接器時參考其 ARN。這是 Stripe (Privy) 的唯一流程。

在 Payment Manager 達到 READY 狀態後,建立付款憑證提供者:

下列範例會設定 Coinbase CDP 的提供者:

import boto3 client = boto3.client("bedrock-agentcore-control", region_name="us-east-1") coinbase_provider = client.create_payment_credential_provider( name="coinbase-provider", credentialProviderVendor="CoinbaseCDP", providerConfigurationInput={ "coinbaseCdpConfiguration": { "apiKeyId": "your-coinbase-api-key-id", "apiKeySecret": "your-coinbase-api-key-secret", "walletSecret": "your-coinbase-wallet-secret" } } )

下列範例會設定 Stripe Privy 的提供者:

import boto3 client = boto3.client("bedrock-agentcore-control", region_name="us-east-1") stripe_privy_provider = client.create_payment_credential_provider( name="stripe-privy-provider", credentialProviderVendor="StripePrivy", providerConfigurationInput={ "stripePrivyConfiguration": { "appId": "your-stripe-privy-app-id", "appSecret": "your-stripe-privy-app-secret", "authorizationPrivateKey": "your-stripe-privy-authorization-private-key", "authorizationId": "your-stripe-privy-authorization-id" } } )

建立付款憑證提供者之後,請建立連接器:

# Create PaymentConnector for Coinbase CDP payment_connector = client.create_payment_connector( paymentManagerId=payment_manager["paymentManagerId"], name="CoinbaseConnector", type="CoinbaseCDP", credentialProviderConfigurations=[ { "coinbaseCDP": { "credentialProviderArn": "arn:aws:bedrock-agentcore:us-east-1:123456789012:token-vault/default/paymentcredentialprovider/my-cdp-provider" } } ] ) print(f"Connector ID: {payment_connector['paymentConnectorId']}")

對於 Stripe (Privy),請使用stripePrivy組態變體:

# Create PaymentConnector for Stripe (Privy) payment_connector = client.create_payment_connector( paymentManagerId=payment_manager["paymentManagerId"], name="StripePrivyConnector", type="StripePrivy", credentialProviderConfigurations=[ { "stripePrivy": { "credentialProviderArn": "arn:aws:bedrock-agentcore:us-east-1:123456789012:token-vault/default/paymentcredentialprovider/my-privy-provider" } } ] )

生命週期狀態

建立之後,Payment Manager 會轉換下列狀態:

State 說明

CREATING

佈建期間的初始狀態。

READY

Payment Manager 可運作並接受連接器組態。

UPDATING

正在套用組態變更。

CREATE_FAILED

佈建失敗。

UPDATE_FAILED

更新操作失敗。

Payment Connector 生命週期狀態

Payment Connector 會轉換下列狀態。PENDING_AUTHENTICATION、AUTHENTICATION_EXPIRED、 PROVISIONING和 AUTHENTICATION_FAILED 狀態適用於 Coinbase Quick 建立流程。

State 說明

CREATING

連接器佈建時的初始狀態。

PENDING_AUTHENTICATION

僅限快速建立。連接器正在等待您使用傳回的 透過 Coinbase 進行授權authorizationUrl。

PROVISIONING

僅限快速建立。授權成功,且服務正在佈建登入資料提供者。

READY

連接器可運作並可處理付款。

UPDATING

正在套用組態變更。

AUTHENTICATION_EXPIRED

僅限快速建立。授權完成前authorizationUrl已過期 (約 10 分鐘)。重新建立連接器以取得新的 URL。

AUTHENTICATION_FAILED

僅限快速建立。透過 Coinbase 的授權未成功完成。

AWS_MARKETPLACE_SUBSCRIPTION_REQUIRED

Coinbase 需要作用中的 AWS Marketplace 訂閱。訂閱 Coinbase Wallets for AgentCore Payments 清單並重試。

CREATE_FAILED

佈建失敗。

UPDATE_FAILED

更新操作失敗。

DELETE_FAILED

刪除操作失敗。

取得付款管理員

範例
AgentCore CLI
agentcore status
AgentCore SDK
from bedrock_agentcore.payments.client import PaymentClient payment_client = PaymentClient(region_name="us-east-1") response = payment_client.get_payment_manager( payment_manager_id="<paymentManagerId>" ) print(f"Status: {response['status']}")
AWS CLI
aws bedrock-agentcore-control get-payment-manager \ --payment-manager-id <paymentManagerId> \ --region us-east-1
AWS SDK
response = client.get_payment_manager( paymentManagerId="<paymentManagerId>" ) print(f"Status: {response['status']}")

列出付款管理員

範例
AgentCore CLI
agentcore status
AgentCore SDK
from bedrock_agentcore.payments.client import PaymentClient payment_client = PaymentClient(region_name="us-east-1") response = payment_client.list_payment_managers() for pm in response['paymentManagers']: print(f"{pm['name']} - {pm['status']}")
AWS CLI
aws bedrock-agentcore-control list-payment-managers \ --region us-east-1
AWS SDK
response = client.list_payment_managers() for pm in response['paymentManagers']: print(f"{pm['name']} - {pm['status']}")

刪除付款管理員

範例
AgentCore CLI
agentcore remove payment-connector --manager MyPaymentManager --name CoinbaseConnector --yes agentcore remove payment-manager --name MyPaymentManager --yes agentcore deploy

remove 命令會更新本機組態。追蹤deploy會縮減您帳戶中的付款基礎設施。

AgentCore SDK
from bedrock_agentcore.payments.client import PaymentClient payment_client = PaymentClient(region_name="us-east-1") payment_client.delete_payment_manager( payment_manager_id="<paymentManagerId>" )
AWS CLI
aws bedrock-agentcore-control delete-payment-manager \ --payment-manager-id <paymentManagerId> \ --region us-east-1
AWS SDK
client.delete_payment_manager( paymentManagerId="<paymentManagerId>" )

後續步驟

建立您的 Payment Manager 之後,您可以:

  1. 設定付款工具與工作階段 — 設定付款工具與工作階段以開始處理交易。請參閱建立付款工具。

  2. 與您的代理程式架構整合 — 使用整合程式碼範本將 Payment Manager 連接到您的代理程式工作流程。請參閱處理付款。

  3. 探索付費 MCP 工具和端點 — 使用pay-per-use端點連線至ready-to-use型 MCP 伺服器,或自攜商家端點。請參閱透過 AgentCore Gateway 的 Coinbase Bazaar。

  4. 啟用可觀測性 —  設定日誌交付和追蹤以監控工作階段、API 調用、交易和錯誤率。請參閱可觀測性。