Checkout Steps

The latest version of this feature can be found at Checkout Steps

Entry Step

Redirect customer to correct step based on QuoteTransfer state. This step requires input = false so it won’t be rendered.

Customer Step

The customer step provides three forms:

  • login
  • register
  • register as a guest

This step is responsible for filling CustomerTransfer with corresponding data. The authentication logic is left to customer module, this step is only delegating calls to (and from) customer module and mapping data with forms.

Address Step

The address step where customer fills billing and shipping addresses in QuoteTransfer::billing and QuoteTransfer::shipping respectively. This step lets the returning customers to select one of the existing addresses or create a new one. New and guest customers can only create a new address. If a new address is selected, then it’s only created when order is placed in OrderCustomerSavePlugin. This step will be skipped if already signed in customer uses checkout.

Shipment Step

Get shipment method information and store it into the quote. This step requires additional configuration because different shipment providers and different ways forms should be handled for each.

Payment Step

Get payment information and store it into quote for later processing when state machine is triggered.

Payment step has similar structure and data handling mechanics as the shipment step does.

Summary Step

Display order information about to be placed item, details and order totals.

Place Order Step

Place order into system. This step requires input = false. This step makes Zed HTTP request which sends QuoteTransfer. In this step all order saving is happening.

Success Page

Display success page, on executing, clears QuoteTransfer, also customer session is marked as dirty so that with next request it would reload with updated data (new customer address).