Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Création d'un instrument de paiement
Un instrument de paiement représente un portefeuille cryptographique intégré qu'un agent utilise pour payer les commerçants au nom d'un utilisateur. Chaque instrument est associé à un réseau blockchain spécifique. La valeur du ETHEREUM réseau couvre le réseau principal Ethereum et tous les réseaux de EVM-compatible couche 2 pris en charge (Base, Arbitrum et autres). Pour le schéma complet de la demande et de la réponse, consultez CreatePaymentInstrument la référence de l'API.
Vous pouvez automatiser les étapes de cette page à l'aide de la compétence AgentCore Paiements de la boîte à outils de l' AWS agent. La compétence fait partie du plugin aws-agents et permet à un agent de codage IA de créer votre gestionnaire de paiement, votre connecteur, votre fournisseur d'informations d'identification, votre instrument de paiement et votre session à l'aide de la agentcore CLI, et d'ajouter un outil de traitement des paiements à votre agent. Pour plus de détails, consultez le guide de démarrage rapide et la boîte à outils de l'AWS agent sur GitHub.
Exemple
- AgentCore SDK
-
from bedrock_agentcore.payments import PaymentManager
manager = PaymentManager(
payment_manager_arn=mgr["paymentManagerArn"],
region_name="us-west-2"
)
# Create payment instrument (Ethereum)
instrument = manager.create_payment_instrument(
user_id="test-user-123",
payment_connector_id=PAYMENT_CONNECTOR_ID,
payment_instrument_type="EMBEDDED_CRYPTO_WALLET",
payment_instrument_details={"embeddedCryptoWallet": {"network": "ETHEREUM",
"linkedAccounts": [{
"email": {
"emailAddress": "myemail@example.com"
}
}]
}},
)
Pour une chaîne compatible avec Solana, utilisez enum SOLANA pour l'entrée réseau.
- AWS CLI
-
aws bedrock-agentcore create-payment-instrument \
--payment-manager-arn "arn:aws:bedrock-agentcore:us-west-2:123456789012:payment-manager/my-manager" \
--payment-connector-id "my-connector-id" \
--user-id "test-user-123" \
--payment-instrument-type "EMBEDDED_CRYPTO_WALLET" \
--payment-instrument-details '{
"embeddedCryptoWallet": {
"network": "ETHEREUM",
"linkedAccounts": [{"email": {"emailAddress": "myemail@example.com"}}]
}
}' \
--client-token "$(uuidgen)" \
--region us-west-2
Pour une chaîne compatible Solana, utilisez"network": "SOLANA".
- AWS SDK
-
import boto3
import uuid
dp_client = boto3.client("bedrock-agentcore", region_name="us-west-2",
endpoint_url="https://bedrock-agentcore.us-west-2.amazonaws.com")
# Create payment instrument (Ethereum)
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": "myemail@example.com"
}
}]
},
},
clientToken=str(uuid.uuid4()),
)
Pour une chaîne compatible avec Solana, utilisez enum SOLANA pour l'entrée réseau.
Procurez-vous un instrument de paiement
Exemple
- AgentCore SDK
-
instrument = manager.get_payment_instrument(
user_id="test-user-123",
payment_instrument_id="payment-instrument-abc123"
)
print(f"Status: {instrument['status']}")
- AWS CLI
-
aws bedrock-agentcore get-payment-instrument \
--payment-manager-arn "arn:aws:bedrock-agentcore:us-west-2:123456789012:payment-manager/my-manager" \
--payment-instrument-id "payment-instrument-abc123" \
--user-id "test-user-123" \
--region us-west-2
- AWS SDK
-
response = dp_client.get_payment_instrument(
paymentManagerArn=PAYMENT_MANAGER_ARN,
paymentInstrumentId="payment-instrument-abc123"
)
print(f"Status: {response['status']}, Network: {response['paymentInstrumentDetails']['embeddedCryptoWallet']['network']}")
Liste des instruments de paiement
Exemple
- AgentCore SDK
-
instruments = manager.list_payment_instruments(
user_id="test-user-123"
)
for inst in instruments['paymentInstruments']:
print(f"{inst['paymentInstrumentId']} - {inst['status']}")
- AWS CLI
-
aws bedrock-agentcore list-payment-instruments \
--payment-manager-arn "arn:aws:bedrock-agentcore:us-west-2:123456789012:payment-manager/my-manager" \
--user-id "test-user-123" \
--region us-west-2
- AWS SDK
-
response = dp_client.list_payment_instruments(
paymentManagerArn=PAYMENT_MANAGER_ARN,
userId="test-user-123"
)
for inst in response['paymentInstruments']:
print(f"{inst['paymentInstrumentId']} - {inst['status']}")
Vérifiez l'équilibre de l'instrument
Exemple
- AgentCore SDK
-
balance = manager.get_payment_instrument_balance(
user_id="test-user-123",
payment_instrument_id="payment-instrument-abc123"
)
print(f"Balance: {balance['amount']} {balance['currency']}")
- AWS CLI
-
aws bedrock-agentcore get-payment-instrument-balance \
--payment-manager-arn "arn:aws:bedrock-agentcore:us-west-2:123456789012:payment-manager/my-manager" \
--payment-instrument-id "payment-instrument-abc123" \
--region us-west-2
- AWS SDK
-
response = dp_client.get_payment_instrument_balance(
paymentManagerArn=PAYMENT_MANAGER_ARN,
paymentInstrumentId="payment-instrument-abc123"
)
print(f"Balance: {response['amount']} {response['currency']}")
Supprimer un instrument de paiement
Exemple
- AgentCore SDK
-
manager.delete_payment_instrument(
user_id="test-user-123",
payment_instrument_id="payment-instrument-abc123"
)
- AWS CLI
-
aws bedrock-agentcore delete-payment-instrument \
--payment-manager-arn "arn:aws:bedrock-agentcore:us-west-2:123456789012:payment-manager/my-manager" \
--payment-instrument-id "payment-instrument-abc123" \
--region us-west-2
- AWS SDK
-
dp_client.delete_payment_instrument(
paymentManagerArn=PAYMENT_MANAGER_ARN,
paymentInstrumentId="payment-instrument-abc123"
)