Configuring Amazon Pay

Learn how to configure Amazon Pay for DigitalRiver.js with Elements

Integrating Amazon Pay into your app or website provides customers with a seamless and secure payment option using their Amazon account. This guide will walk you through creating an AmazonPay source with Digital River.js, ensuring a smooth payment process for one-time and subscription-based transactions. Follow these steps to enhance your checkout experience with Amazon Pay.

If you're using DigitalRiver.js with Elements, you can create an Amazon Pay payment method for your app or website in two easy steps:

Step 1: Create an Amazon Pay source using Digital River.js

Amazon Pay is different from other payment methods. The shopper's payment information is pulled into the cart directly from their Amazon Pay account.

To create an Amazon Pay payment source, follow the instructions in the DigitalRiver.js reference guide. If the shopper is paying for a subscription, you must provide the mandate.terms that the customer agreed to on your storefront and set autoRenewal to true, and futureUse to true.

Create an Amazon Pay element

After setting up your library per the DigitalRiver.js reference guide, create an Amazon Pay element with any customizations you would like to apply.

var options = {
    style: {
        color: 'DarkGray', // one of ['Gold', 'LightGray', 'DarkGray']
        height: '100px'
    },
    sourceData: {
        type: 'amazonPay',
        sessionId: sessionId,
        country: 'US', // required if your session does not contain shopper country
        futureUse: true, // required if you intend to use for recurring billing
        usage: 'subscription', //only required if futureUse is true - should be one of ['subscription', 'convenience', ]
        mandate: { // required for recurring/reusable
            terms: 'Yes, please save this account and payment information for future purchases.'
        },
    amazonPay: {
        //Amazon Pay will redirect to this URL after the buyer signs in
        returnUrl: '<return.com URL>', 
        //where the shopper will be returned after authorizing at Amazon Pay 
        resultReturnUrl: '<resultreturn.com URL>', 
        //Amazon Pay will redirect to this URL if the buyer cancels sign-in on the Amazon Pay hosted page
        cancelUrl: '<cancel.com URL>', 
        // Placement of the Amazon Pay button on your website. One of ['Home', 'Cart', 'Product', 'Checkout', 'Other']
        placement: 'Product', 
        // optional, one of ['en_US', 'en_GB', 'de_DE', 'fr_FR', 'it_IT', 'es_ES', 'ja_JP']
        checkoutLanguage: 'fr_FR',

        // New optional fields that restrict shipping country.
        allowShippingCountries: ['US','GB','DE','CA'], //Only US, GB, DE, and CA will be displayed as shipping country options on Amazon Pay
        denyShippingCountries: ['TW','BR','FR','IT']   //TW, BR, FR, IT won’t be displayed as shipping country options on Amazon Pay

    }
};

var amazonpay = digitalriver.createElement('amazonpay', options);
amazonpay.mount('amazonpay');
Attribute
Description

country

An optional string that represents an ISO 3166-1 alpha-2 country code. This is required when your session does not contain a shopper country.

returnUrl

The return URL redirects users to the Order Summary or Order Confirmation page. The shopper will be redirected to your Order Summary or Order Confirmation page after the shopper signs in to Amazon Pay and selects and confirms payment.

resultReturnUrl

A redirect to your Thank You page.

After Amazon Pay processes the payment, the shopper is redirected to your Thank You page.

cancelUrl

A redirect from the cancelled login page to a page specified by you. Amazon will redirect the shopper to this cancellation URL if the shopper cancels their checkout on the Amazon Pay hosted page.

placement

The location where you placed the Amazon Pay button on your website. Your options are Home, Cart, Product, Checkout, or Other. Note: If you place the Amazon Pay button on the Checkout page, it is a standard checkout. If you place it on Home, Cart, Product, or Other page, it is an express checkout.

checkoutLanguage

The language used on the checkout page. Your options are en_US, en_GB, de_DE, fr_FR, it_IT, es_ES, or ja_JP.

allowShippingCountries

Specify the countries you want to allow shipping to by listing their two-letter country codes. Only addresses associated with these countries will be available as shipping destinations in the Amazon Pay wallet. Note: If a country code appears in both allowShippingCountries and denyShippingCountries, the allow list takes precedence, ensuring the country is available for shipping.

denyShippingCountries

List the two-letter country codes of the countries you want to exclude from shipping options. These addresses associated with these countries will not appear as selectable options in the Amazon Pay wallet.

See How it works for more information on Amazon Pay's Express Checkout flow.

Step 2: Use the authorized source

Integrating Amazon Pay into your checkout process simplifies the transaction for your customers and not only simplifies the transaction for your customers but also leverages the trust and ease associated with Amazon's payment system. After customizing your setup as detailed above, the next crucial step involves effectively using the authorized payment source. This guide outlines how to attach the authorized Amazon Pay source to a shopping cart or a customer profile for different operational scenarios, such as one-time purchases or subscriptions. Following these steps ensures a seamless checkout experience that enhances customer satisfaction and streamlines your sales process.

Option 1. Attach the source to a cart

Once the shopper signs in to Amazon and authorizes the source, you can attach the source to a cart.

{
  "paymentMethod": {
    "sourceId": "e7ba0595-059c-460c-bad8-2812123b9313"
  }
}

Option 2. Attach the source to a shopper

Once the shopper signs in to Amazon and authorizes the source for a subscription, you can attach the source for the customer.

{
  "paymentOption": {
    "nickName": "My Token",
    "isDefault": "true",
    "sourceId": "61033d62-c0f4-4a7e-b844-07daf26ba84e"
  }
}

Last updated