View on GitHub

Amazon Pay SDK Samples

Amazon Pay - Quick Start for a Simple Checkout

Test Cart

This is a test cart to show which calls need to be made to allow a buyer to make a purchase.

Note: This is a sandbox transaction. Your payment method will not be charged.

Product Description Quantity Total
Baldwin Entry Door Knob
Baldwin's Classic knob gives a comforting and invitingly warm impression. Clean lines and simple, architecturally-inspired designs exemplify timeless sophistication.
1 175.00

When logging in, you must use a sandbox test account. To create a test account:

  1. Login to Seller Central
  2. Select "Amazon Pay (Sandbox View)" from the picklist at the top of the screen
  3. Hover over the "Integration" option at the top of the screen
  4. Select "Test Accounts" from the Integration menu
  5. Click the "Create a new test account" button and follow the instructions


Create the button container.

<div id="AmazonPayButton"></div>

Add script to set the client Id.

    window.onAmazonLoginReady = function () {
        window.onAmazonPaymentsReady = function() {

Import widgets javascript. This must be loaded after you set the client Id above.

<script async='async' src=''></script>
<script async='async' src=''></script>
<script async='async' src=''></script>
<script async='async' src=''></script>

Render the button. Note: You will need to add your domain to 'Allowed JavaScript Origins' in Seller Central. If you are testing locally you can use 'http://localhost'. Production sites must have a valid certificate and use https.

    function showButton() {               
        var authRequest;
        OffAmazonPayments.Button("AmazonPayButton", "MERCHANT_ID", {
             type: "PwA",
             color: "Gold",
             size: "large",
             language: "en-UK",
            authorization: function () {
                loginOptions = { scope: "profile payments:widget payments:shipping_address", popup: true };
                authRequest = amazon.Login.authorize(loginOptions, "");
            onError: function(error) {
                        // your error handling code.
                        // alert("The following error occurred: " 
                        //        + error.getErrorCode() 
                        //        + ' - ' + error.getErrorMessage());