Financie a carteira e conceda permissões ao agente
Depois de criar um instrumento de pagamento, o usuário final deve financiar a carteira com USDC e conceder permissão ao agente para assinar transações. Até que ambas as etapas sejam concluídas, a operação de pagamento do processo falhará com uma exceção do lado do cliente.
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. Com ele, um agente de codificação de IA pode criar seu gerenciador de pagamentos, conector, provedor de credenciais, instrumento de pagamento e sessão usando a agentcore CLI e adicionar 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
Coinbase CDP
Quando você cria um instrumento de pagamento com o conector CDP da Coinbase, a CreatePaymentInstrument API retorna um redirectUrl apontamento para o Coinbase WalletHub, um portal para conceder permissões ao agente e financiar a carteira. Direcione o usuário final para esse URL para financiar sua carteira e conceder permissões ao agente em uma única interface.
Use o WalletHub URL
O redirectUrl formulário da CreatePaymentInstrument resposta abre a Coinbase WalletHub, onde o usuário final pode financiar a carteira e conceder permissões de assinatura ao agente.
instrument = dp_client.create_payment_instrument( userId="test-user-123", paymentManagerArn=PAYMENT_MANAGER_ARN, paymentConnectorId=PAYMENT_CONNECTOR_ID, paymentInstrumentType="EMBEDDED_CRYPTO_WALLET", paymentInstrumentDetails={ "embeddedCryptoWallet": { "network": "ETHEREUM", "linkedAccounts": [{"email": {"emailAddress": "user@example.com"}}] } }, clientToken=str(uuid.uuid4()), ) # Direct the end user to this URL wallet_hub_url = instrument["paymentInstrumentDetails"]["redirectUrl"] print(f"Open the WalletHub: {wallet_hub_url}")
Como alternativa, você pode implantar o AgentCore modelo Coinbase GitHub
Financie a carteira
A partir do WalletHub (ou do frontend auto-hospedado), o usuário final pode financiar sua carteira usando qualquer um dos seguintes métodos:
| Método | Description | Disponibilidade |
|---|---|---|
|
Rampa de entrada da Coinbase () card/bank |
Compre USDC diretamente usando um cartão de crédito, cartão de débito, Apple Pay, Google Pay ou ACH por meio do fluxo de compra hospedado pela Coinbase. |
Somente Mainnet |
|
Receber (código QR) |
Exiba um código QR e o endereço da carteira. O usuário escaneia o QR ou copia o endereço para enviar fundos de uma carteira ou bolsa externa. |
Mainnet e testnet |
|
Transferir de uma carteira externa |
Conecte uma carteira de extensão de navegador (MetaMask, Phantom, Coinbase Wallet) e transfira USDC diretamente para a carteira incorporada. |
Mainnet e testnet |
Para ambientes de testnet, financie a carteira com testnet USDC da torneira Circle
Conceda permissões ao agente
As permissões do agente no Coinbase CDP usam a delegação no escopo da carteira — cada carteira recebe sua própria concessão independente e com prazo determinado do usuário final, que autoriza o agente a assinar transações.
-
O usuário final navega até a seção Permissões do painel de front-end da Coinbase.
-
O usuário final seleciona uma ou mais carteiras (EVM and/or Solana) para autorizar.
-
O usuário final escolhe Conceder permissão e seleciona uma duração de expiração: 7 dias, 30 dias (padrão), 60 dias ou 90 dias.
Depois de concedida, o agente pode assinar transações em nome das carteiras do usuário final até que a concessão expire. O usuário final pode revogar as permissões a qualquer momento no mesmo painel. Depois que o subsídio for fornecido, vá para Criar uma sessão de pagamento.
Revogar permissões
O usuário final pode revogar o acesso do agente a qualquer carteira a qualquer momento na seção de permissões WalletHub ou no painel de front-end. Após a revogação, o agente não poderá mais assinar transações para essa carteira até que o usuário conceda novas permissões.
(Alternativa) Implemente o front-end auto-hospedado
Se você precisar de uma interface de usuário personalizável em vez da hospedada WalletHub, implante o AgentCore modelo Coinbase
-
Clone o repositório:
git clone https://github.com/coinbase/cdp-agentcore-template.git cd cdp-agentcore-template -
Crie um
.env.localarquivo com suas credenciais do CDP:NEXT_PUBLIC_CDP_PROJECT_ID=<YOUR_CDP_PROJECT_ID> CDP_API_KEY_ID=<YOUR_CDP_API_KEY_ID> CDP_API_KEY_SECRET=<YOUR_CDP_API_KEY_SECRET> CDP_WALLET_SECRET=<YOUR_CDP_WALLET_SECRET> NEXT_PUBLIC_NETWORK_MODE=testnet -
Instale as dependências e inicie o aplicativo:
npm install npm run dev -
No Portal do Desenvolvedor da Coinbase
, adicione o URL do seu aplicativo à lista Origens permitidas em Carteiras > Non-custodial Carteira > Segurança.
O frontend auto-hospedado fornece os mesmos fluxos de financiamento e concessão de permissões descritos acima, com controle total sobre o estilo e a experiência do usuário.
Stripe (Privado)
O Privy AgentCore SDK on GitHub
Implemente o front-end
-
Liste o endpoint localhost no painel Privy em Configurações do aplicativo > Básico > Domínios
-
Clone o repositório:
git clone https://github.com/privy-io/aws-agentcore-sdk.git cd aws-agentcore-sdk -
Crie um
.env.localarquivo com suas credenciais Privy:NEXT_PUBLIC_PRIVY_APP_ID=<YOUR_PRIVY_APP_ID> PRIVY_APP_SECRET=<YOUR_PRIVY_APP_SECRET> NEXT_PUBLIC_PRIVY_SIGNER_ID=<YOUR_PRIVY_AUTHORIZATION_ID> NEXT_PUBLIC_NETWORK_MODE=testnetO
NEXT_PUBLIC_PRIVY_SIGNER_IDvalor é o ID de autorização (ID da chave) do seu painel privado em Infraestrutura de carteira > Autorização. Esse é um identificador público e pode ser exposto com segurança no lado do cliente. -
Instale as dependências e inicie o aplicativo:
pnpm install pnpm dev
Financie a carteira
Quando o usuário final se autentica por meio do frontend Privy, carteiras incorporadas são criadas automaticamente para as redes Base (EVM) e Solana. O usuário final pode financiar sua carteira usando qualquer um dos seguintes métodos:
| Método | Description | Disponibilidade |
|---|---|---|
|
Pague com cartão (Stripe) |
Compre USDC usando um cartão de crédito ou débito por meio da rampa de acesso criptográfica hospedada pela Stripe em. |
Somente Mainnet |
|
Receber (código QR) |
Exiba um código QR e endereço de carteira usando o formato EIP-681 (EVM) ou Solana Pay URI. O usuário escaneia o QR ou copia o endereço para enviar fundos de uma carteira ou bolsa externa. |
Mainnet e testnet |
|
Transferir de uma carteira externa |
Conecte uma carteira com extensão de navegador (MetaMask para Base, Phantom para Solana) e transfira USDC diretamente para a carteira incorporada. |
Mainnet e testnet |
Para ambientes de testnet, financie a carteira com testnet USDC da torneira Circle
Conceda permissões ao agente
As permissões do agente no Privy usam signatários de sessão (também chamadas de chaves de autorização) — o usuário final registra a chave de autorização do agente em cada carteira incorporada, concedendo ao agente permissão para assinar transações sem aprovação por transação.
-
No frontend Privy, o usuário final faz login e carteiras incorporadas automáticas são criadas (uma EVM, uma Solana).
-
A tela inicial exibe uma placa de configuração do agente Connect.
-
O usuário final escolhe o agente Connect e um modal exibe: “Dê ao seu agente acesso às suas carteiras”.
-
O usuário final escolhe Conceder acesso.
O front-end usa addSessionSigners o Privy SDK para registrar a chave de autorização do agente em cada carteira incorporada. A operação é idempotente — se o assinante já estiver registrado, nenhum erro será retornado.
Uma vez conectado, o agente pode assinar transações em nome das carteiras do usuário. As permissões persistem até serem revogadas explicitamente.
(Opcional) Verifique a conexão do agente
O front-end verifica se as permissões estão ativas chamando a API Privy:
GET https://auth.privy.io/api/v1/wallets/{walletId} Authorization: Basic <base64(appId:appSecret)>
A resposta inclui uma additional_signers matriz. Se a ID de autorização configurada aparecer nessa matriz, o agente está conectado.
Depois que o subsídio for fornecido, vá para Criar uma sessão de pagamento.
Testando com testnet USDC
Para desenvolvimento e teste, use redes testnet e carteiras de fundos com o teste USDC:
-
Definido
NEXT_PUBLIC_NETWORK_MODE=testnetno.env.localarquivo de front-end. -
Obtenha testnet USDC na torneira Circle USDC
: -
Selecione Base Sepolia para carteiras EVM
-
Selecione Solana Devnet para carteiras Solana
-
-
Cole o endereço da carteira incorporada (mostrado no painel frontal ou na tela do código QR) na torneira.
-
A torneira distribui o USDC de teste em sua carteira em segundos.
nota
O cartão Stripe onramp (Privy) e o Coinbase Onramp não estão disponíveis na testnet. Use a torneira Circle, a transferência externa de carteira ou a transferência direta de endereço para obter financiamento na testnet.