The checkout process encompasses a number of steps: applying promotions, calculating taxes, specifying shipping options and payment options, etc. These steps are handled through a sequence of pages that the customer steps through. Most of the JSPs for these pages are found in the store.war/checkout/
and store.war/checkout/gadgets/
directories.
Each checkout page displays a progress bar that indicates the stages of the process. In the following example, the customer is in the Billing stage:
The exact set of pages the customer steps through can vary depending on context. For example, if the customer is not logged in when he or she clicks the Checkout button, a Login page (store.war/checkout/login.jsp
) displays, with options for logging in to an existing account, creating a new account, or checking out without logging in. If the customer selected the “Add gift note” option on the shopping cart page, the Your Gift Message page (store.war/checkout/giftMessage.jsp
) displays during checkout, with a form for creating a gift note.
Express Checkout
In addition to the standard checkout button, the shopping cart page also includes an Express Checkout button if all of the following are true:
The customer is logged in.
The customer has a default shipping method.
The customer has a valid default shipping address.
The customer has a valid default credit card.
The store.war/cart/gadgets/actionItems.jsp
gadget invokes the /atg/store/droplet/ExpressCheckoutOk
servlet bean, which determines whether these conditions are all true and, if so, renders the Express Checkout button. This component is a Commerce Reference Store-specific servlet bean of class atg.projects.store.droplet.ExpressCheckoutOkDroplet
.
Clicking the Express Checkout button takes the customer directly to the Confirm stage, using the default shipping address and credit card. In this case, the Confirm page includes a field for entering the card’s security code, since this is normally done in the Billing stage.