View a markdown version of this page

Crie um gerenciador de pagamentos e um conector - Amazon Bedrock AgentCore

Crie um gerenciador de pagamentos e um conector

Um gerenciador de pagamentos é o recurso de alto nível que coordena as operações de pagamento da sua AWS conta. Ao criar um Payment Manager, você especifica um tipo de autorizador e uma função do IAM, e o serviço provisiona uma identidade de carga de trabalho correspondente em AgentCore Identity.

Este guia explica como criar um gerenciador de pagamentos e anexar um conector de pagamento usando o AWS Management Console ou o AWS SDK. Para ver os esquemas completos de solicitação e resposta, consulte CreatePaymentManagere CreatePaymentConnectorna Referência da API.

dica

Você pode automatizar as etapas nesta página com a habilidade AgentCore Pagamentos no kit de ferramentas do AWS agente. A habilidade faz parte do plug-in aws-agents e permite que um agente de codificação de IA crie seu gerenciador de pagamentos, conector, provedor de credenciais, instrumento de pagamento e sessão usando a agentcore CLI e adicione uma ferramenta de pagamento x402 ao seu agente. Para obter detalhes, consulte o guia de início rápido e o kit de ferramentas do AWS agente em. GitHub

Antes de começar, verifique se você tem:

Crie um gerenciador de pagamentos

exemplo
Console

Etapa 1: abra a página de pagamentos

  1. Abra o AgentCore console Amazon Bedrock.

  2. No painel de navegação, em Criar, escolha Pagamentos.

  3. Na seção Gerenciadores de pagamentos, escolha Criar gerenciador de pagamentos.

Etapa 2: configurar os detalhes do Payment Manager

  1. Em Nome, insira um nome para seu gerente de pagamentos. O nome deve iniciar com uma letra. Os caracteres válidos sãoa–z,A–Z,0–9. O nome pode ter até 48 caracteres.

  2. (Opcional) Escolha Descrição para expandir a seção e, em seguida, insira uma descrição para ajudar a identificar esse gerente de pagamentos.

Etapa 3: configurar permissões

A seção Permissões especifica as permissões desse gerenciador de pagamentos e os AWS recursos que o pagamento pode acessar.

Para permissões do IAM, escolha uma das seguintes opções:

  • Crie e use uma nova função de serviço — AgentCore Os pagamentos do Amazon Bedrock criam uma nova função de serviço em seu nome. Um nome de função de serviço padrão é gerado automaticamente. Para obter mais informações, consulte Permissões de perfil de serviço.

  • Use uma função de serviço existente — Use uma função de serviço que você já tenha criado. Se você escolher essa opção, selecione uma função na lista suspensa.

Etapa 4: Configurar a autorização de entrada

A autorização de entrada controla quem pode acessar esse gerenciador de pagamentos. Na seção Autenticação de entrada, para o tipo de autenticação de entrada, escolha uma das seguintes opções:

Para usar a autorização do IAM:

  1. Escolha Usar nome de usuário do IAM. Isso usa o nome de usuário do IAM que você usou para entrar no AWS console.

Para usar a autorização do JWT com o Amazon Cognito:

  1. Escolha Usar tokens Web JSON (JWT).

  2. Para a configuração do esquema JWT, escolha Criação rápida de configurações com o Cognito - recomendado. AgentCore Os pagamentos do Amazon Bedrock criam as configurações de autorização de entrada em seu nome usando o Amazon Cognito como provedor de identidade. Não é exigida nenhuma configuração adicional.

