---
schema_version: "1"
id: 2a1672304a0e365e3628266ae5176b46fcb93a69746f5bf12bd1e6fa093f3297
title: SFRA Features
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/commerce-cloud/sfra/guides/sfra-feature-list.md
canonical_url: https://developer.salesforce.com/docs/commerce/pwa-kit-managed-runtime/guide/sfra-feature-list.html
source_site: developer.salesforce.com
content_type: documentation
content_hash: e86677538bec260b7d20332eff5f52c27f5666d5051aeb3166c29e8cd4d1eebd
products:
  - Composable Storefront
  - Salesforce APIs
---
# SFRA Features

This document contains list of features available and supported by the Storefront Reference Architecture on the B2C Commerce platform.

## Homepage, Header, Footer and Global Navigation

| ID  | Feature                                                                        |
| --- | ------------------------------------------------------------------------------ |
| 1.1 | Header                                                                         |
| 1.2 | Global Navigation                                                              |
| 1.3 | Footer                                                                         |
| 1.4 | Tracking Consent                                                               |
| 1.5 | Cookie Notification                                                            |
| 1.6 | Homepage - content slots, product tiles, product quickview, email sign-up form |

## Search Suggestions | Search Results | Article Detail | Search Refinements

<table>
<thead>
<tr>
<th colspan="1" rowspan="1">ID</th>
<th colspan="1" rowspan="1">Feature</th>
</tr>
</thead>
<tbody>
<tr>
<td colspan="1" rowspan="1">2.1</td>
<td colspan="1" rowspan="1">Search Suggestions (Search as you type - SAYT)
<ul>
  <li>Dynamic search list automatically shown when search term is typed in search field</li>
  <li>Support to display Einstein Predictive Search results</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">2.2</td>
<td colspan="1" rowspan="1">Search Results with no Products
<ul>
  <li>Did you Mean in case of mis-spellings</li>
  <li>Search tips</li>
  <li>Display content slot with pre-configured product recommendations</li>
  <li>Support to display Einstein powered product recommendations on Search</li>
  <li>No Results page</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">2.3</td>
<td colspan="1" rowspan="1">Search Results with Products</td>
</tr>
<tr>
<td colspan="1" rowspan="1">2.4</td>
<td colspan="1" rowspan="1">Search Results with Articles (Unstructured Content)</td>
</tr>
<tr>
<td colspan="1" rowspan="1">2.5</td>
<td colspan="1" rowspan="1">Article Detail Page</td>
</tr>
<tr>
<td colspan="1" rowspan="1">2.6</td>
<td colspan="1" rowspan="1">Search Refinements</td>
</tr>
<tr>
<td colspan="1" rowspan="1">2.6.1</td>
<td colspan="1" rowspan="1">Search Refinements with Single-Select and Multi-Select</td>
</tr>
</tbody>
</table>

## Category Landing | Category Grid | Product Tile

<table>
<thead>
<tr>
<th colspan="1" rowspan="1">ID</th>
<th colspan="1" rowspan="1">Feature</th>
</tr>
</thead>
<tbody>
<tr>
<td colspan="1" rowspan="1">3.1</td>
<td colspan="1" rowspan="1">
<div>Category Landing page</div>

<div>The Category Landing template can be configured in Business Manager when the category attribute <code>rendering template</code> is set to <code>rendering/category/catLanding</code>.</div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">3.2</td>
<td colspan="1" rowspan="1">Category Grid</td>
</tr>
<tr>
<td colspan="1" rowspan="1">3.3</td>
<td colspan="1" rowspan="1">Product tiles on Category and Search Results pages</td>
</tr>
<tr>
<td colspan="1" rowspan="1">3.4</td>
<td colspan="1" rowspan="1">
<div>Product Title - Pricing</div>

<div>Single, 2-Tier and Range Pricing all supported</div>
</td>
</tr>
</tbody>
</table>

## Compare Products

