Concept - Basket Handling and Checkout - WebShop Application

1 Introduction

Cart and checkout is one of the main processes of the application B2C WebShop where many features are integrated. This concept gives an overview of the page flow and explains which pipelines and components are involved.

2 References

3 Page Flow

The cart and checkout flow consists of the following steps:

  • Cart
  • Addresses
  • Shipping
  • Gifting
  • Payment
  • Review
  • Receipt

For every step there is a separate CMS page. Currently, the cart and checkout page are not completely componentized. Instead, a working template (ISML) is used within the cart and checkout page layout.

cms_pages_gliffy

The page flow is implemented using view pipelines. Typically, there is one view pipeline per page. Checkout step view pipelines have at least 3 start nodes:

  • Start- The page is called from a previous step.
  • Review- The page is called again from the same step or the user returns from one of the next steps.
  • AdjustedEntryPoint- The user tried to jump to one of the next steps, but the step was not reachable yet (e.g., the user tried to jump to the shipping step although no addresses have been specified)

Additionally, there can be more start nodes dependent on the functionality of the page.

3.1 Page Flow - Overview

concept cart and checkout - flow

3.1.1 Fast Checkout

Fast checkout is a checkout flow like PayPal Express, where the address, shipping and payment step in the web shop is skipped. Instead, the customer is redirected directly from the cart to the payment provider page and the addresses stored at the payment provider are used. For details see Concept - Payment Framework

3.1.2 Checkout Acceleration

The idea behind this feature is that the customer can skip all the checkout steps where the necessary information is already provided. For example, a registered customer who has a preferred shipping and billing address and who has also specified a default payment method, jumps from the cart page directly to the review page. Of course, the customer can go back to the address, shipping or payment page to make some changes.

This feature can be enabled/disabled for an application from the channel backoffice on the Applications | <application name> | Shopping Cart & Checkout tab:

checkout_acceleration_gliffy

3.1.2.1 Implementation Details

3.1.2.1.1 ProcessCheckout-DefaultSettings

Each checkout step view pipeline ViewCheckout[Addresses|Shipping|Payment|Review]-Start in the checkout process first calls the pipeline ProcessCheckout-DefaultSettings, which sets the default addresses, shipping and payment method to the cart in case these are available and not already set.

concept cart and checkout - processcheckoutdefault
3.1.2.1.2 ProcessCheckout-AdjustJumpStep

To check if a certain checkout step is really reachable with the given data, the pipeline ProcessCheckout-AdjustJumpStep is called by every checkout step view pipeline. If it is not possible to display the requested step (e.g. shipping step is called, but address data are not provided), the checkout step will be adjusted to one of the previous steps.

concept_cart_and_checkout_-_processcheckoutadjust

3.2 Page Flow - Cart

concept cart and checkout - pageflow cart

3.3 Page Flow - Checkout Addresses

concept cart and checkout - pageflow addresses

3.4 Page Flow - Checkout Shipping

concept_cart_and_checkout_-_pageflow_shipping

3.5 Page Flow - Checkout Gifting

concept_cart_and_checkout_-_pageflow_gifting

3.6 Page Flow - Checkout Payment

pt_cart_and_checkout_-_pageflow_payment

3.7 Page Flow - Checkout Confirmation

pt_cart_and_checkout_-_pageflow_review

3.8 Page Flow - Checkout Receipt

pt_cart_and_checkout_-_pageflow_confirmation

4 CMS Page Model

There is currently no fine-grained CMS componentization used for cart and checkout pages. Instead, one working area is used which is implemented by an ISML template.

The template to be used is defined with the dictionary key WorkingTemplate before calling the pipeline ViewPage-Start.

4.1 CMS Page Model - Cart

concept cart and checkout - page - cart

4.2 CMS Page Model - Empty Cart

oncept_cart_and_checkout_-_page_-_empty_cart.gxml

4.3 CMS Page Model - Checkout Addresses

concept cart and checkout - checkout address

4.4 CMS Page Model - Checkout Shipping

concept_cart_and_checkout_-_page_-_shipping

4.5 CMS Page Model - Checkout Gifting

ept_cart_and_checkout_-_page_-_gifting

4.6 CMS Page Model - Checkout Payment

ept_cart_and_checkout_-_page_-_payment

4.7 CMS Page Model - Checkout Confirmation

concept_cart_and_checkout_-_page_-_review

4.8 CMS Page Model - Checkout Receipt

concept_cart_and_checkout_-_page_-_receipt

Disclaimer

The information provided in the Knowledge Base may not be applicable to all systems and situations. Intershop Communications will not be liable to any party for any direct or indirect damages resulting from the use of the Customer Support section of the Intershop Corporate Web site, including, without limitation, any lost profits, business interruption, loss of programs or other data on your information handling system.

Customer Support
Knowledge Base
Product Resources
Support Tickets