Para usar a autorização do JWT com um provedor de identidade existente:

  1. Escolha Usar tokens Web JSON (JWT).

  2. Para a configuração do esquema JWT, escolha Usar configurações existentes do provedor de identidade. Essa opção permite que você traga as configurações de autorização de entrada existentes de qualquer provedor de identidade para habilitar o OAuth 2.0.

  3. Em URL de descoberta, insira a URL de descoberta do seu provedor de identidade (por exemplo, Okta ou Cognito), normalmente encontrada na documentação desse provedor. Isso permite que seu agente ou ferramenta busque as configurações de login, token de recurso downstream e verificação. Por exemplo, .https://accounts.cognito.com/.well-known/openid-configuration

  4. Em Públicos permitidos, insira IDs de clientes registrados com provedores de identidade ou qualquer sequência arbitrária na declaração de público do JWT que o autorizador deve verificar. Escolha + Adicionar público para adicionar mais públicos.

  5. Para clientes permitidos, insira IDs de clientes registrados com provedores de identidade ou qualquer string arbitrária na declaração de público do JWT que o autorizador deve verificar. Escolha + Adicionar cliente para adicionar mais clientes.

  6. Em Escopos permitidos, insira os escopos necessários. O acesso é permitido somente se o token contiver pelo menos um dos escopos necessários configurados aqui. Escolha + Adicionar escopo para adicionar escopos adicionais.

  7. (Opcional) Para declarações personalizadas, defina regras que combinem declarações específicas no token de entrada com valores predefinidos. Para cada regra, especifique o nome da declaração, o tipo de string, o operador e o valor. Escolha + Adicionar reivindicação para adicionar outras reivindicações.

Etapa 5: adicionar um conector de pagamento (opcional)

Os conectores de pagamento armazenam as credenciais e a configuração necessárias para se conectar com os provedores de serviços de pagamento. Adicionar um conector durante a criação é opcional, mas é necessário um conector para que o serviço processe pagamentos.

  1. Na seção Conector de pagamento: novo conector, em Nome, insira um nome para o conector. Os caracteres válidos são a–zA–Z,0–9, e _ (sublinhado). O nome pode ter até 48 caracteres.

  2. (Opcional) Escolha Descrição para expandir a seção e, em seguida, insira uma descrição para o conector.

  3. Na seção Adicionar autenticação de saída, se você quiser reutilizar um provedor de credenciais de pagamento criado anteriormente no AgentCore Identity, selecione uma autenticação de saída existente na lista suspensa ou escolha criar um novo para criar um novo provedor de credenciais de pagamento. Se você optar por criar uma nova, consulte Criar uma nova autenticação de saída.

  4. (Opcional) Para adicionar mais conectores, escolha + Adicionar conector e repita as etapas acima.

Crie uma nova autenticação de saída

Quando você escolhe criar um novo na seção de autenticação de saída do conector, um painel é aberto onde você pode configurar um novo provedor de credenciais de pagamento.

  1. Em Nome, insira um nome para a autenticação de saída. Os caracteres válidos sãoa–z,A–Z,0–9, _ (sublinhado) e - (hífen).

  2. Para Provedor, selecione um provedor de pagamento no menu suspenso. Os fornecedores disponíveis são Coinbase e Stripe (Privy).

Se você escolher a Coinbase, preencha os seguintes campos em Configurações do provedor de pagamento:

  1. Para ID da chave de API, insira o identificador exclusivo das credenciais da sua conta Coinbase CDP.

  2. Para chave secreta da API, insira a chave privada usada para autenticar e assinar solicitações no Coinbase CDP.

  3. Em Segredo da carteira, insira a chave privada assimétrica usada para autenticar operações confidenciais de gravação na carteira.

Se você escolher Stripe (Privy), preencha os seguintes campos em Configurações do provedor de pagamento:

  1. Para ID do aplicativo, insira o identificador exclusivo das credenciais da sua conta Privy.

  2. Em Segredo do aplicativo, insira a chave privada usada para autenticar e assinar solicitações para o aplicativo Privy.

  3. Em ID de autorização, insira o identificador exclusivo da entidade de autorização.

  4. Em Chave privada de autorização, insira a chave privada usada para assinar solicitações de autorização.

Depois de concluir a configuração do provedor, escolha Add Outbound Auth.

Etapa 6: criar o gerenciador de pagamentos

  1. Revise sua configuração e escolha Criar Gerenciador de Pagamentos.

Depois de escolher Criar Gerenciador de Pagamentos, o console navega até a página de detalhes do Gerenciador de Pagamentos. Um banner de sucesso confirma que o Gerenciador de pagamentos foi criado e fornece as próximas etapas a seguir:

  1. Configure o instrumento de pagamento e a sessão, opcionalmente, especifique o orçamento.

  2. Integre o Payment Manager à estrutura do seu agente.

  3. Descubra ferramentas e endpoints pagos de MCP.

  4. Ative entregas de registros e rastreamentos para visualizar métricas no painel de observabilidade.