<table>
<thead>
<tr>
<th colspan="1" rowspan="1">ID</th>
<th colspan="1" rowspan="1">Feature</th>
</tr>
</thead>
<tbody>
<tr>
<td colspan="1" rowspan="1">4.1</td>
<td colspan="1" rowspan="1">Compare Bucket
<ul>
<li>Add items to the compare bucket for side-by-side product attribute comparison</li>
<li>Applies to Category Grid pages, but not to Search pages.</li>
<li>Product sets and bundles are not comparable.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">4.2</td>
<td colspan="1" rowspan="1">Compare Products
<ul>
<li>Select &amp; display up to four products to compare.</li>
<li>When fewer than four are selected, the width of each item expands.</li>
</ul>
</td>
</tr>
</tbody>
</table>

## Product Detail Pages

<table>
<thead>
<tr>
<th colspan="1" rowspan="1">ID</th>
<th colspan="1" rowspan="1">Feature</th>
</tr>
</thead>
<tbody>
<tr>
<td colspan="1" rowspan="1">5.1</td>
<td colspan="1" rowspan="1">Product Detail page (PDP)
<ul>
<li>Display product attributes and information including images</li>
<li>Size chart</li>
<li>Add to cart</li>
<li>Add to wishlist/registry (if applicable)</li>
</ul>
<b>Note</b>: Product Images, Description, and Size Chart either based on primary category or product attribute.</td>
</tr>
<tr>
<td colspan="1" rowspan="1">5.1.1</td>
<td colspan="1" rowspan="1">Standard Product Detail page</td>
</tr>
<tr>
<td colspan="1" rowspan="1">5.1.2</td>
<td colspan="1" rowspan="1">
<div>Product Option Detail</div>

<div><b>Note</b>: Product Option isn&rsquo;t a stand alone page, this is a feature of a product to associate options with a product.</div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">5.1.3</td>
<td colspan="1" rowspan="1">Variation Product Detail page</td>
</tr>
<tr>
<td colspan="1" rowspan="1">5.2</td>
<td colspan="1" rowspan="1">Product Detail w/ limited inventory message</td>
</tr>
<tr>
<td colspan="1" rowspan="1">5.3</td>
<td colspan="1" rowspan="1">Product Detail w/ Price Display and Promotion Callouts</td>
</tr>
<tr>
<td colspan="1" rowspan="1">5.4</td>
<td colspan="1" rowspan="1">Product Detail w/ Bonus Products</td>
</tr>
<tr>
<td colspan="1" rowspan="1">5.5</td>
<td colspan="1" rowspan="1">Product Sets Detail page</td>
</tr>
<tr>
<td colspan="1" rowspan="1">5.6</td>
<td colspan="1" rowspan="1">Product Bundles Detail page</td>
</tr>
<tr>
<td colspan="1" rowspan="1">5.7</td>
<td colspan="1" rowspan="1">
<div>Einstein Product Recommendations</div>

<div>Support to display Einstein powered product recommendations on product detail page for cross-sells and upsells</div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">5.8</td>
<td colspan="1" rowspan="1">Product Detail with In-store inventory
<ul>
<li>Support to display in-store inventory information if available in Business Manager</li>
<li>Shopper needs to select SKU and Store information to view available inventory</li>
</ul>
</td>
</tr>
</tbody>
</table>

## Quickview Capabilities

<table>
<thead>
<tr>
<th colspan="1" rowspan="1">ID</th>
<th colspan="1" rowspan="1">Feature</th>
</tr>
</thead>
<tbody>
<tr>
<td colspan="1" rowspan="1">6</td>
<td colspan="1" rowspan="1">Quickview
<ul>
<li>Display a module window when a shopper clicks the Quickview icon within a product grid.</li>
<li>Add to cart.</li>
</ul>
<b>Note</b>: Quickview is not designed to support Mobile devices.</td>
</tr>
<tr>
<td colspan="1" rowspan="1">6.1</td>
<td colspan="1" rowspan="1">Quickview: Standard Product detail</td>
</tr>
<tr>
<td colspan="1" rowspan="1">6.2</td>
<td colspan="1" rowspan="1">Quickview: Product Option detail</td>
</tr>
<tr>
<td colspan="1" rowspan="1">6.3</td>
<td colspan="1" rowspan="1">Quickview: Variation Product detail</td>
</tr>
<tr>
<td colspan="1" rowspan="1">6.4</td>
<td colspan="1" rowspan="1">Quickview: Product sets detail</td>
</tr>
<tr>
<td colspan="1" rowspan="1">6.5</td>
<td colspan="1" rowspan="1">Quickview: Product bundles detail</td>
</tr>
</tbody>
</table>

