Flow Diagrams (http://bit.ly/FergusonCheckoutFlow)
Recommendations:
- All icons should be either SVG or utilize an icon font.
- Please refer to the UI Standards Icon Link for more specifications. Here is the link to all the icons used in the UI Kit: http://bit.ly/FergusonUI-Icons
- Auto-focus the user to the first required field on the page, if one is available.
Interaction Design
Edit & Summary Mode
The Single-Page Checkout design incorporates a design pattern where chunks of information gathered (boxes) from the customer are organized into sections that have two modes: Summary and Edit Mode. Below you can see the animation when the boxes change between both modes.
- The sections that utilize Edit and Summary Mode are Order, Shipping, and Payment Options.
- If the edit/summary box begins in the edit mode, the cancel button, and toggle link will not be visible until they return to the edit mode again from the summary mode.
- The edit/summary boxes serve to create a focus for the user. Typically, they would guide the user through the customer flow and ensure the user filled out all required fields.
Since we're focusing on T3+ much of the customer flow will be pre-populated.
- Each edit/summary box begins in the Edit mode
- If all of the required fields in an edit/summary box have been pre-populated, it will begin in the Summary mode
- From the Summary Mode:
- If the Toggle Link is selected, the values of the currently populated fields must be stored, then the edit/summary box will enter the Edit mode
- From the Edit Mode:
- The Call to Action will be disabled until all required fields within the edit/summary box have been adequately filled
- If the Call to Action is selected, the fields which have been populated in the Edit Mode will get rendered in the summary text and the edit/summary box will enter the Summary mode.
- If either the Cancel Button or the Toggle Link are selected, the form fields will revert back to the stored values from the Summary state and the edit/summary box will enter the Summary state.
- When all required form fields from all the edit/summary boxes have been adequately filled, "Place Order" button will become active
- It is NOT required that the edit/summary boxes be in summary mode for the "Place Order" button to be active
1. Summary Mode:
This is the mode that 'rolls-up' the information from Edit mode into a plain text version for review
Summary Mode | |||
Element | Type | Value | Comments |
---|---|---|---|
Visible Elements | |||
Section Status Indicator | Icon | {check-icon} | Background Color: Success Color HEX#1abc81 |
Title | Background Color: Dark Text Color HEX#595454 | ||
Toggle Link | Link | with "Change" visible | |
Summary Text for that Module | Detailed below |
2. Edit Mode:
This is the mode where users can enter values into the form fields, and edit any pre-populated fields.
Edit Mode | |||
Element | Type | Value | Comments |
---|---|---|---|
Visible Elements | |||
Section Status Indicator | Icon | {step-number} | Background Color: Primary Color HEX#1C88C7 Will present the sequential number of the edit/summary box in relation to the others for {step-number} |
Title | Dark Text Color HEX#595454 | ||
Toggle Link | Link | with "Cancel" visible | |
Form Fields for that Module | Detailed below | ||
Call to Action States | |||
Disabled | Remains in this state until all required fields in the section are filled out adequately | Background color: Border Color HEX#AFB0B3 | |
Active | Enters this state when all required fields in the section are filled out adequately | Background color: Primary Color HEX#1C88C7 | |
Cancel Button | Flat Button |
Page Sections
Element | Type | Value | Action(s) | Comments | |
---|---|---|---|---|---|
1 | Header | ||||
2 | Ferguson Logo | SVG Image | On Click: Takes the user to the homepage | ||
3 | Continue Shopping | Only visible when flipping a quote to an order. When clicked, the quote gets added to the cart, allowing the user to add more products to the order. Utilizes the same business rules/functionality as the current implementation of Continue Shopping. | |||
4 | Return Link | Text Link | default: If the user has a quote in their order: | On Click: Takes the user to the cart which is populated by the items in their order, or to quote center. | |
5 | Page Title | Heading with an inline link | “Checkout ( " {number of items} " items )” | On Click: Number of items: auto-scrolls to Product Module | Will present the number of line-items in the Product Module for {number of items} |
6 | Required Fields Indicator | Text | |||
7 | Order Options | ||||
8 | Edit Mode | ||||
9 | Section status indicator | "1" | |||
10 | Title | "Order Options" | |||
11 | Toggle Link | "Cancel" | On Click: Sets the Options box to summary mode without updating summary text | Not visible until opened from summary mode | |
12 | Job Name Field | Text | Default: empty | ||
13 | Purchase Order Field | Text | Default: empty | ||
14 | Call to Action Button | "Use These Options" | On Click: Updates the summary text with entered values and sets the Options box to summary mode | ||
15 | Cancel Button | "Cancel" | On Click: Sets the Options box to summary mode without updating summary text | Not visible until opened from the summary mode | |
16 | Summary Mode | ||||
17 | Section status indicator | Check icon | |||
18 | Title | "Order Options" | |||
19 | Toggle Link | "Change" | On Click: Stores current values and sets the Options box to edit mode | ||
20 | Summary Text | {job name} |
| ||
{po} |
| ||||
21 | Shipping Options | ||||
22 | Edit Mode: Delivery | ||||
23 | Section status indicator | "2" | |||
24 | Title | "Ship To" | |||
25 | Toggle link | "Cancel" | On click: Sets the Shipping box to summary mode without updating summary text. | Note: Not visible until opened from summary mode | |
26 | Shipping Address Radio Group | Shows up to 5 saved addresses. Sort Order:
If the user selects an address that isn't their primary address, they are shown an option to make that address their primary address
Tax Exempt:
| |||
27 | Add New Address Button | On click: Shows the "My Addresses" modal opened to the "New Address" tab. | |||
28 | "My Addresses" Modal | ||||
28 | Modal Title | "My Addresses " {info-action-icon} | |||
29 | "Close Modal" Button | {close-icon} | On Click: saves the state of the modal (anything already entered) and closes the modal without applying any changes to the order | ||
30 | "Saved Address" Tab | ||||
31 | Search Addresses | functionality should match current implementation of the locations search in job board. |
| ||
32 | Recent Addresses |
Questions:
| |||
33 | All Addresses |
Questions:
| |||
34 | "New Address" Tab | ||||
35 | Full Name Field | text | Default: empty | Field requirements: required | |
36 | Company Field | text | Default: empty | Field requirements: optional | |
37 | Address Field | text | Default: empty | Field requirements: required | |
38 | Address Obscured Field | On Click: will reveal Address Field 2. A close button will be available to remove. | |||
39 | Address Field | text | Default: empty | Field requirements: optional | |
40 | Zip/Postal Code Field | phone | Default: empty | When the user has focus to the field, and enters the 5th digit the following will occur:
|
|
41 | Save this Shipping Address Checkbox |
| |||
42 | End Tabs | ||||
43 | Cancel Button | Same functionality as Close Modal Button | |||
44 | "Use This Address" Button | On Click: Adds the entered address to the Shipping Address Radio Group beneath their primary address | |||
45 | End Modal | ||||
46 | |||||
47 | View More Addresses Button | On click: Shows the "My Addresses" modal opened to the "Saved Address" tab. | Shows when the user has more than 5 saved addresses | ||
48 | Date Needed Dropdown | dropdown | Default: earliest available date | On Click: Opens Date Needed Dropdown | |
49 | Date Needed Dropdown | ||||
50 | Header Section - Left and Right Arrows | On Click: advances or reduces the month by 1 | |||
51 | Month/Year Dropdown | Shows a list of month/year combo's up to a year out. | |||
52 | Calendar Section |
| |||
53 | Presets Section | Selecting a preset auto-selects that preset from the calendar. | |||
54 | General | After selecting a selectable day from the calendar or a preset from the preset section, the dropdown would close | |||
55 | End Dropdown | ||||
56 | |||||
57 | Attention to Obscured Field | On click: reveals "Attention To" field and "Contact Phone" field form fields | |||
58 | "Attention To" Field | text | Default: empty | Field requirements: optional | |
59 | "Contact Phone" Field | phone | Default: empty | Field requirements: optional | |
60 | Instructions Obscured Field | On click: reveals "Instructions" field | |||
61 | "Instructions" Field | text area | Default: empty | Field requirements: optional | |
62 | Ship Complete Checkbox | checkbox | Default: checked |
| |
63 | CTA Button | "Use This Shipping" | On click: Updates the summary text with entered values and sets the Shipping box to summary mode. | ||
64 | Cancel Button | "Cancel" | On click: Sets the Shipping box to summary mode without updating summary text. | Note: Not visible until opened from summary mode | |
65 | Edit Mode: Pick Up | ||||
66 | Section status indicator | "2" | |||
67 | Title | "Pick Up From" | |||
68 | Toggle link | "Cancel" | On click: Sets the Shipping box to summary mode without updating summary text. | Note: Not visible until opened from summary mode | |
69 | Store Location Dropdown | dropdown | Default: Location from Job Board | Same functionality as the Locations Dropdown in Job Board | |
70 | Pro Pick-Up 1 Hour Toggle Switch |
| follows the same conditions as the current Pro Pick-Up 1 hour
| ||
71 | "Contact Name" Field | text | Default: empty | Field requirements: required | |
72 | "Contact Phone" Field | phone | Default: empty | Field requirements:
| |
73 | End Pro Pick-Up 1 Hour Fields | ||||
74 | |||||
75 | Date Needed Dropdown | same as shipping section | |||
76 | Contact Phone Obscured Field | On click: reveals Contact Phone form field: | |||
77 | "Contact Phone" Field | phone | Default: empty | Field requirements:
| |
78 | Instructions Obscured Field | same as shipping section | |||
79 | Pickup Complete Checkbox | checkbox | Default: checked |
| |
80 | CTA Button | "Use This Pickup" | On click: Updates the summary text with entered values and sets the Shipping box to summary mode. | ||
81 | Cancel Button | "Cancel" | On click: Sets the Shipping box to summary mode without updating summary text. | Note: Not visible until opened from summary mode | |
82 | Summary Mode: Delivery | ||||
83 | Section status indicator | {check-icon} | |||
84 | Title | "Ship To" | |||
85 | Toggle link | "Change" | On click: Stores summarized values and sets Shipping box to edit mode | ||
86 | Summary Text | ||||
87 | Address | Line 1: {Name} | The TAX EXEMPT label will be displayed in the summary mode. | ||
88 | Date Needed | "Needed by: " {date-needed} | |||
89 | Optional Fields | {field-label} ": " {field-value}
| If the user filled out any of the hidden optional fields, they would display like this. | ||
90 | Ship Complete | "Ship Complete" | Note: Only shows if the user checked the ship complete checkbox | ||
91 | Summary Mode: Pick Up | ||||
92 | Section status indicator | {check-icon} | |||
93 | Title | "Pick up From" | |||
94 | Toggle link | "Change" | On click: Stores summarized values and sets Options box to edit mode | ||
95 | Summary Text - Pro Pick-Up | ||||
96 | Store Location | Line 1: {Store-Street-Address} | |||
97 | Date Needed | "Needed by: " {date-needed}
| |||
98 | Optional Fields | {field-label} ": " {field-value}
| If the user filled out any of the hidden optional fields, they would display like this. | ||
99 | Pickup Complete | "Pickup Complete" | Only shows if the user checked the pickup complete checkbox | ||
100 | Summary Text - Pro Pick-Up 1 Hour | ||||
101 | Store Location | Line 1: {Store-Street-Address} | |||
102 | Contact Info | "Contact: " {contact-name} " - " {contact-phone}
| |||
103 | Payment Options | ||||
104 | Edit Mode | ||||
105 | Section status indicator | "3" | |||
106 | Title | "Pay Using" | |||
107 | Toggle link | "Cancel" | On click: Sets the Payment box to summary mode without updating summary text. | Not visible until opened from summary mode | |
108 | Selected Account | Heading: "SELECTED ACCOUNT" Line 1-3:
Line 4: {info-icon} " You can change your account from the cart." | None | Line 4 would not be visible if the user has a quote in their order. | |
109 | Payment Method Radio Group | Heading: "PAYMENT METHOD" Credit on Account:
Credit Cards
| Sort Order:
If the user selects a payment method that isn't their primary payment method, they are shown an option to make that payment method their primary one
Questions/Comments:
Card Logo files:
| ||
110 | Add a New Credit Card Button | On Click: Opens New Credit Card modal | |||
111 | New Credit Card modal | ||||
112 | Modal Title | "New Credit Card" | |||
113 | Close Modal Button | {close-icon} | On Click: saves the state of the modal (anything already entered) and closes the modal without applying any changes to the order | ||
114 | Card Information | ||||
115 | "Card Number" Field | phone | Default: None | As soon as the system can detect the card type from the entered card number, it will display the related logo aligned to the right of the input field and centered vertically | Field Requirements:
How to handle cards with less than or more than 16 characters:
See 109 for Card Logos. Note: Ferguson.com and Trilogie only accept MC, Visa, AMEX, and Discover. |
116 | "Expiration" Field | phone | Default: None | Field Requirements:
| |
117 | "Name on Card" Field | text | Default: None | Field Requirements: Required | |
118 | "Security Code" Field | phone | Default: None | Field Requirements:
For cards that use a different amount of characters.
| |
119 | "Phone" Field | phone | Default: empty | Field requirements:
| |
120 | |||||
121 | Billing Address | ||||
122 | "Use Company Address" checkbox | checkbox | Default: checked |
| Questions:
|
123 | |||||
124 | "Save this payment information" checkbox | checkbox |
| ||
125 | Cancel Button | Same functionality as Close Modal Button | |||
126 | "Use This Credit Card" Button | On Click: Adds the entered address to the Payment Method Radio Group beneath their primary payment method | |||
127 | End Modal | ||||
128 | |||||
129 | CTA Button | "Use This Payment" | On click: Updates the summary text with entered values and sets the Payment box to summary mode. | ||
130 | Cancel Button | "Cancel" | On click: Sets the Payment box to summary mode without updating summary text. | Not visible until opened from summary mode | |
131 | Summary Mode | ||||
132 | Section status indicator | {check-icon} | |||
133 | Title | "Pay Using" | |||
134 | Toggle link | "Change" | On click: Stores summarized values and sets Payment box to edit mode | ||
135 | Summary Text | ||||
136 | Selected Account | Heading: "SELECTED ACCOUNT" Line 1-3:
Line 4: {info-icon} " You can change your account from the cart." | |||
137 | Payment Method | Same as selected radio button label. | |||
138 | Note Feature | ||||
139 | Heading | "Need a Special Product?" | |||
140 | Sub Text | "Add a note to have it reviewed by an associate" | |||
141 | CTA | {plus-icon} " Add Note" | On Click: Opens the Note modal | Utilize the same modal as current checkout | |
142 | Products Section | ||||
143 | Heading | "Items in Your Order" | |||
144 | Column-Title Row | ||||
145 | Column 1 - "Select all" Checkbox | checkbox | "Select all (" {number of items} " items)" |
| |
146 | Column 2 | "Net Price" | |||
147 | Column 3 | "Qty" | |||
148 | Column 4 | "Total Price" | |||
149 | Item Rows | ||||
150 | Column 1 | Label: {list-number} | If the list item isn't selectable, it would only show the {list-number} without the checkbox If user removes items. What will the confirmation with "Undo" option look like:
| ||
151 | Column 2 | {Product-image} | On Click: Opens the PDP in a new tab | Comment: Billy - I need to check with analytics to know how opening in a new tab will affect datalayer and pathing. I think this is the best option for links away from checkout, but want to make sure it doesn't cause any datalayer issues. Workfront Request: https://ferguson.my.workfront.com/issue/view?ID=5bc0cf8400e6d3e654b81fa8305fbe3e | |
152 | Column 3 | ||||
153 | Line 1 | {web-display-name} | On Click: Opens the PDP in a new tab | ||
154 | Line 2 | {codelabel1}{code-value1} " | " {codelabel2}{code-value2} | |||
155 | Line 3 - Delivery | "[Available] for immediate shipment" | Clicking "Available" opens the availability modal on the DC tab | We need the other messages to decide which part is linked | |
156 | Line 3 - Pick Up | "[{number-available-at-branch} available] for pickup" | Clicking the text within the brackets opens the availability modal on the branch tab | We need the other messages to decide which part is linked | |
157 | Line 4/5 - Warnings | Questions/Comments:
For products that prevent an order from being placed:
| |||
158 | Column 4 | {net-price} | |||
159 | Column 5 | ||||
160 | Quantity Field | number | Default: quantity from cart | Field requirements:
| |
161 | Column 6 | {total-price} | |||
162 | Order Summary | ||||
163 | Heading | "Order Summary" | |||
164 | Pricing Info | Each Row:
| |||
165 | Total | Left Aligned:
Right Aligned:
| |||
166 | "Place Order" CTA | "Place Order" | Submits form/order and links to Confirmation Page | Is disabled until all required fields are adequately filled. Does NOT require edit/summary boxes to be in summary mode | |
167 | Support Cartridge | ||||
168 | Heading | "Need Help?" | |||
169 | Branch Number | "For help with orders or products, call "{Branch-Number}"." | |||
170 | T3/4 Customer Service Number | "For technical help, call (888) 222-1785." | |||
171 | Web Order Number | "Web order number: " {web-order-number} | |||
172 | Footer | ||||
173 | Text Block | "Copyright © " {current-year} " Ferguson Enterprises Inc. All rights reserved." | |||
174 | Links | ||||
175 | Terms of Site Use | matches current functionality | |||
176 | Terms of Sale | matches current functionality | |||
177 | Privacy & Security | matches current functionality |
Questions for UX:
- When does Ferguson ship outside of the United States?
- What does that process look like?
Current Multi-page Checkout Design 2014-2019
Page Overview
https://www.ferguson.com/shoppingCart
Vision
Key Features
Strategy
Page History
Version: version_name
Checkout Flow
Name | Description |
---|---|
Shopping Cart Page | This page allows users to view their web order #, selected job, selected store, the items in their cart, copy items to My Lists, Save for Later, Remove those items, choose a delivery method and checkout. |
Payment Information Page | This page allows users to enter their payment method, billing address and continue their checkout process. |
Address Verification Modal | This modal pops up and grays out the payment information screen when a change has been suggested for the billing address. The user can either use the address entered as-is or use the suggested address. |
Order Information Page | This page allows users to enter order details, enter/update the shipping address or pickup location and continue their checkout process. |
Review Order Page | This page allows users to view their web order #, change their payment information, change their order information, view items in their order, and continue to play their order. |
Thank you Page | This page allows users to view their web order #, payment information, order information, and view items in their order. |
Creative
Below are a list of comps and screenshots for each part of the check-out flow. Click on indiviual images to view larger versions.
Page Contents
Shopping Cart Page
Name | Description | Type | Conditions | Added | Value | Example | |
---|---|---|---|---|---|---|---|
Breadcrumb | Navigational element, displays the full taxonomical path from the parent category to it'a lowest level subcategory. | text, hyperlink | Home > My Ferguson Dashboard > Quote Center |