Introducing Express Checkout

Express Checkout is PayPal's premier checkout solution that streamlines the checkout process for buyers and keeps them on a merchant's website after making a purchase.

The Express Checkout Experience

Express Checkout makes it easier for buyers to pay online. It also enables you to accept PayPal while retaining control of the buyer and the overall checkout flow.

Consider your buyers' experience before implementing Express Checkout. A generic flow probably has the following sequence of pages:

Figure 1. A generic checkout flow

In a typical checkout flow, a buyer:

  1. Checks out from the shopping cart page
  2. Provides shipping information
  3. Chooses a payment option and provides billing and payment information
  4. Reviews the order and pays
  5. Receives an order confirmation

In an Express Checkout flow, a buyer still checks out at the beginning of the flow. However, the buyer does not enter shipping, billing, or payment information, because PayPal provides the stored information. This simplifies and expedites the checkout process.

The following diagram shows the Express Checkout flow:

Figure 2. Express Checkout flow

In the Express Checkout flow, the buyer:

  1. Chooses Express Checkout by clicking Check out with PayPal
  2. Logs into PayPal to authenticate his or her identity
  3. Reviews the transaction on PayPal
    Note: Optionally, (not shown in the diagram), the buyer can then proceed to review the order on your site. You can also include other checkout steps, including upselling on your Confirm order page.
  4. Confirms the order and pays from your site
  5. Receives an order confirmation

Express Checkout Integration Steps

You can implement Express Checkout in 4 steps:

  1. Place PayPal checkout buttons and PayPal payment mark images in your checkout flow.
  2. For each PayPal button that you place, modify your page to handle the button click. Use a PayPal Express Checkout API operation to set up the interaction with PayPal and redirect the browser to PayPal to initiate buyer approval for the payment.
  3. On your Confirm order page, use PayPal Express Checkout API operations to obtain the shipping address and accept the payment.
  4. Test your integration using the PayPal Sandbox before taking your pages live.

Because PayPal offers you the flexibility to control your checkout flow, you should first understand how your current checkout flow works, then, become familiar with the Express Checkout flow. Start by reviewing Express Checkout Flow. For additional background information to help you get started, see Express Checkout Building Blocks.

Configuring and Customizing the Express Checkout Experience

After you implement and test your basic Express Checkout integration, you should configure the additional features of Express Checkout to customize it to meet your needs. Carefully evaluate each feature because the more you streamline the checkout process and make Express Checkout seamless to buyers, the more likely your sales will increase. At a minimum, you should:

  • Set your logo on the PayPal site and provide order details in the transaction history.
  • Use the PayPal Review your information page as your Confirm order page to further streamline the user experience when you do not need the benefits associated with paying on your site. This strategy can lead to a better order completion rate, also known as a conversion rate.

Configure the look and feel of PayPal pages to match the look and feel of your site by specifying the:

  • Logo to display
  • Gradient fill color of the border around the cart review area
  • Language in which PayPal content is displayed

You should include:

  • Order details, including shipping and tax, during checkout
    TipImportant: Not displaying this information is a major cause of shopping cart abandonment during checkout.
  • Shipping information for non-digital goods, which can be your address information for the buyer or the address on file with PayPal; if you use the address on file with PayPal, you can specify whether or not it must be a confirmed address

You can also activate additional features, including:

  • Associate a payment with an eBay auction item
  • Assign an invoice number to a payment
  • Accept payments with giropay (Germany only)

Additional PayPal API Operations

You can use PayPal API operations to include advanced processing and back-office processes with Express Checkout. You can:

  • Capture payments associated with authorizations and orders
  • Process recurring payments
  • Issue refunds, search transactions using various criteria, and provide other back-office operations

Express Checkout Flow

To implement Express Checkout, you must offer it both as a checkout option and as a payment method. Typically, you initiate the Express Checkout flow on your shopping cart page and on your payment options page.

You add Express Checkout to your existing flow by placing the Checkout with PayPal button on your Shopping Cart page and by placing the PayPal mark on your Payment Methods page. The following diagram shows the complete flow:



Make the following changes to implement the complete Express Checkout flow:

  • On your Shopping cart page, place the Checkout with PayPal button. Handle clicks by sending the Express Checkout setup request. After receiving the response, redirect your buyer's browser to PayPal.
  • On your Payment methods page, associate the PayPal mark with an option. Handle clicks by sending the Express Checkout setup request. After receiving the response, redirect your buyer's browser to PayPal.
  • On the page your buyer returns to, obtain shipping information from PayPal and accept the payment to complete the Express Checkout transaction.
Note: You also can allow the buyer to pay on the PayPal Review your information page. In this case, your checkout flow can omit your Confirm order page and proceed directly to your Order confirmation page.

Checkout Entry Point

The checkout entry point is one of the places where you must implement Express Checkout. Buyers initiate the Express Checkout flow on your shopping cart page by clicking the Checkout with PayPal button.

The following diagram shows how Express Checkout integrates with a typical checkout flow:



Payment Option Entry Point