## In-Store Pickup (ISPU / BOPIS)

<table>
<thead>
<tr>
<th colspan="1" rowspan="1">ID</th>
<th colspan="1" rowspan="1">Feature</th>
</tr>
</thead>
<tbody>
<tr>
<td colspan="1" rowspan="1">7</td>
<td colspan="1" rowspan="1">In-Store Pickup (ISPU)
<ul>
<li>Display in-store pickup on the Product Detail page</li>
</ul>
Configuration:

<ul>
<li>Install the <code>plugin_instorepickup</code> cartridge.</li>
<li>Assign an active inventory book to the store record.</li>
<li>Enable the product attribute <code>availableForInStorePickup</code>.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">7.1</td>
<td colspan="1" rowspan="1">ISPU: Product detail page with no saved store</td>
</tr>
<tr>
<td colspan="1" rowspan="1">7.1.1</td>
<td colspan="1" rowspan="1">ISPU: Store selection (Enter Zip code / Postal code)</td>
</tr>
<tr>
<td colspan="1" rowspan="1">7.2</td>
<td colspan="1" rowspan="1">ISPU: Product Detail page with saved store</td>
</tr>
<tr>
<td colspan="1" rowspan="1">7.3</td>
<td colspan="1" rowspan="1">ISPU: Cart page
<ul>
<li>For a store saved in the session, display store details such as name, address, and phone number.</li>
<li>If no store is saved in session, allow selection for Store Pickup in the Shipping Method options</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">7.4</td>
<td colspan="1" rowspan="1">ISPU: Shipping Address for Ship method selection with no saved store
<ul>
<li>If no store is saved in session, allow selection for Store Pickup in the Shipping Method options</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">7.5</td>
<td colspan="1" rowspan="1">ISPU: Shipping Address for Ship method selection with saved store
<ul>
<li>Display selected or saved store details such as name, address and phone number.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">7.6</td>
<td colspan="1" rowspan="1">ISPU: Billing Address w/ Payment method
<ul>
<li>Displays store details such as name, address, and phone number.</li>
<li>Allows shoppers to edit store selection, if required.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">7.7</td>
<td colspan="1" rowspan="1">ISPU: Place Order (Order Review) page
<ul>
<li>Displays store details such as name, address, and phone number.</li>
<li>Allows shoppers to edit store selection, if required.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">7.8</td>
<td colspan="1" rowspan="1">ISPU: Order Receipt (Order Confirmation) page
<ul>
<li>Displays ship method as &ldquo;Store Pick-up&rdquo; with store details such as name, address, and phone number.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">7.9</td>
<td colspan="1" rowspan="1">Order History page
<ul>
<li>Displays store pick up details</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">7.10</td>
<td colspan="1" rowspan="1">ISPU: Order Detail page
<ul>
<li>Displays ship method as &ldquo;Store Pick-up&rdquo; with store details such as name, address, and phone number.</li>
</ul>
</td>
</tr>
</tbody>
</table>

## Cart and Mini-Cart

