7

After renaming the Storefront so that it made more sense without the context of the Tenant parent folders, the Commerce data no longer appears on the website.

It's not entirely clear why it broke, considering there is a hard link from the SXA site to the storefront on the Home template's "Control Panel Configuration" field.

What are the requirements around naming Storefront items, and how can I fix the situation I have?

As a bonus, what's the point of the "Control Panel Configuration" field if it doesn't associate the store with the site?

1
  • 1
    Did you have a look at the Sitecore.Commerce.Providers.ShopProvider? You could implement a custom one if you need a custom configured shop (name).
    – Joost
    Commented Mar 2, 2018 at 12:41

1 Answer 1

4

tl;dr These two values must match:

  1. The Sitecore site name (In SXA, the "Site Name" field of the /Settings/Site Grouping/SiteName item)
  2. The item name of the storefront ("/sitecore/Commerce/Commerce Control Panel/Storefront Settings/Storefronts/ShopName")

The way that all links together is very odd. I'm guessing it's due to legacy reasons, and hopefully it gets cleaned up in a future release:

Commerce Connect (which has no knowledge of SXA) determines the name of the shop using the Sitecore SiteInfo's Name. In SXA, this is the "Site Name" field on the /Settings/Site Grouping/SiteName item

Commerce Engine creates the Shop entity if it doesn't exist, but since it only has a string (the name) it goes back to Sitecore to pull the information from the storefront (dizzying, yes). So it expects an item "/sitecore/Commerce/Commerce Control Panel/Storefront Settings/Storefronts/ShopName" to exist.

There is a hard link from SXA to the Storefront, but it's not clear why it doesn't get used to resolve the shop name (and thus reducing it down to a single source of truth). I'll need to do more research, but I suspect there may not have been an appropriate pipeline to extend.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.