Error Codes

Error code

Cause / Description

Action

 

AccountLimitsExceeded

The spending or the receiving limit on the account is exceeded

You can display the following message to your customers:

You have exceeded your spending or receiving limits. Please visit http://payments.amazon.com to update your payment limits.

 

AmountOutOfRange

The transaction amount is more than the allowed range.

Ensure that you pass an amount within the allowed range. The transaction amount in a Pay operation using credit card or bank account must be greater than $0.01.

 

BadRule

One of the GK constructs is not well defined

Check the line number that resulted in this error. See the GateKeeper language reference for more information.

 

CannotSpecifyUsageForSingleUseToken

Token usages cannot be specified for a single use token.

A single use token does not support multiple usage of the token. You must use a multi-use token to specify usage limits. Use TokenType=MultiUse when you create the token. See the InstallPaymentInstruction operation topic for more information.

 

ConcurrentModification

A retriable error can happen due to concurrent modification of data by two processes.

The caller should retry the request if this error is encountered.

 

DuplicateRequest

A different request associated with this caller reference already exists.

You have used the same caller reference in an earlier request. Ensure that you use unique caller reference for every new request.

Even if your earlier request resulted in an error, you can still use a unique caller reference with every request and avoid this error.

 

InactiveAccount_Caller

The caller's account is in suspended or closed state.

Contact your AWS Representative for more information.

 

InactiveAccount_Recipient

The recipient's account is in suspended or closed state.

You can ask your customer to set up a new payment authorization and in the process set up a new account.

 

InactiveAccount_Sender

The sender's account is in suspended or closed state.

You can ask your customer to set up a new payment authorization and in the process set up a new account.

 

InactiveInstrument

The payment instrument used for this transaction is no longer active.

You can ask your customers to either set up a new payment authorization by directing them to the Amazon FPS Co-branded UI pipeline or associate an active payment instrument by directing them to the edit token pipeline.

 

IncompatibleTokens

The transaction could not be completed because the tokens have incompatible payment instructions.

There are multiple reasons for this error. Some of them are:

  • Tokens have expired

  • The recipient specified in the token is different from the actual recipient in the transaction.

  • There is violation on the amount restriction.

  • This token cannot be used with your application as another application has installed it.

If any assertion in one of the payment instructions fails, this error is displayed.

 

InstrumentAccessDenied

The external calling application is not the recipient for this postpaid or prepaid instrument. The caller should be the liability holder

You are trying to access an instrument that you do not own.

 

InstrumentExpired

The prepaid or the postpaid instrument has expired.

You must ask your customers to set up a new prepaid or postpaid agreement.

 

InstrumentNotActive

The prepaid or postpaid instrument used in the transaction is not active.

You must ask your customers to set up a new prepaid or postpaid authorization.

 

InsufficientBalance

The sender, caller, or recipient’s account balance has insufficient funds to complete the transaction.

You must ask your customers to fund their accounts. You can then retry this request.

Funding an account can take up to three to four business days using a bank account transfer. This error is also displayed if the party paying the FPS fees does not have enough account balance.

 

InternalError

A retriable error that happens due to some transient problem in the system.

The caller should retry the API call if this error is encountered.

 

InvalidAccountState

The account is either suspended or closed. Payment instructions cannot be installed on this account.

You must ask your customer to set up a new account if the account is closed.

 

InvalidAccountState_Caller

The caller account cannot participate in the transaction

Your account is not active. Contact your AWS Representative for more information.

 

InvalidAccountState_Recipient

Recipient account cannot participate in the transaction

You can display the following message to your customer (sender) following: “Your Amazon Payments account is not active. Please visit http:// payments.amazon.com for more details.”

 

InvalidAccountState_Sender

Sender account cannot participate in the transaction.

You can display the following message to your customer (sender):

Your Amazon Payments account is not active. Please visit http://payments.amazon.com for more details.

 

InvalidCallerReference

The CallerReferece does not have a token associated with it.

Use the caller reference value that was passed to the InstallPaymentInstruction operation or the Amazon FPS Co-Branded UI pipeline.

 

InvalidDateRange

The end date specified is before the start date or the start date is in the future.

Specify the correct end date.

 

InvalidEvent

The event specified was not subscribed using the SubscribeForCallerNotification operation.

See the API Reference in the Amazon FPS Developer Guide for more information on the type of events supported for notification.

 

InvalidInstrumentForAccountType

The sender account can use only credit cards

You must ask the sender to set up a new payment authorization with a credit card.

 

InvalidInstrumentState

The prepaid or credit instrument should be active

You must ask your customer to set up a new payment authorization.

 

InvalidParams

One or more parameters in the request is invalid.

See the API Reference section in the Amazon FPS Developer Guide for more information on the parameters for each of the APIs. Parameters in an Amazon FPS Co-branded UI pipeline request start with lowercase and parameters in a SOAP or REST request start with uppercase.

 

InvalidPaymentInstrument

The payment method used in the transaction is invalid.

Specify a valid payment method.

 

InvalidPaymentMethod

Payment method specified in the GK construct is invalid.

Specify the correct payment method. See the GateKeeper language reference for more information.

 

InvalidRecipientForCCTransaction

This account cannot receive credit card payments.

You can display the following message to your customers:

You cannot receive credit card payment. Please visit http://payments.amazon.com to update your account to receive credit card payments”

 

InvalidRecipientRoleForAccountType

The recipient account is not allowed to receive payments

You can display the following message to your customer (sender): Your Amazon Payments account is not active. Please visit http:// payments.amazon.com for more details.”

 

InvalidSenderRoleForAccountType

This token cannot be used for this operation.

Ensure that the account used in this transaction is the same account used in the original transaction. In a refund transaction, the recipient making the refund payment must the be same recipient as in the original transaction.

 