<table>
<thead>
<tr>
<th colspan="1" rowspan="1">ID</th>
<th colspan="1" rowspan="1">Feature</th>
</tr>
</thead>
<tbody>
<tr>
<td colspan="1" rowspan="1">8.1</td>
<td colspan="1" rowspan="1">Mini-Cart
<ul>
<li>Displays compact product details for item(s) added to cart.</li>
<li>Supports quick edit for item quantity.</li>
<li>Displays button to Proceed to Checkout and Apple Pay, if applicable.</li>
</ul>
<b>Note</b>: Mini-cart does not display on mobile devices.</td>
</tr>
<tr>
<td colspan="1" rowspan="1">8.2</td>
<td colspan="1" rowspan="1">Cart: Empty cart page
<ul>
<li>Display empty Shopping Cart page when a shopper navigates to the cart page without any products added to cart.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">8.3</td>
<td colspan="1" rowspan="1">Cart: Product List and Order Summary
<ul>
<li>Display product attributes for items added to cart.</li>
<li>Display quick order summary details - order subtotal, tax, shipping costs and estimated total.</li>
<li>Supports Quickview functionality on desktop devices for edits to products in cart.</li>
<li>Add to wishlist.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">8.4</td>
<td colspan="1" rowspan="1">Cart: Coupon and Promotion Messaging
<ul>
<li>Display promotion messaging if the Cart qualifies for a product-level discount.</li>
<li>Display list price with a strikethrough with the promotion price shown underneath.</li>
<li>Allow shoppers to enter coupon/promotion codes for redemption.</li>
<li style="margin-left: 40px;">Update cart page with updated pricing based on applied promotion</li>
<li style="margin-left: 40px;">Display error message if coupon/promotion code is expired/invalid</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">8.4.1</td>
<td colspan="1" rowspan="1">Cart: Choice of Bonus product (Promotion)
<ul>
<li>Allow for selection of bonus product, if a shopper is eligible for a choice of bonus product promotion.</li>
<li>Select Bonus Product opens the the choice of bonus product window, and display selected bonus product in cart.</li>
<li>Bonus product is removed if the qualifying product is removed from cart.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">8.5</td>
<td colspan="1" rowspan="1">Einstein Product Recommendations
<ul>
<li>Support to display Einstein powered product recommendations on cart page for cross-sells and upsells.</li>
</ul>
</td>
</tr>
</tbody>
</table>

## Checkout (Registered & Guest)

<table>
<thead>
<tr>
<th colspan="1" rowspan="1">ID</th>
<th colspan="1" rowspan="1">Feature</th>
</tr>
</thead>
<tbody>
<tr>
<td colspan="1" rowspan="1">9.1</td>
<td colspan="1" rowspan="1">Checkout - Login
<ul>
<li>Option to complete checkout as a guest or as a registered user.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">9.2</td>
<td colspan="1" rowspan="1">Registered Checkout: support checkout for registered customers
<ul>
<li>Use saved addresses from address book for billing &amp; shipping</li>
<li>Select shipping method</li>
<li>Use saved payment tender info from wallet for payment option</li>
<li>Complete order purchase, and save order details to My Account - Order History</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">9.3</td>
<td colspan="1" rowspan="1">Guest Checkout: support guest checkout for shoppers
<ul>
<li>Enter shipping and billing address information</li>
<li>Select shipping method</li>
<li>Enter payment information</li>
<li>Complete order purchase</li>
<li>Create (new) account from order receipt page and save order details to My Account - Order History</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">9.4</td>
<td colspan="1" rowspan="1">Update or Add New Shipping Address
<ul>
<li>Edit the shipping address information.</li>
<li>Add new shipping address.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">9.5</td>
<td colspan="1" rowspan="1">Update or Add New Billing Address
<ul>
<li>Edit the billing address information.</li>
<li>Add new billing address.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">9.6</td>
<td colspan="1" rowspan="1">Add Payment Method
<ul>
<li>Add payment tender information</li>
<li>Fields will dynamically update based on credit card type</li>
</ul>

<div><b>Note</b>: Payment Methods like PayPal, 3rd party Gift Cards/Certificates can be added via customization.</div>

<div><b>Note</b>: B2C Commerce eGift Certificates can be supported in SFRA via customization.</div>
</td>
</tr>
</tbody>
<tbody>
<tr>
<td colspan="1" rowspan="1">9.7</td>
<td colspan="1" rowspan="1">Multi-Ship Checkout
<ul>
<li>For multiple items in the cart, option to ship the products to multiple addresses.</li>
<li>Select Ship Method for each Shipping Address/Group.</li>
</ul>
<b>Note</b>: SFRA supports multi-ship checkout in the templates. Customers can choose to not enable multi-ship checkout.</td>
</tr>
</tbody>
</table>

