Troubleshooting AgentCore payments
This section provides solutions to common errors when using AWS Amazon Bedrock AgentCore payments.
Validation errors
When creating or updating payment resources, the service returns a ValidationException. The following table lists common validation errors and their resolutions.
| Error message | Resolution |
|---|---|
|
|
The |
|
|
The account ID in |
|
|
The |
|
|
Provide at least one credential provider configuration when creating or updating a payment connector. |
|
|
Each credential provider configuration must include a |
|
|
The credential provider configuration variant must match the connector type. For example, a |
Field naming constraints are also enforced:
-
Payment manager names must start with a letter and contain only alphanumeric characters (max 48 characters).
-
Payment connector names follow the same rules but also allow underscores.
-
Descriptions allow alphanumeric characters and spaces (max 4096 characters).
Permission errors
| Error message | Resolution |
|---|---|
|
|
Your account has been restricted. Contact AWS Support to resolve. |
|
|
Your account is in a limited access state. Read and list operations are allowed, but create and update operations are restricted until the restriction is resolved. |
|
IAM SigV4 authorization failures |
Ensure the calling principal has the appropriate |
|
PassRole failures |
When providing a |
AWS Marketplace subscription errors
When you use Coinbase as a payment provider, your account must have an active subscription to the Coinbase Wallets for AgentCore Payments listing in AWS Marketplace. If the subscription is missing, the service returns a SubscriptionRequiredException with an HTTP 403 status code.
This error is enforced in two places:
-
When you create a Coinbase payment connector with
CreatePaymentConnector. -
When you perform a Coinbase wallet operation on the data plane, such as
CreatePaymentInstrumentorProcessPayment.
The exception includes a subscriptionUrl field with a link to the AWS Marketplace listing and a productName field that identifies the product requiring a subscription.
| Error message | Resolution |
|---|---|
|
|
Your account does not have an active AWS Marketplace subscription for Coinbase. To resolve:
For more information, see Subscribe to Coinbase Wallets for AgentCore Payments in AWS Marketplace. |
Quick create authorization errors
Quick create lets you set up a Coinbase payment connector without managing credentials yourself. When you call CreatePaymentConnector, the service returns an authorizationUrl. Open the URL (or provide it to your application’s users) to complete the Coinbase authorization. During this flow, the connector moves through the following Quick-create-specific statuses:
-
PENDING_AUTHENTICATION— The connector is waiting for you (or your application’s user) to complete the Coinbase authorization. -
PROVISIONING— The authorization is complete and the service is provisioning the connector. -
AUTHENTICATION_EXPIRED— TheauthorizationUrlexpired before the authorization was completed. -
AUTHENTICATION_FAILED— The Coinbase authorization did not succeed.
The following table lists common Quick create authorization issues and their resolutions.
| Connector status | Resolution |
|---|---|
|
Connector stuck in |
The Quick create authorization has not been completed. To resolve:
|
|
Connector in |
The
|
Resource not found errors
| Error message | Resolution |
|---|---|
|
|
The specified payment manager does not exist. Verify the ID by calling |
|
|
The specified connector does not exist under the given manager. Verify both IDs using |
|
Resource not found during |
The parent payment manager does not exist. Create the payment manager first. |
Conflict errors
The service returns a ConflictException when two requests modify the same resource at the same time, or when creating a resource that already exists. Retry the request. Create and update operations support a clientToken for safe retries.
Service quota errors
The service returns "{limitType} limit exceeded for account {accountId}" when you reach the maximum number of payment managers or connectors for your account. Delete unused resources or contact AWS Support to request a limit increase.
Throttling errors
The service returns "Rate exceeded" when the request rate exceeds the allowed limit. Implement exponential backoff with jitter in your retry logic. If you consistently hit limits, contact AWS Support.
Payment processing errors
If an external payment provider rejects the signing request, the service returns an AccessDeniedException or ValidationException. Payment processing also fails with a SubscriptionRequiredException if your account does not have an active AWS Marketplace subscription for Coinbase. The following table lists common errors and their resolutions.
| Error message | Resolution |
|---|---|
|
|
You haven’t granted the delegation permission that allows your agent to sign transactions on your behalf, or you previously revoked it. To resolve:
For more information about a frontend implementation that handles the delegation grant flow, see the Coinbase AgentCore template |
|
|
Your Coinbase Developer Platform project does not have delegated signing configured. To resolve:
You must complete this step before your agent can sign transactions on behalf of users. |
|
|
Your credential provider has invalid or expired Privy wallet authorization keys. To resolve:
For more information about credential configuration, see the Privy AgentCore SDK |
|
|
Your account does not have an active AWS Marketplace subscription for Coinbase. Processing a payment against a Coinbase wallet requires an active subscription, so this error can occur if the subscription was never created or was later cancelled. To resolve:
For more information, see Subscribe to Coinbase Wallets for AgentCore Payments in AWS Marketplace and AWS Marketplace subscription errors. |
x402 payment request errors
When you process a payment with the x402 protocol, the service validates the payment payload that you forward in paymentInput.cryptoX402 before it holds budget or signs. If the payload is malformed or unsupported, the service returns a ValidationException and consumes no budget. The following table lists common x402 payment request errors and their resolutions. A few rows describe runtime or settlement failures, such as a rejected Permit2 allowance transaction, that can occur after signing begins rather than during pre-signing validation.
| Error message | Resolution |
|---|---|
|
|
The x402 payment payload could not be parsed or validated. Copy the merchant’s x402 payload from the |
|
|
The payment instrument does not specify a network. Create the payment instrument with a network that matches the merchant’s payment payload. |
|
|
The payment instrument’s network does not match the network in the payload. Use a payment instrument whose network matches the merchant’s payment request. |
|
|
The payload does not specify a currency. Forward the merchant’s payload verbatim. If the error persists, the merchant’s payload is malformed; contact the merchant. |
|
|
The payload requests an unsupported currency. Use a merchant endpoint that requests a supported currency. |
|
|
The payload does not specify an amount. Forward the merchant’s payload verbatim. If the error persists, the merchant’s payload is malformed; contact the merchant. |
|
|
The payload amount is not a positive number. Forward the merchant’s payload verbatim; do not modify the amount. |
|
|
The payload amount is above the maximum allowed value. Use a merchant endpoint whose amount is within the allowed range. |
|
|
The payload does not specify an asset. Forward the merchant’s payload verbatim. If the error persists, the merchant’s payload is malformed; contact the merchant. |
|
|
The payload asset address is not a valid address for the network. Forward the merchant’s payload verbatim; do not modify the asset address. |
|
|
The payload requests a token other than the canonical USDC for the network. Use a merchant endpoint that requests canonical USDC, and verify that the payment instrument’s network matches the payload. |
|
|
The payload does not specify a scheme. Forward the merchant’s payload verbatim. If the error persists, the merchant’s payload is malformed; contact the merchant. |
|
|
The payload requests an unsupported scheme. AgentCore payments supports the |
|
|
The |
|
|
The |
|
|
You set |
|
|
The |
|
The payment provider rejected the Permit2 allowance transaction. |
When
|
|
|
The payload does not specify a |
|
|
The payload |
|
|
The payload does not specify |
|
|
The payload |
|
|
The payload |
|
|
The payload for a Solana (SVM) payment does not specify |
|
|
The payload does not include the required |
|
|
The payload for an EVM payment does not include |
|
|
The payload for an EVM payment does not include |
|
|
The |
|
|
The payload |
MPP challenge errors
When you process a payment with the Machine Payments Protocol (MPP), the service validates the WWW-Authenticate: Payment challenge that you forward in paymentInput.mpp. It validates the challenge before it holds budget or signs. If the challenge is malformed, unsupported, or expired, the service returns a ValidationException and consumes no budget. The following table lists common MPP challenge errors and their resolutions. Some rows describe runtime or access errors, such as insufficient wallet balance, MPP access not enabled, or a credential build failure, rather than pre-signing validation errors.
| Error message | Resolution |
|---|---|
|
|
Provide the |
|
|
The forwarded header is not a |
|
|
The challenge is missing a required field. For the |
|
|
The challenge |
|
|
The decoded challenge |
|
|
The challenge |
|
|
The |
|
|
The challenge |
|
|
The |
|
|
A challenge field contains a disallowed control character. Forward the challenge verbatim. If the error persists, the merchant’s challenge is malformed; contact the merchant. |
|
|
The challenge requests an unsupported intent. AgentCore payments supports only the |
|
|
The challenge requests an unsupported payment method. AgentCore payments supports only the |
|
|
The challenge does not offer pull mode. AgentCore payments supports only pull mode for MPP. |
|
|
Provide the |
|
|
The challenge requests a token other than the canonical USDC for the network. Use a challenge that requests canonical USDC. Verify that the payment instrument’s network matches the challenge method. |
|
|
The seller does not sponsor gas fees for this challenge. Set |
|
|
The challenge is short-lived and has expired. Request the paid resource again to obtain a fresh challenge, then retry. No budget is consumed for an expired challenge. |
|
|
The Solana challenge requests an unsupported network. AgentCore payments supports only |
|
|
The Solana challenge requests client-paid fees. The |
|
|
The |
|
|
The buyer’s wallet does not have enough balance to cover both the payment amount and the network (gas) fee. Fund the wallet with additional USDC. See Fund the wallet and grant agent permissions. |
|
|
MPP payment processing is not enabled for your account. Contact AWS Support to request access. |
|
|
The service could not build the payment credential from the challenge. Verify that you forwarded the challenge verbatim. If the error persists, contact AWS Support with the request ID from the |
Server errors
The service returns "Something went wrong in processing your request" for internal errors. Retry the request after a brief delay. If the error persists, contact AWS Support with the request ID from the x-amzn-requestid response header.