InvalidTokenId

The token that you are trying to cancel was not installed by you.

You do not have permission to cancel this token. You can cancel only the tokens that you own.

 

InvalidTokenId_Caller

The caller token specified is either invalid or canceled or the specified token is not active.

You need to install a new token. See the Programming reference section for more information.

 

InvalidTokenId_Recipient

The recipient token specified is either invalid or canceled.

You must install a new token if you are the recipient. If you are not the recipient, get a new payment authorization from the recipient.

See the Programming reference for more details

 

InvalidTokenId_Sender

The send token specified is either invalid or canceled or the token is not active.

You must ask your customer to set up a new payment authorization.

 

InvalidTokenType

Invalid operation performed on the token. Example, getting the token usage information on a single use token.

See the Creating Tokens topic in the Programming Reference section for more information on the token types and the operations that you can perform on a token.

 

InvalidTransactionId

The specified transaction could not be found or the caller did not execute the transaction or this is not a Pay or Reserve call.

Specify the correct the transaction Id.

 

InvalidTransactionState

The transaction is not completed or it has been temporarily failed.

Specify a duration of more than 1 hour.

 

InvalidUsageDuration

The duration cannot be less than one hour.

See the Amazon FPS Developer Guide for more information.

 

InvalidUsageLimitCount

The usage count is null or empty.

Specify a non-empty usage count.

 

InvalidUsageStartTime

The start time specified for the token is not valid.

Specify a valid start time. Valid start time should not be in the past or after the end date.

 

InvalidUsageType

The usage type specified is invalid.

See the Amazon FPS Developer Guide for more information on specifying the usage types for tokens.

 

OriginalTransactionFailed

The original transaction has failed

You cannot refund a transaction that has originally failed.

 

OriginalTransactionIncomplete

The original transaction is still in progress.

Retry after the original transaction has completed.

 

PaymentInstrumentMissing

There needs to be a payment instrument defined in the token which defines the payment method.

You must ask your customer to set up a new payment authorization.

 

PaymentInstrumentNotCC

The payment method specified in the transaction is not a credit card. You can only use a credit card for this transaction.

Use only a credit card for this transaction.

 

PaymentMethodNotDefined

Payment method is not defined in the transaction.

Specify the payment method in the sender token.

 

RefundAmountExceeded

The refund amount is more than the refundable amount.

You are not allowed refund more than the original transaction amount.

 

SameTokenIdUsedMultipleTimes

This token is already used in earlier transactions..

The tokens used in a transaction should be unique.

 

SenderNotOriginalRecipient

The sender in the refund transaction is not the recipient of the original transaction.

The token you passed as refund sender token does not belong to the recipient of the original transaction. Pass the correct refund sender token.

 

SettleAmountGreaterThanReserveAmount

The amount being settled is greater than the reserved amount.

You cannot settle an amount greater than what is reserved.

 

TokenAccessDenied

Permission is denied to cancel the token.

You are not allowed to cancel this token.

 

TokenNotActive_Caller

The caller token is canceled.

Your caller token has been canceled. Install a new caller token using the InstallPaymentInstruction operation as specified in the Creating Tokens topic in the Programming Reference section.

 

TokenNotActive_Recipient

The recipient token is canceled.

If you are the recipient, set up a new recipient token using the InstallPaymentInstruction operation or direct your customers to the Recipient Token Installation Pipeline to set up recipient token.

 

TokenNotActive_Sender

The sender token is canceled.

You must ask your customer to set up a new payment authorization as the current authorization is not active.

 

TokenUsageError

The token usage limit is exceeded.

If the usage has exceeded for this period, then wait for the next period before making another transaction. If the usage has exceeded for the entire authorization period, then ask your customer to set up a new payment authorization.

 

TransactionDenied

This transaction is not allowed.

You are not allowed to make this transaction. Check your credentials.

 

TransactionExpired

Returned when the Caller attempts to explicitly retry a transaction that is temporarily declined and is in queue for implicit retry.

The transaction has expired. The caller must initiate a new transaction.

 

TransactionFullyRefundedAlready

The complete refund for this transaction is already completed

You are not allowed refund more than the original transaction amount.

 

TransactionTypeNotRefundable

You cannot refund this transaction.

Refund is allowed only on the Pay operation.

 

UnverifiedAccount_Recipient

The recipient's account must have a verified bank account or a credit card before this transaction can be initiated.

You can display the following message to your customer (recipient): Your Amazon Payments account is not active. Please visit http://payments.amazon.com for more details.

 

UnverifiedAccount_Sender

The sender's account must have a verified U.S. credit card or a verified U.S bank account before this transaction can be initiated

You can display the following message to your customers: Please add a U.S. credit card or U.S. bank account and verify your bank account before making this payment.

 

UnverifiedBankAccount

A verified bank account should be used for this transaction

Visit the http://payments.amazon.com web site to verify your bank account.

 

UnverifiedEmailAddress_Caller

The caller account must have a verified e-mail address

You cannot make a web service API call without verifying your e-mail address. Verify your e-mail address from http://payments.amazon.com web site and make payments.

 

UnverifiedEmailAddress_Recipient

The recipient account must have a verified e-mail address for receiving payments.

You can display the following message to your customers: You cannot receive payments. Please verify your email address. visit http://payments.amazon.com to verify your account and receive payments.

 

UnverifiedEmailAddress_Sender

The sender account must have a verified e-mail address for this payment

You can display the following message to your customers: You cannot receive payments. Please verify your email address. visit http://payments.amazon.com to verify your account and receive payments.

 

UsageNotDefined

For a multi-use token or a recurring token the usage limits are not specified in the GateKeeper text.

Specify usage limits for this token.