Managing storefronts

Note: if you do not need to use multiple storefronts, you only need to establish one relationship between your single storefront and the category root in Sales Layers. You can also skip this part of the connector if you wish, in this case all categories and products selected in Outpud Data will be sent to your only store.

Depending on the credentials provided by BigCommerce configured in the connector, as we have already seen in the Parameters tab section, it will be possible to establish either a single relationship to a single storefront or multiple relationships with storefronts and categories.

Creating relations between BC Storefronts and SL categories

The steps below explain how to create and manage relations between the storefronts available in BC and specific Category Roots in Sales Layer.

  • Step 1: This is the subset of categories in SL that we will use in the example. Categories are accesible through the main menu of the application.
Subset of categories
  • Step 2: Click in “Link a new storefront” and select a storefront and the category tree of Sales Layer that you want to associate.
Link a new storefront
  • Step 3: The new relation will be added to the list.
New relation will be added to the list.

Rules applied to relationships management

  • Rule 1. Establishing a relation between a BC Storefront and a SL Category will generate a Category Tree in BC equivalent or similar to the structure of categories in SL. Remember that the item’s status filter value applied in the tab “Params” will filter the categories. So:
    • Visible categories will be added to the category tree in BC.
    • Draft and Invisible categories will have their status modified to “disabled” in the category tree of BC, only if they already exists, if they don’t exist, they will not be created.
Category Root: Wedding Cards Category Tree created in BC during synchronization
Category Root

 

  • Wedding cards
    • Accessories
    • New season wedding cards
    • Vintage wedding cards
  • Rule 2. There is no possibility to connect the same storefront to different category roots. This prevents mapping inconsistencies.
  • Rule 3. Clients can establish as many relations between BC Storefronts and SL categories as the number of available Storefronts in BC.
  • Rule 4. If clients want to establish a relation with one Storefront that already has an association with a Category Tree, it will overwrite the previous relation created for that Storefront.

Storefront visibility for categories and products

By default, each storefront indicated will include all items that 1) match the “item’s status” filter from the parameters tab, 2) label filters, and 3) also match the category tree of SL specified above in the relations between SL category trees and BC.

However, clients also have the option of specifying in what storefronts will be included any particular item. For that purpose, the next steps must be followed:

1. Step 1. Create a new field of type “List of attributes” in the category form and / or the product form.

Also, check that this field has its option “Allow multi-selection” active (it’s usually active by default)

 

Add new fieldConfiguration in BCConfiguration of BC storefronts

2. Step 2. Select the new field category and / or product field and click the button “Synchronize storefronts”

Configuration in BC

The effects of clicking these “Synchronize storefronts” operations are the following:

  • It will map the field “Channel Visibility” inside the tabs “Output data > Categories” and / or “Output data > product”. These fields “Channel Visibility” are always present in the connector’s configuration but they can not be modified manually by the user. They are mapped automatically after clicking the “Synchronize storefronts” buttons.
Field before synchronizing
Field before “Synchronize storefronts” button
Field after “Synchronize storefronts” button
Field after “Synchronize storefronts” button

 

  • The operation “Synchronize storefronts” will add the available storefronts in these fields.
Field before “Synchronize storefronts” button
Field before “Synchronize storefronts” button
Field after “Synchronize storefronts” button
Field after “Synchronize storefronts” button

3. Step 3. Modify each category or product to select the storefronts in which each item will be included

 

BC Storefronts

 Rules applied to all items visibility in each specific storefront during synchronizations

General rules:

  • Establish fields to manage the visibility in specific storefronts inside the products or categories is optional.
  • Formulas can be used to assign values to the fields “Channel Visibility” inside the tabs “Output data > Categories” and / or “Output data > product”. However, take into account that formulas always should return an array that contains the internal storefront IDs represented with string values for a right synchronization with BC’s storefronts. For example: PRINT(“1,15467,345678”)
BC Storefronts
  • When an item that has been previously synchronized with BC, changes its status to one that is not allowed by the connector's visibility filter, this item will be disabled in BC.  

Categories:

  • 1. Categories without visible products are not sent to BC.
  • 2. If there is no relationship created between a BC storefront and a category root in SL, the connector will synchronize the items to the default storefront in BC. So, any additional storefront will not receive any item.
  • 3. When a category that has subcategories has its status changed in SL from visible to draft or invisible:
    • the category will be disabled
    • the subcategories will not be deleted or disabled but they will move up one level into the hierarchy of categories in BC.
  • 4. When a new subcategory is created in SL and belongs to a category that already exists in BC, the subcategory is added under the category in BC.
  • 5. If no category root is selected in the category filter inside the “Manage storefronts” tab, the full category tree of SL will be associated to this storefront.

Products:

  • 6. If a storefront is configured with a connector, but the product has no storefront selected in its storefront list of attributes field, the item will be synchronized but without storefronts selected in BC.
  • 7. When a product does not have valid categories, because they have been filtered by storefronts, the product will also be sent without associated categories.
  • 8. Products without categories will still not be sent by the SL API since it filters this information.
    • To achieve this, you can assign a fictitious category that meets the output filters, but without linked storefronts, this way, products will be sent without categories.
  • 9. In case a product has assigned categories:
    • It will be checked that your categories are in the modified API data.
    • If they aren't send by the SL API, it will be checked if they have been previously synchronized in the connector's external cache.

Variants:

  • 10. If a parent product is not valid, its variants will not be synchronized either, since these in BC cannot be orphans.