## My Account Page

<table>
<thead>
<tr>
<th colspan="1" rowspan="1">ID</th>
<th colspan="1" rowspan="1">Feature</th>
</tr>
</thead>
<tbody>
<tr>
<td colspan="1" rowspan="1">10.1</td>
<td colspan="1" rowspan="1">My Account - Login
<ul>
<li>Supports login with email address and password for registered users.</li>
<li>Supports new account creation with email address and password.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">10.1.1</td>
<td colspan="1" rowspan="1">My Account - Forgot Password
<ul>
<li>Ability to reset account password by entering account email address</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">10.2</td>
<td colspan="1" rowspan="1">My Account - Dashboard
<ul>
<li>Displays shopper&rsquo;s profile information with address book and order history, if available.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">10.3</td>
<td colspan="1" rowspan="1">My Account - Edit Profile
<ul>
<li>Edit account profile information including name, email, phone, and password.</li>
<li>Display error message when email/password and confirm email/confirm password fields do not match.</li>
<li>Additional profile information can be captured to be attached to the account via customization</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">10.4</td>
<td colspan="1" rowspan="1">My Account - Address Book
<ul>
<li>Ability to enter addresses to address book.</li>
<li>View addresses in address book and edit, if necessary.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">10.5</td>
<td colspan="1" rowspan="1">My Account - Payment Method
<ul>
<li>View existing payment method</li>
<li>Add new payment method</li>
<li>Remove existing payment method (*editing existing payment method is not supported).</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">10.6</td>
<td colspan="1" rowspan="1">My Account - Order History
<ul>
<li>Displays list of orders attached to the account</li>
<li>Ability to select individual orders to view additional order details</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">10.7</td>
<td colspan="1" rowspan="1">Check Order Status
<ul>
<li>Look up order status for guest users with order number, email address, and billing zip code/postal code.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">10.8</td>
<td colspan="1" rowspan="1">Social Login (Facebook, Google)
<ul>
<li>Supports login via Facebook and/or Google via 3rd party integration</li>
</ul>
</td>
</tr>
</tbody>
</table>

## Wishlist and Gift Registry

<table>
<thead>
<tr>
<th colspan="1" rowspan="1">ID</th>
<th colspan="1" rowspan="1">Feature</th>
</tr>
</thead>
<tbody>
<tr>
<td colspan="1" rowspan="1">11.1.1</td>
<td colspan="1" rowspan="1">Wishlist
<ul>
<li>Ability to add item(s) to wishlist for registered users from PDP and Cart page.</li>
<li>View wishlist item(s) from Wishlist landing page.</li>
<li>Ability to remove item(s) from wishlist.</li>
<li>Update quantity for item(s) in wishlist.</li>
<li>Make wishlist private or public (default is private).</li>
<li>Ability to hide/unhide item(s) from public view.</li>
<li>Share wishlist via email or other social channels (3rd party integration required for social share).</li>
</ul>
Configuration:

<ul>
<li>Install the <code>plugin_wishlists</code> cartridge</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">11.1.2</td>
<td colspan="1" rowspan="1">Wishlist - Search
<ul>
<li>Ability to search for public wishlist(s) by entering first name, last name, and email address.</li>
<li>Display wishlist search results based on information entered based on public view settings.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">11.2.1</td>
<td colspan="1" rowspan="1">Gift Registry - Event
<ul>
<li>Create registry with attributes - primary registrant &amp; role, (using registered account user - first name, last name, email), event date, event name, city, state, and country.</li>
<li>Add co-registrant information - role, first name, last name, and email.</li>
<li>Enter shipping address for pre-event and post-event.</li>
<li>Make gift registry private or public (default is private).</li>
<li>Ability for registered users to have more than one gift registry.</li>
</ul>
Configuration:

<ul>
<li>Install the <code>plugin_giftregistry</code> cartridge.</li>
<li>Configure the footer content asset with a link to the controller route <code>GiftRegistry-Landing</code>.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">11.2.2</td>
<td colspan="1" rowspan="1">Gift Registry - Items
<ul>
<li>Ability to add item(s) to registry for registered users from PDP and Cart page.</li>
<li>View registry item(s) from registry landing page.</li>
<li>Ability to remove item(s) from registry.</li>
<li>Update quantity for item(s) in registry.</li>
<li>Ability to hide/unhide item(s) from public view.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">11.2.3</td>
<td colspan="1" rowspan="1">Gift Registry - Search
<ul>
<li>Ability to search for public registry by entering first name, last name (required) with event details and email address as optional.</li>
<li>Display registry search results based on information entered based on public view settings.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">11.2.4</td>
<td colspan="1" rowspan="1">Gift Registry - Management
<ul>
<li>Ability for registered users to have more than one gift registry.</li>
<li>Ability to remove/delete registry(ies).</li>
</ul>
</td>
</tr>
</tbody>
</table>

## **GDPR, Apple Pay, Cross-Cloud, Page Designer and Others**

<table>
<thead>
<tr>
<th colspan="1" rowspan="1">ID</th>
<th colspan="1" rowspan="1">Feature</th>
</tr>
</thead>
<tbody>
<tr>
<td colspan="1" rowspan="1">12.1</td>
<td colspan="1" rowspan="1">GDPR
<ul>
<li>Support for GDPR guidelines for consent tracking, data deletion, data portability, and restriction of processing.</li>
<li>Support for shopper to provide or restrict consent tracking.</li>
<li>Support for shopper to download their own data (registered users only).</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">12.2</td>
<td colspan="1" rowspan="1">Apple Pay
<ul>
<li>Support for Apple Pay feature to be displayed on PDP, Mini-Cart, Cart page, and Checkout - Payment page.</li>
</ul>
Configuration:

<ul>
<li>Install the <code>plugin_applepay</code> cartridge.</li>
</ul>

<div><b>Note</b>: Requires 3rd party configuration and implementation.</div>

<div><b>Note</b>: Works on iOS &amp; MacOS devices w/ Safari browser only.</div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">12.3</td>
<td colspan="1" rowspan="1">Ratings &amp; Reviews
<ul>
<li>Support to display rating and reviews attached to products.</li>
</ul>
Configuration:

<ul>
<li>Install the <code>plugin_ratings</code> and <code>plugins_reviews</code> cartridge.</li>
</ul>
<b>Note</b>: Requires 3rd party configuration and implementation.</td>
</tr>
<tr>
<td colspan="1" rowspan="1">12.4</td>
<td colspan="1" rowspan="1">Loyalty
<ul>
<li>Support to display customer loyalty information (for registered users only).</li>
</ul>
Configurations:

<ul>
<li>Install the <code>plugin_loyalty</code> cartridge.</li>
</ul>
<b>Note</b>: Requires 3rd party configuration and implementation</td>
</tr>
<tr>
<td colspan="1" rowspan="1">12.5</td>
<td colspan="1" rowspan="1">
<div>Cross Cloud Connectors</div>

<div>SFRA supports cross cloud connectors for Commerce &amp; Marketing and Commerce &amp; Service.</div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">12.6</td>
<td colspan="1" rowspan="1">
<div>Page Designer page layouts and components</div>

<div>Enable easier adoption of Page Designer through SFRA delivered Page Designer page layouts and components</div>

<p>Components available:</p>

<ul>
<li>Header</li>
<li>Main Banner / Hero Image</li>
<li>Shop Category</li>
<li>Catalog carousel</li>
<li>Campaign banner</li>
<li>Product Tile</li>
<li>Product Carousel - Einstein</li>
<li>Look Book / Sets</li>
<li>Photo tile</li>
<li>Static Content w/ Shop Link</li>
<li>Content Mix blocks</li>
</ul>
</td>
</tr>
</tbody>
</table>