The payment option entry point is one of the places where you must implement Express Checkout. Buyers initiate the Express Checkout flow on your payment methods page by selecting PayPal as the default option.

The following diagram shows how to integrate Express Checkout from your payment methods page:



Express Checkout Building Blocks

You implement Express Checkout flows with Express Checkout buttons, PayPal API operations, PayPal commands, and tokens.

The following conceptual diagram identifies the building blocks that you use to integrate Express Checkout on your website:



A token is a value assigned by PayPal that associates the execution of API operations and commands with a specific instance of a user experience flow.

Note: Tokens are not shown in the diagram.

PayPal Button and Logo Images

To inform buyers that PayPal is accepted on your website, you must place PayPal button and logo images in your checkout flow. PayPal recommends that you use dynamic images.

PayPal requires that you use Check out with PayPal buttons and PayPal mark images hosted on secure PayPal servers. When the images are updated, the changes appear automatically in your application. Do not host copies of the PayPal images locally on your servers. Outdated PayPal buttons and images reduce buyer confidence in your site.

Express Checkout Image Flavors

The Check out with PayPal button and the PayPal mark image are available in two flavors:
  • Dynamic image
  • Static image

The dynamic images enable PayPal to change their appearance dynamically. If, for example, you have signed up to participate in a PayPal campaign, PayPal can change the appearance of the image dynamically for the duration of that campaign based on parameter information you append to the image URL. The static images cannot be changed dynamically. To participate in a PayPal campaign, you would have to manually update the image code to change the image displayed and restore the default image when the campaign is over. The only way you can have image management taken care of for you is to replace static images in your implementation with dynamic images.

Express Checkout Images

The Check out with PayPal button is the image you place on your shopping cart page. The US version of the image looks like this.



To create an Express Checkout button, see https://www.paypal.com/us/cgi-bin/webscr?cmd=xpt/Merchant/merchant/ExpressCheckoutButtonCode-outside. PayPal also provides buttons for other countries. To locate a page for another country, replace the country abbreviation in the link with another country abbreviation. For example, replace us with uk for United Kingdom, as follows: https://www.paypal.com/uk/cgi-bin/webscr?cmd=xpt/Merchant/merchant/ExpressCheckoutButtonCode-outside. PayPal hosts images for the countries:

Table 1. Country-specific buttons and images
Country URL Change Country URL Change Country URL Change Country URL Change
Australia au Austria at Belgium be Canada ca
China cn France fr Germany de Italy it
Japan j1 Netherlands nl Poland pl Spain es
Switzerland ch United Kingdom uk United States us    
Note: URL changes are case sensitive. The abbreviation in the URL may not be a country code.

Payment Mark

The PayPal mark is the image you place on your payment methods page. It looks like this:



To implement PayPal as a payment option, which is part of the Express Checkout experience, associate the PayPal mark image with your payment options. PayPal recommends using radio buttons for payment options:



To create a PayPal mark, see https://www.paypal.com/cgi-bin/webscr?cmd=xpt/Marketing/general/OnlineLogoCenter-outside.

Express Checkout API Operations

The PayPal API provides three API operations for Express Checkout. These API operations set up the transaction, obtain information about the buyer, and handle the payment and completes the transaction.

API Operation Description
SetExpressCheckout Sets up the Express Checkout transaction. You can specify information to customize the look and feel of the PayPal site and the information it displays. You must include the following information:
  • URL to the page on your website that PayPal redirects to after the buyer logs into PayPal and approves the payment successfully.
  • URL to the page on your website that PayPal redirects to if the buyer cancels.
  • Total amount of the order or your best estimate of the total. It should be as accurate as possible.
GetExpressCheckout Obtains information about the buyer from PayPal, including shipping information.
DoExpressCheckoutPayment Completes the Express Checkout transaction, including the actual total amount of the order.

Express Checkout Command

PayPal provides a command that you use when redirecting your buyer's browser to PayPal. This command enables your buyer to log in to PayPal to approve an Express Checkout payment.

When you redirect your buyer's browser to PayPal, you must specify the _ExpressCheckout command for Express Checkout. You also specify the token that identifies the transaction, which was returned by the SetExpressCheckout API operation.

Note: To enable PayPal to redirect back to your website, you must have already invoked the SetExpressCheckout API operation, specifying URLs that PayPal uses to redirect back to your site. PayPal redirects to the success URL when the buyer pays on PayPal; otherwise, PayPal redirects to the cancel URL.

If the buyer approves the payment, PayPal redirects to the success URL with the following information:

  • The token that was included in the redirect to PayPal
  • The buyer's unique identifier (Payer ID)

If the buyer cancels, PayPal redirects to the cancel URL with the token that was included in the redirect to PayPal.

Express Checkout Token Usage

Express Checkout uses a token to control access to PayPal and execute Express Checkout API operations.

The SetExpressCheckout API operation returns a token, which is used by other Express Checkout API operations and by the _ExpressCheckout command to identify the transaction. The life of the token is approximately 3 hours.