A página de detalhes do Payment Manager inclui seções para conectores de pagamento, modelos de código de integração, autenticação de entrada, métricas de observabilidade e configuração de rastreamento e entregas de registros.

AgentCore CLI

A AgentCore CLI cria o provedor de credenciais, o Payment Manager e o Payment Connector juntos a partir do diretório do seu projeto. Requer CLI v0.19.0 ou posterior.

Assistente interativo:

agentcore add payment-manager

O assistente solicita o nome do gerente, o padrão, a opção de pagamento automático, o limite de gastos e, opcionalmente, adiciona um conector com as credenciais do provedor.

Non-interactive (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

Non-interactive (Stripe/Privy):

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

A execução agentcore deploy provisiona funções do IAM, armazena credenciais no AgentCore Identity e cria o Payment Manager and Connector.

AgentCore SDK

O AgentCore SDK fornece um método conveniente create_payment_manager_with_connector que cria o Payment Manager, o provedor de credenciais e o conector em uma única chamada.

CDP da Coinbase com autorização do IAM:

from bedrock_agentcore.payments 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}")

CDP da Coinbase com autorização da 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"]

Stripe (Privy) com autorização do 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="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"]

Stripe (Privy) com autorização da 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

Crie um gerenciador de pagamentos com autorização do IAM:

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

Crie um gerenciador de pagamentos com autorização do 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

O status do Payment Manager começa CREATING e passa para READY quando o provisionamento é concluído.

Depois que o Payment Manager estiver pronto, crie um provedor de credenciais de pagamento:

O exemplo a seguir cria um provedor de credenciais de pagamento para o 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

O exemplo a seguir cria um provedor de credenciais de pagamento para o 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

Depois que o provedor de credenciais estiver pronto, crie um conector:

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

Crie um gerenciador de pagamentos com autorização do IAM:

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']}")

Crie um gerenciador de pagamentos com autorização do 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" } ] } )

Depois que o Payment Manager atingir READY o status, crie um provedor de credenciais de pagamento:

O exemplo a seguir configura um provedor para o 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" } } )

O exemplo a seguir configura um provedor para o 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" } } )

Depois de criar o provedor de credenciais de pagamento, crie um conector:

# 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']}")

Para Stripe (Privy), use a variante de stripePrivy configuração:

# 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" } } ] )

Estados do ciclo de vida

Após a criação, o Payment Manager passa pelos seguintes estados:

Estado Description

CREATING

Estado inicial durante o provisionamento.

READY

O Payment Manager está operacional e aceita configurações de conectores.

UPDATING

Uma alteração na configuração está sendo aplicada.

CREATE_FAILED

Falha no provisionamento.

UPDATE_FAILED

Falha na operação de atualização.

Obtenha um gerente de pagamentos

exemplo
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']}")

Listar gerentes de pagamento

exemplo
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']}")

Excluir um gerenciador de pagamentos

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

Os remove comandos atualizam a configuração local. O acompanhamento deploy destrói a infraestrutura de pagamento em sua conta.

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>" )

Próximas etapas

Depois de criar seu gerenciador de pagamentos, você pode:

  1. Configurar instrumentos e sessões de pagamento — Configure instrumentos e sessões de pagamento para começar a processar transações. Consulte Criar um instrumento de pagamento.

  2. Integre com sua estrutura de agente — Use os modelos de código de integração para conectar o Payment Manager ao seu fluxo de trabalho de agente. Consulte Processamento de pagamentos.

  3. Descubra ferramentas e endpoints pagos de MCP — Conecte-se a servidores MCP prontos para uso com endpoints de pagamento por uso ou traga seus próprios endpoints comerciais. Veja o Coinbase Bazaar via Gateway. AgentCore

  4. Habilite a observabilidade — configure entregas e rastreamento de registros para monitorar sessões, invocações de API, transações e taxas de erro. Consulte Observabilidade.