Amazon Pay

Initial Setup

This integration requires Aurora Commerce to setup the Amazon Pay Aurora Service for each site and each environment it is required. This is done via a request to your Account Manager, and they will require the following information:

  • The url of the site to use the integration.

NOTE: A full Aurora update may also be required, this will depend on when the site in question last had a full Aurora update.

📘

The information in this document contains settings required for the Amazon Pay integration to function, there may be other settings and procedures required by Amazon for you to complete before your store can go live.

Aurora Backend Settings

Store > Settings > Payment Providers

This configuration controls whether Amazon Pay will be accepted as a payment type.

2348
Parameter NameValue For IntegrationNote
Validate Payment TypecheckedControls whether the checkout enforces a strict/reduced list of payment types.

checked = payment types are enforced to the defined list

unchecked = payment types are not enforced to the defined list
Amazon PaycheckedControls whether the Amazon Pay is on the list of payment types

checked = Amazon Pay is on the list of payment types

unchecked = Amazon Pay is not the list of payment types

Store > Settings > Feeds > Microservice > Proxy Amazonpay

This configuration controls the visibility of the Amazon Pay Checkout:

936
Parameter NameValue For IntegrationNote
Enabled?checkedControls whether the Amazon Pay checkout page is accessible on the frontend and if the checkout button is visible

checked = accessible and visible

unchecked = not accessible and not visible
Hide Checkout Button?uncheckedControls whether the Amazon Pay checkout button is visible.

checked = checkout button is not visible

unchecked = checkout button is visible, only if the "Live?" setting is also checked.

Microservice Settings (Store > Microservice > Proxy Amazonpay)

This configuration controls the settings of the Amazon Pay service used by Aurora

Parameter NameValue For IntegrationNote
Store Name"Your Store Name"A suitable user facing store name. This is included in any emails the user sees generated from Amazon Pay
Is Sandboxchecked - for test

unchecked - for live
This controls whether the sandbox mode is enabled for testing the integration.

checked = sandbox mode is enabled

unchecked = sandbox mode is not enabled and real payments will be taken
Strong Customer Authenticationchecked - use SCA

unchecked - do not use SCA
This controls whether Strong Customer Authentication is used, this is available since Aurora Amazon Pay Microservice version ACPROD-1.2

To use SCA requires:

Aurora and the Amazon Pay plugin updated to the above version please ask your AC Account Manager about this.
The website frontend to use the latest versions of the "Aurora Amazon Pay Javascript Library" and "Aurora Amazon Pay UI Javascript Library" see "Assets and Templates" below.

see "Payment Type" for note regarding using SCA

Use of SCA is only compatible with:

