Please note that the Amazon Pay integration currently only supports US based merchants.
Before getting started - we recommend ensuring that the types of products/services you will be selling through Amazon Pay will meet their Acceptable Use policy. Amazon currently do not allow donations to be accepted, or to sell alcohol or smoking/tobacco products, along with a number of other restrictions. If you're not sure if your business type is supported, we recommend reaching out to Amazon Pay support to clarify with them.
Some of our users have run into errors accepting payments for larger dollar amounts. This is due to Amazon's “sales velocity”. This is beyond our control at FoxyCart, but is worth checking with Amazon about if you sometimes get large orders or if you're expecting more sales than usual.
Amazon limits the monthly charges a new Seller can make to a customers account when they chose to store their payment information with your store. Please see their policy for more information and how to contact them to request an increase.
If you haven't previously connected your Amazon Pay to Foxy, we strongly recommend using the approach detailed above to link your Amazon Pay account to your Foxy store. If you have existing Amazon Pay credentials that you need to add to your Foxy store though, you can follow these instructions:
amzn.mws.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
where the x
's are hex characters (letters and numbers). Copy and paste its value to the appropriate field in the FoxyCart configuration page.Important: Ensure this step is completed for your Amazon Pay account, as without it transactions could fail to complete correctly.
The Instant Payment Notification (IPN) feature allows FoxyCart to be informed about any delayed payment status changes that may occur at Amazon.
To add this setting:
https://FOXYCART-STORE-DOMAIN/ipn.php
. mystore.foxycart.com
, your IPN URL would be https://mystore.foxycart.com/ipn.php
. secure.mystore.com
, your IPN URL would be https://secure.mystore.com/ipn.php
.
https://yourstore.foxycart.com/checkout
, then the value for 'Allowed JavaScript Origins' should be https://yourstore.foxycart.com/
https://yourstore.foxycart.com/checkout
, you will need to enter an “Allowed Return URL” of https://yourstore.foxycart.com/checkout?fc_payment_method=amazon_aws
When you first access the Sandbox environment through Seller Central, Amazon recommends configuring some test buyer accounts to help with your integration testing. These test accounts can be modified to suit most use cases, including the addition of shipping addresses that might violate a business rule your company has about where items can be shipped. You can configure these accounts from Seller Central by going to the “Integration” tab and selecting “Test Accounts”.
With the customization available through Seller Central, Amazon encourages you to test as many scenarios as you see fit through multiple test buyer accounts.
If a customer's subscription has ended up in a suspended state due to a payment method being declined - they will need to update their payment details in their Amazon Pay account. You can send them to this page for steps they can take to bring the agreement back into an open state.
If when trying Amazon Pay after entering your credentials in the administration you receive an error notice in the popup, look for the “Show Details” link and click that to see technical details for what went wrong. Usually you will see the following:
Error Summary 400 Bad Request The domain on which you are using the JavaScript SDK has not been whitelisted for your application.
This occurs when your Login with Amazon configuration is incorrect for your domain. To remedy this, login to your seller central account and choose 'Login with Amazon' from the drop-down menu at the top menu bar. Next, click the name of your configured application in the left sidebar and look for the section named 'Web Settings'. In the web settings section look for a configuration value called “Allowed JavaScript Origins” and ensure the value entered there matches the secure url on which the 'Pay with Amazon' button lives. For example, if the button was clicked from https://yourstore.foxycart.com/cart
then the value for 'Allowed JavaScript Origins' should be https://yourstore.foxycart.com
An Amazon FPS transaction may not process instantly, so at the time we process the initial transaction, we don't know if it was approved or not. To handle this, transactions are initially marked as pending, and when we get a confirmation from Amazon on the result of the transaction, we update it accordingly. Each time the status changes, a datafeed will be sent to your endpoint if configured with the transaction details and the status node will be present.
The status node can contain one of three different values: pending
, approved
or rejected
. Depending on the types of actions you're needing to perform at your datafeed endpoint, you need to make sure the appropriate status value is present.
If you have tips, experience, or helpful notes related to this gateway that would benefit others, please add them below, including your name and the date. We reserve the right to edit or remove comments that don't add value to this page.