## **Error Pages**

<table>
<thead>
<tr>
<th colspan="1" rowspan="1">ID</th>
<th colspan="1" rowspan="1">Feature</th>
</tr>
</thead>
<tbody>
<tr>
<td colspan="1" rowspan="1">13.1</td>
<td colspan="1" rowspan="1">
<div>General (500) Error</div>

<div>Display error page for when server-side error occurs, but the server could not be more specific on what the exact problem is.</div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">13.2</td>
<td colspan="1" rowspan="1">
<div>Missing Page (404) Error</div>

<div>Display error page for when client side error occurs when the webpage the shopper is trying to reach could not be found on the server</div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">13.3</td>
<td colspan="1" rowspan="1">
<div>Client Side Validation Error</div>

<div>Error message(s) displayed when shoppers does not provide required information or enters invalid data in form fields.</div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">13.4</td>
<td colspan="1" rowspan="1">
<div>Server Side Validation Error</div>

<div>Error message(s) displayed when shoppers submits a form but the data is invalid or does not match constraints.</div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">13.5</td>
<td colspan="1" rowspan="1">
<div>Coupon Code Error</div>

<div>Display appropriate error messaging for coupon code errors (expired or invalid).</div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">13.6</td>
<td colspan="1" rowspan="1">
<div>Login Error</div>

<div>Display appropriate error messaging for login errors on My account or Checkout page.</div>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">13.7</td>
<td colspan="1" rowspan="1">Credit Card Error
<ul>
<li>Display error when shopper attempts to submit a form without completing the required fields.</li>
<li>Display error when shopper attempts to submit an invalid credit card number.</li>
<li>Display error when shopper attempts to submit an expired credit card number.</li>
</ul>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">13.8</td>
<td colspan="1" rowspan="1">
<div>Order Tracking Error</div>

<div>Display error when shopper attempts to submit an invalid order number and/or billing postal code that does not match order records.</div>
</td>
</tr>
</tbody>
</table>

## **General Features**

<table>
<thead>
<tr>
<th colspan="1" rowspan="1">ID</th>
<th colspan="1" rowspan="1">Feature</th>
</tr>
</thead>
<tbody>
<tr>
<td colspan="1" rowspan="1">14.1</td>
<td colspan="1" rowspan="1">Store Locator
<ul>
<li>Support store locator functionality</li>
<li>Display list of stores based on zip code, or city, state and selected radius</li>
<li>Display store attributes as maintained in Business Manager</li>
</ul>
<b>Note</b>: In order to use the Google Maps functionality, the Google Maps API Key must be configured in the Site Preference <code>google map api key</code>.</td>
</tr>
<tr>
<td colspan="1" rowspan="1">14.2</td>
<td colspan="1" rowspan="1">
<div>Breadcrumbs</div>
Display navigation breadcrumbs based on clickpath or pre-set paths.</td>
</tr>
<tr>
<td colspan="1" rowspan="1">14.3</td>
<td colspan="1" rowspan="1">Localization</td>
</tr>
<tr>
<td colspan="1" rowspan="1">14.4</td>
<td colspan="1" rowspan="1">Contact Us Form</td>
</tr>
<tr>
<td colspan="1" rowspan="1">14.5</td>
<td colspan="1" rowspan="1">XML Sitemap for SEO</td>
</tr>
<tr>
<td colspan="1" rowspan="1">14.6</td>
<td colspan="1" rowspan="1">Meta Tags and Alt Image Tags for SEO</td>
</tr>
<tr>
<td colspan="1" rowspan="1">14.7</td>
<td colspan="1" rowspan="1">Robots.txt</td>
</tr>
<tr>
<td colspan="1" rowspan="1">14.8</td>
<td colspan="1" rowspan="1">Rate Limiting (Platform feature)</td>
</tr>
<tr>
<td colspan="1" rowspan="1">14.9</td>
<td colspan="1" rowspan="1">Adjust Bootstrap Configuration to Our Design</td>
</tr>
</tbody>
</table>