Aurora Amazon Pay Javascript Library version v1.2.1
Aurora Amazon Pay UI Javascript Library version v1.2.1
Aurora Core release r23517 5/9/2019
Amazon Pay Microservice version ACPROD-1.2
RegionEUThe region the Amazon account belongs to
Client Id"amzn1.application-oa2-client......."The client id from your Amazon Seller Central (https://sellercentral-europe.amazon.com/) "MWS Access Key" settings
Client Secret"ZXZXX....."The client secret from your Amazon Seller Central (https://sellercentral-europe.amazon.com/) "MWS Access Key" settings
Merchant Id"AOIFWER..."The merchant id from your Amazon Seller Central (https://sellercentral-europe.amazon.com/) "MWS Access Key" settings
MWS Auth Token"amzn.mws.cab......"The MWS auth token from your Amazon Seller Central (https://sellercentral-europe.amazon.com/) User Permissions > Amazon MWS Developer Permissions > MWS Auth Token.

To create an MWS Auth Token for "Aurora Commerce Ltd" ( Developer ID 5755-1278-7339)

1) click "Authorise a Developer" and complete the form:

Developer's Name: "Aurora Commerce Ltd"

Developer ID: "5755-1278-7339"

2) Accept the terms stated by Amazon; if you wish to accept the terms.

3) done, go back to "Amazon MWS Developer Permissions" to retrieve the newly created "MWS Auth Token"
Provider Name"amazonpay"The provider name that should be used for Amazon Pay
Payment Type"DEFERRED"DEFERRED is the recommended payment option from Amazon. This will take an auth for the full amount of the order during checkout but will not capture the funds. The capturing of funds will be triggered manually or automated depending on your store's procedures/configuration.

Using "DEFERRED" in conjunction with "Strong Customer Authentication"

Any release of funds that do not exactly match the original authorization value will result in the release (capture) being processed Asynchronously. This means the immediate result of a triggered release (capture) is not known and must await for a further update from Amazon, therefore any client processes/procedures MUST check the capture status is "OK" before progressing with the order.

Using "PAYMENT" in conjunction with "Strong Customer Authentication"

This will process the capture of funds synchronously if the "Async Auth During Checkout" is unchecked and so the capture final status is known during the customer checkout process. Using "Async Auth During Checkout" (checked) will mean the immediate result of the customer payment is not known and must await for a further update from Amazon, therefore any client processes/procedures MUST check the capture status is "OK" before progressing with the order.
Async Auth During CheckoutuncheckedThis controls whether the auth during checkout is waited for completion before allowing the order to be completed. This should always be unchecked, in the future this option will be supported to allow orders with pending auths to be created and then automatically confirmed at a later time. If this is used a client MUST check/wait for the initial PAYMENT or DEFERRED transaction status is "OK" before progressing an order in any way.
Uk Access Key"AKNO...."This is provided by Aurora Commerce - do not change
Uk Secret Key"ZXZXX....."This is provided by Aurora Commerce - do not change
Uk Platform Id"AODD..."This is provided by Aurora Commerce - do not change
Eu Access Key"AKNO...."This is provided by Aurora Commerce - do not change
Eu Secret Key"ZXZXX....."This is provided by Aurora Commerce - do not change
Eu Platform Id"AODD..."This is provided by Aurora Commerce - do not change
Us Access Key"AKNO...."This is provided by Aurora Commerce - do not change
Us Secret Key"ZXZXX....."This is provided by Aurora Commerce - do not change
Us Platform Id"AODD..."This is provided by Aurora Commerce - do not change
Debug 1 Name""This is used for Sandbox testing see "Test Parameters" below
Debug 1 Value""This is used for Sandbox testing see "Test Parameters" below

Amazon Seller Central Setup

Login to your Amazon Seller Central account: https://sellercentral-europe.amazon.com/)

  • Goto "Login with Amazon" (top menu)
  • Update the following settings for Aurora:
Parameter NameValue For IntegrationNote
Allowed JavaScript Origins"https://demo.auroracommerce.com/"The URLs to your test and production websites. This URL can be found on the Microservice Settings configuration page (see above).
Allowed Return URLs"https://demo.auroracommerce.com/checkout/setup?checkout_type=proxy-amazonpay"The URLs to the Amazon Pay checkout on your test and production websites. This URL can be found on the Microservice Settings configuration page (see above).

Frontend Template Integration

Assets and Templates

A list of the templates and assets used in this integration and should be added to your site templates; see below sections for details on each asset/template.

FilePurposeNote
templates/example.com/_js/amazonpay.jsAurora Amazon Pay Javascript LibraryThis script should be added into any page that uses the Amazon Pay in the frontend e.g. the basket page (see example modification below) and the Amazon Pay checkout page (already added in the template by default).



Requires the jquery library: https://jquery.com/ (version at time of release 3.3.1 )

Requires the aurora template frontend library: templates/example.com/_js/frontend.js

Requires the aurora template checkout library: templates/example.com/_js/checkout.js
templates/example.com/_js/amazonpay-ui.jsAurora Amazon Pay UI Javascript LibraryThis script should be added into any page that uses the Amazon Pay in the frontend e.g. the basket page (see example modification below) and the Amazon Pay checkout page (already added in the template by default).

This library is separated from and amazonpay.js as it is specific to the Aurorademo checkout structure and may not be relevant/useful if you implement a custom checkout.



Requires the jquery library: https://jquery.com/ (version at time of release 3.3.1 )

Requires the aurora template checkout library: templates/example.com/_js/checkout.js
templates/example.com/basket/index.tpl.htmlBasket PageThe page for Aurorademo basket with the Amazon Pay button included. See below for modifying an existing basket template.
templates/example.com/basket/amazon-pay-button.tpl.htmlAmazon Checkout ButtonThe include template for rendering the Amazon Pay button
templates/example.com/checkout/external/amazon-setup.tpl.htmlAmazon Checkout PageThe page for Aurorademo external checkout using Amazon Pay.

Direct links are not (and should not) be made to the checkout page - access to the page should be always done via an Amazon Pay button.
templates/example.com/checkout/external/amazon-config.tpl.htmlAmazon Frontend ConfigurationThe include template for frontend configuration of Amazon Pay functionality. Included in with the checkout button and Amazon checkout page by default.
templates/example.com/checkout/checkout-summary.tpl.htmlCheckout SummaryThe include template for rendering the basket summary and costs. Included in with the Amazon checkout page by default.
templates/example.com/checkout/checkout-delivery.tpl.htmlCheckout Delivery OptionsThe include template for rendering the checkout delivery options. Included in with the Amazon checkout page by default.
templates/example.com/_css/checkout.cssCheckout StylesheetThe stylesheet used to render the checkout page

Aurora Amazon Pay Javascript Library

Template Dependencies:

CSS referenceAttributeNote
.logout_action"click"An element when clicked that will trigger a logout from the current Amazon Pay session
#AmazonPayButtonA div element to place the Amazon Pay button
#addressBookWidgetDivA div element to place the Amazon Pay Address Widget
#walletWidgetDivA div element to place the Amazon Pay Wallet Widget
#frm_access_token"value"A hidden input element to place the address access token for form submission
#frm_order_reference"value"A hidden input element to place the order reference id for form submission
#amazon-checkout-form"submit"This element should be the checkout form. The library will prevent the form submission as required by Amazon Pay. Failure to have this element will result in invalid form submissions, undesired and incorrectly handled errors.

User Error Messages

Error messages are editable in Aurora Backend > Content > Site Text

Aurora Service Errors

User error messages from the Aurora payment service that can be translated, a default translation for "en" is provided.

PagePartNote
CheckoutCheckoutPayment proxy-amazonpay Error: MSRequestInvalidA general error when a request to the payment service cannot be provided. This may be resolvable if the user tries the operation again.
CheckoutCheckoutPayment proxy-amazonpay Error: MSOrderIdInvalidAn error that occurs when a payment request order id does not match the original order id the order was setup with. This should be resolvable if the user tries the operation again.
CheckoutCheckoutPayment proxy-amazonpay Error: MSRefundAmountInvalidThe amount requested in the refund is more than the available captured amount left that can be refunded.
CheckoutCheckoutPayment proxy-amazonpay Error: MSResponseInvalidA general error when a response from the payment service cannot be provided. This may be resolvable if the user tries the operation again.
CheckoutCheckoutPayment proxy-amazonpay Error: MSOrderStateInvalidAn error that occurs if an Amazon Pay order is not in the correct state for the requested operation.
CheckoutCheckoutPayment proxy-amazonpay Error: MSOrderStateForReleaseInvalidAn error that occurs if an Amazon Pay order is not in the correct state for releasing additional funds.
CheckoutCheckoutPayment proxy-amazonpay Error: MSZeroValueOrderAn error that occurs if the Aurora order is zero value. Orders of zero value cannot be processed through the Amazon Pay checkout.
CheckoutCheckoutPayment proxy-amazonpay Error: MSStatusCheckUnsupportedTransactionTypeAn error that occurs when a pending transaction cannot be processed as it is the wrong type.
CheckoutCheckoutPayment proxy-amazonpay Error: MSSCAFailureAn error that occurs when a user fails the Secure Customer Authentication.
CheckoutCheckoutPayment proxy-amazonpay Error: MSSCAAbandonedAn error that occurs when a user abandoned the Secure Customer Authentication.
CheckoutCheckoutPayment proxy-amazonpay Error: MSStatusMapInvalidAn error that would occur if an Amazon payment object status is not recognised by the Aurora Amazon Pay service.

Amazon Pay Errors

User error messages from the Amazon API that can be translated, a default translation for "en" is provided. See https://pay.amazon.com/es/developer/documentation/apireference/201753060 for further details.

New error types can be added using the "Part" format of "CheckoutPayment proxy-amazonpay Error: {ERROR_TYPE}".

PagePartNote
CheckoutCheckoutPayment proxy-amazonpay Error: PaymentPlanNotSet
CheckoutCheckoutPayment proxy-amazonpay Error: PaymentMethodNotAllowed
CheckoutCheckoutPayment proxy-amazonpay Error: AmountNotSet
CheckoutCheckoutPayment proxy-amazonpay Error: InvalidPaymentMethod
CheckoutCheckoutPayment proxy-amazonpay Error: AmazonRejected
CheckoutCheckoutPayment proxy-amazonpay Error: ProcessingFailure
CheckoutCheckoutPayment proxy-amazonpay Error: TransactionTimedOut
CheckoutCheckoutPayment proxy-amazonpay Error: InvalidOrderReferenceStatus
CheckoutCheckoutPayment proxy-amazonpay Error: TransactionAmountExceeded
CheckoutCheckoutPayment proxy-amazonpay Error: InvalidParameterValue
CheckoutCheckoutPayment proxy-amazonpay Error: ConstraintsExist
CheckoutCheckoutPayment proxy-amazonpay Error: InvalidTransactionId
CheckoutCheckoutPayment proxy-amazonpay Error: OrderReferenceNotModifiable
CheckoutCheckoutPayment proxy-amazonpay Error: ConstraintsExist-PaymentMethodNotAllowed
CheckoutCheckoutPayment proxy-amazonpay Error: ConstraintsExist-CurrencyMismatch
CheckoutCheckoutPayment proxy-amazonpay Error: ConstraintsExist-CurrencyUnsupported
CheckoutCheckoutPayment proxy-amazonpay Error: InvalidAddressConsentToken
CheckoutCheckoutPayment proxy-amazonpay Error: AccessDenied
CheckoutCheckoutPayment proxy-amazonpay Error: InvalidAuthorizationStatus

Payment Error After Amazon Order Confirmed 

📘

Note most errors are handled via the above site text. If an error occurs after an order has been confirmed but the payment failed, only the payment widget will be shown to allow the customer to resolve the payment issue on the confirmed order. In this scenario the user may not change anything about the the order apart from the method of payment.

See screenshot below:

Implementation Note:

The error is triggered from the Aurora Amazon Javascript library (templates/example.com/_js/amazonpay.js) and calls "amazon_pay_config.addressbook_hide_callback". The default template "templates/example.com/checkout/external/amazon-setup.tpl.html" handles this by displaying the following html:

Default Error messages provide by Amazon

The following error messages are provided by Amazon for use when translating some of the standard error messages. The UK messages are already pre-populated into Aurora, you will need to add the other translations as needed for your site.

UK - English

1The selected payment method is not available for this transaction. Please select another one or add a new payment method to the wallet widget.
2Your payment could not be processed, please follow the instructions in the payment method box.
3Your payment could not be processed. Please try to place the order again using another payment method.

IT - Italian

1Il metodo di pagamento selezionato non è disponibile per questa transazione. Per favore selezionarne o aggiungerne un altro nel wallet widget.
2Non è stato possibile processare il pagamento, per favore seguire le istruzioni nel widget di pagamento.
3Non è stato possibile processare l’ordine. Per favore provare a processare l’ordine di nuovo, usando un altro metodo di pagamento.

 DE - German

1Die gewählte Zahlungsart ist für diese Transaktion nicht verfügbar. Bitte ändern Sie die gewünschte Zahlungsart oder legen Sie eine neue Zahlungsart an.
2Ihre Zahlung konnte nicht verarbeitet werden. Bitte folgen Sie den unten aufgeführten Anweisungen von Amazon Pay.
3Ihre Zahlung konnte nicht verarbeitet werden. Bitte wählen Sie eine andere Zahlungsart und führen die Bestellung erneut durch.

 ES - Spanish

1El método de pago seleccionado no está disponible para esta transacción. Por favor, seleccione otro o introducza uno nuevo en el recuadro Metodo de pago.
2No ha sido posible procesar su pago. Por favor, siga las instrucciones indicadas en el recuadro Metodo de pago.
3No ha sido posible procesar su pago. Por favor, intente efectuar el pedido nuevamente utilizando otro método de pago.

FR - French

1Le mode de paiement sélectionné n'est pas disponible pour cette transaction. Veuillez s’il vous plait en sélectionner un autre ou en ajouter un nouveau dans le widget contenant vos méthodes de paiement.
2Votre paiement n'a pas pu être traité, veuillez suivre les instructions affichées dans le widget contenant vos méthodes de paiement.
3Votre paiement n'a pas pu être traité. Veuillez s’il vous plait essayer de passer la commande à nouveau en utilisant un autre mode de paiement.

Modifications from default:

Basket Page - templates/example.com/basket/index.tpl.html

You may already have an existing basket template. To add the Amazon Pay checkout button, do the following modifications:

  • Add the Aurora Amazon Pay javascript library:
{include file="\_includes/header.tpl.html" page\_js\_template="basket-paypal-credit,**amazonpay,amazonpay-ui**"}

OR if you load js libraries in the footer:

{include file="\_includes/footer.tpl.html" page\_js\_template="basket-paypal-credit,**amazonpay,amazonpay-ui**"}

This is relying on your "_includes/header.tpl.html" or "_includes/footer.tpl.html" including the the js libraries in the following manner:

{include\_js files="$page\_js\_template"}  
  • Add the Amazon Pay checkout button:
{include file="basket/amazon-pay-button.tpl.html"}

Configuration

You may wish to alter the default frontend configuration template:

<script language="javascript" type="text/javascript">
{literal}
var amazon_pay_config = amazon_pay_config || {}; 
{/literal}
amazon_pay_config.checkout_type = 'proxy-amazonpay';
amazon_pay_config.logging = false;
amazon_pay_config.currency = '{$currency_iso_chargeable}';
amazon_pay_config.language = '{$language_iso_selected}';
amazon_pay_config.url_prefix = '{if $language_iso}/{$language_iso}{/if}';
//see https://pay.amazon.com/uk/developer/documentation/lpwa/201952050
amazon_pay_config.button_type = 'PwA';
amazon_pay_config.button_size = 'medium';
amazon_pay_config.button_color = 'Gold';
amazon_pay_config.popup = true;
amazon_pay_config.msg_select_payment = 'Please select a payment method';
amazon_pay_config.msg_session_expired = 'Your session has expired. Please sign in again by clicking on the Amazon Pay Button.';
</script>
Parameter NameValue For IntegrationTypeNote
checkout_type"proxy-amazonpay"stringThe Amazon Pay checkout type
loggingfalsebooleanControls the debug information sent to the browser console. This should only be set to true on test for debugging purposes.

true - debug logging information sent to console
false - no debug logging information sent to console
currency"{$currency_iso_chargeable}"stringThe chargeable currency the user will use in Amazon Pay. The template variable "{$currency_iso_chargeable}" is replace with the user's currently selected chargeable currency. Note that a user's viewable currency might not be the currency they will be charged in.

Amazon pay uses ISO-4217 currency code. Note that Amazon should be contacted regarding using multiple or different currencies see https://pay.amazon.com/uk/help/201810860#_How_does_Amazon_q6
language"{$language_iso_selected}"stringThe language for the Amazon Pay user interface. The template variable "{$language_iso_selected}" is replaced with the the iso of the user's currently selected Aurora language.

For languages values available see:

https://amazonpaylegacyintegrationguide.s3.amazonaws.com/docs/eu/amazon-pay-onetime/add-a-button.html#language
url_prefix"{if $language_iso}/{$language_iso}{/if}"stringThe url prefix used for displaying the frontend in the correct language for the user.
button_type"PwA"string"PwA" (Pay with Amazon) should always be used.

The button type for the Amazon Pay button see:

https://amazonpaylegacyintegrationguide.s3.amazonaws.com/docs/eu/amazon-pay-onetime/add-a-button.html#type
button_size"medium"stringThe button size for the Amazon Pay button see:

https://amazonpaylegacyintegrationguide.s3.amazonaws.com/docs/eu/amazon-pay-onetime/add-a-button.html#size
button_color"Gold"stringThe button colour for the Amazon Pay button see:

https://amazonpaylegacyintegrationguide.s3.amazonaws.com/docs/eu/amazon-pay-onetime/add-a-button.html#color
popuptruebooleanThe login method used for the Amazon Pay button see:

https://amazonpaylegacyintegrationguide.s3.amazonaws.com/docs/eu/amazon-pay-onetime/add-a-button.html#popup

true - means a popup window is triggered for Amazon login.
false - means the user is redirected away from the site for Amazon login and then back to the site (useful for mobile devices).

This could be updated dynamically using javascript to use true or false depending on the user's browser/device type e.g. mobile or desktop.
checkout_form_id"amazon-checkout-form"stringThe id of the checkout form element to use.
msg_select_payment'Please select a payment method'stringA message to display if the user must choose a payment method.
msg_session_expired'Your session has expired. Please sign in again by

clicking on the Amazon Pay Button.'
stringA message to display if the user must login again to Amazon Pay.
msg_no_access_consent'You did not grant access to your details for the Amazon Pay Checkout which is required.'stringA message to display if the user did not grant access to their Amazon Pay details for the checkout.

Events

Event NameNote
amz_authorize.beforeEvent triggered prior to Amazon authorization popup. Allows prevention of popup e.g. if custom validation needed.



Example code to implement (note "customValidation" is a non-existent function to illustrate the example code) :

<br>$.frontend.events.on('amz_authorize.before', function (event, source_element, json_response) {<br> if(!customValidation()) {<br> event.preventDefault();<br> }<br>});<br>

Amazon Frontend Design Resources

Amazon Sandbox Testing

Test User Accounts

These are created by accessing your account on https://sellercentral-europe.amazon.com/ > "Amazon Pay (Sandbox View)" > "Test Your Integration" > "create test buyer accounts"

Test Cards

The Amazon payment widget has various test cards for error scenarios: https://developer.amazon.com/docs/eu/amazon-pay-onetime/sample-addresses-and-payment-instruments.html

CardAmazon NoteExpected Aurora Behaviour
...1111VisaUser redirected to order complete.
...4444MasterCardUser redirected to order complete.
...0005American ExpressUser redirected to order complete.
....9424Solo/MaestroUser redirected to order complete.
...5656Use this payment method to simulate an authorization declined with ReasonCode TransactionTimedOut.User redirected through Amazon simulation and returned to the basket with site text error "CheckoutPayment proxy-amazonpay Error: TransactionTimedOut".
...4545Use this payment method to simulate the PaymentMethodNotAllowed constraint.User redirected through Amazon simulation and returned to the checkout with site text error "CheckoutPayment proxy-amazonpay Error: ConstraintsExist-PaymentMethodNotAllowed".
...2323Use this payment method to simulate an authorization declined with ReasonCode AmazonRejected.User redirected through Amazon simulation and returned to the basket with site text error "CheckoutPayment proxy-amazonpay Error: AmazonRejected".
...3434Use this payment method to simulate an authorization declined with ReasonCode InvalidPaymentMethod.User redirected through Amazon simulation and return to checkout with site text error "CheckoutPayment proxy-amazonpay Error: InvalidPaymentMethod" and prompt to change the payment option with shipping and address options not available.

At time of writing, not documented on the above link are additional payment instruments for Secure Customer Authentication:

The following payment methods only work correctly with SCA turned on, if it is not turned on then all cards trigger the user to be redirected to the checkout with a generic error to change the payment option. Choosing a different card will then allow the user to complete the order.

CardAmazon NoteExpected Aurora Behaviour
...6543Use this payment method to simulate an MFA challenge that returns AuthenticationStatus Success.User redirected through Amazon simulation to order complete.
...4440Use this payment method to simulate an MFA challenge that returns AuthenticationStatus Abandoned.User redirected through Amazon simulation and return to checkout with site text error "CheckoutPayment proxy-amazonpay Error: MSSCAAbandoned" and prompt to change the payment option with shipping and address options not available.
...8320Use this payment method to simulate an MFA challenge that returns AuthenticationStatus Failure.User redirected through Amazon simulation and returned to the basket with error "CheckoutPayment proxy-amazonpay Error: MSSCAFailure".
...3923Use this payment method to simulate an MFA challenge that returns AuthenticationStatus Skipped.User redirected through Amazon simulation to order complete.

Test Parameters

Amazon allow setting of testing parameters for scenario simulations, see https://developer.amazon.com/docs/eu/amazon-pay-onetime/sandbox-simulations.html

To use the test scenarios requires updating the Microservice settings "Debug 1 Name" and "Debug 1 Value" see table below for examples:

🚧

These settings apply to all sandbox payments made and so they should be removed immediately after use to avoid confusion on site testing, especially if a shared testing environment.

AreaScenario NoteDebug 1 NameDebug 1 Value
OrderPaymentMethodNotAllowedSellerNote{"SandboxSimulation":{"Constraint":"PaymentMethodNotAllowed"}}
AuthorizationInvalidPaymentMethodSellerAuthorizationNote{"SandboxSimulation": {"State":"Declined", "ReasonCode":"InvalidPaymentMethod", "SoftDecline":"false"}}
AuthorizationAmazonRejectedSellerAuthorizationNote{"SandboxSimulation": {"State":"Declined", "ReasonCode":"AmazonRejected"}}
AuthorizationTransactionTimedOutSellerAuthorizationNote{"SandboxSimulation": {"State":"Declined", "ReasonCode":"TransactionTimedOut"}}
AuthorizationAmazonClosedSellerAuthorizationNote{"SandboxSimulation": {"State":"Closed", "ReasonCode":"AmazonClosed"}}
CaptureAsynchronous CaptureSellerCaptureNote{"SandboxSimulation": {"State":"Pending"}}
CaptureAmazonRejectedSellerCaptureNote{"SandboxSimulation": {"State":"Declined", "ReasonCode":"AmazonRejected"}}
CaptureAmazonClosedSellerCaptureNote{"SandboxSimulation": {"State":"Closed", "ReasonCode":"AmazonClosed"}}
RefundAmazonRejectedSellerRefundNote{"SandboxSimulation": {"State":"Declined", "ReasonCode":"AmazonRejected"}}

Troubleshooting

Customer Login Error

If you see the following after customer login:

Then you need to whitelist the website URL.

Place Order button does not allow the checkout form to submit

Note that a loading element with nested content is required to be present and hidden (display:none) in the checkout page to allow control of the checkout form submission.

The following element is an example from "templates/example.com/checkout/external/amazon-setup.tpl.html" (the definition of the class "checkout_loading_graphic" is in "templates/example.com/_css/checkout.css":

<div class="checkout_loading_graphic" ><img src="/templates/{$templates_dir}/_images/backgrounds/loading.gif" alt="" /></div>

Encountering  "Please supply a valid telephone number. It can only contain digits, hyphens or spaces." error after clicking "place order" Error after trying to place order

This error was due to the the phone number in the users' address not matching Aurora's validation requirements. Some possible options to resolve this issue:

  • Review the test account used and whether the phone number format used is something that real users would use and needs to be supported.
  • Override/customise the Aurora default phone validation see Aurora Backend > Store > Validation 
  • Update the error message used to ask the user to create or amend their Amazon address via the Amazon widget/account management (this is not a simple/good user experience).