Sales Layer Configuration

After the VTEX configuration, you can start with the Sales Layer steps described below.

First, you must access your Sales Layer dashboard at https://cloud.saleslayer.com/?i=en&xss=3rdhbpowzbbt1l and go to the Channel’s option in the left menu:

3

Then, go to the Channels marketplace tab, and scroll down until you find the VTEX connectors box, as shown in the second image:

4

 

5

Press + create to start configuring the channel.

Parameters

In the Parameters tab, you will have to insert API Key and API token, obtained in the previous step. Also, you will need to indicate your shop name (the one given for your company in VTEX):

4

Click on the Connect to Vtex green button at the inferior left corner, and the following message will pop up:

7

 

Tip: If this doesn’t happen, and the following message appears, check previous steps in VTEX, and if the API key, API token, or shop name are correct.

8

When you have successfully connected to VTEX, new fields will appear to continue the configuration:

9
  • Root category: In case, you have previous categories created, you can select one of them, otherwise, you can leave it empty
10

 

  • In update overwrite stock:
  • Select yes or no on whether you want to update stock from Sales Layer to VTEX. Only in first sync, this selection will not be taken into account, as it will need to send stock if the field is included in the Output data.
  • Selected Warehouse: As it was created in the previous step, you must choose the warehouse to which it will synchronize.
  • Export items with status:
9
  •  Only visible: This option will allow you to create or modify items only in this status. If you have changed the status on a group of items from visible to other status, the connector will change the product/variant status to inactive, (invisible in case of categories).
  • All: This option will allow you to create or modify all items. If this is the configuration, draft, and invisible products will be created as active.
  • Visible and invisible: This option will allow you to create or modify items only in these statuses. If you have changed the status on a group of items from visible or invisible to draft, the connector will change the product/variant status to inactive, (invisible in case of categories).
  • Visible and draft: This option will allow you to create or modify items only in these statuses. If you have changed the status on a group of items from visible or draft to invisible, the connector will change the product/variant status to inactive, (invisible in case of categories).

Tip: If you want to have a different behavior for status, you can create a Sales layer field called status, link it to its correlative VTEX field, and have an alternative feature.  

  • Include empty categories: When selecting Yes, the connector will include the categories with no products. A category is set as empty if it doesn’t have products or all its products aren’t from the status filtered on the connector.
  • Language to connect: You can select English or Spanish. If you select the secondary language (different from the primary one), the following option will show, and if you enable it, it will automatically add texts from the original language into the empty fields of other languages.

12

Finally, click on the Continue green button, at the inferior right corner of the screen.

 

Output Data

In this tab, you have three sections: Categories, Products, and Variants.

You will have to do the field mapping accordingly in each one of them, selecting the related field from Sales Layer, that fits the one in Name in the VTEX column.

9

Tip: Remember that you can use formulas to fill in any field you need to. For more information on formulas, access the following link in our Support Center: Formulas.

 

Warning:

If in field mapping (categories, products, and variants) there are **empty fields**, synchronization will behave according to the following scenarios:

  • If items are being created, synchronization will fail for all the items involved, as every field should have been mapped.
  • If items are being created, synchronization will erase the VTEX content of that field for all the items involved.

If there is no relevant mapping to be done, empty fields should always be disabled.

If you already have a store in VTEX and you do not need to synchronize specific fields, because you want to protect that content, you can disable them in the connector. To do this, you can select them with the check-box, and in the Actions button (on the top of the screen) choose Disable selected items

13

A window will pop up asking for confirmation, and when writing and clicking Disable, those fields will be shown as in the second image:

15

 

16

Tip: It is recommended to have VTEX categories always in active status to avoid problems with the synchronization.

Warning: When deactivating and reactivating a Category in VTEX, an unexpected error could arise. If this happens, you can erase categories involved in VTEX and force refresh from the connector, so that they are restored.

In Products, you will also be able to select the type of field, between Normal, File, and Image for some cases:

17

In all of these three sections, you will be able to add new fields with these buttons at the end of the page.

18

In VTEX you have multiple standard fields to add, these are the ones you can add to the channel:

 

Categories

Fields in Sales Layer Fields in VTEX Type Mandatory Description
Reference   string Yes

Sales Layer Category reference

In Vtex it does not exist, it is only used to have unique data to have the correct data.

Suggested ID ID integer   Unique category identifier. If not filled in, VTEX will generate it automatically.
Name Name string Yes Category name
Keywords Keywords string   Substitute words for the category.
Title Title string Yes Text used in the title for the category page.
Description Description string   Text used in the meta description tag of the Category page.
Google Merchant Category Id VTEX Global Category string Yes VTEX global category.  You can find a list of all possible values at the link below the table.
AdWorksRemarketingCode AdWordsRemarketingCode string | null   This is an inherited field. Disregard this information.
LomadeeCampaignCode LomadeeCampaignCode string | null   This is an inherited field. Disregard this information.
  FatherCategoryId integer | null   ID of the parent category, apply in case of category and subcategory.
  GlobalCategoryId integer | null   Google Global Category ID.
Create a field ‘store_front’ ShowInStoreFront integer    If true, the category is displayed in the top and side menu.

For the connector to send this field correctly, the 'Visibility' field must be set to 'All'.

In addition, the user must add a lowercase 'Status' field to Output Data > Categories.

IsActive boolean   If true, the category page will be available in the shop.
Create a field ‘store_front_link'   boolean   If true, the category link is activated in the shop.
ShowBrandFilter       If true, the category page displays a Brand filter.
Score       Score in order of search.
StockKeepingUnitSelectionMode       Define how the SKU will be displayed.

Note: Link to possible values: https://support.google.com/merchants/answer/6324436?hl=en

Products

The field in Sales Layer Field in VTEX Type Mandatory Description
Reference   string Yes

Sales Layer product reference

  Id integer   Unique numeric identifier of the product. If not reported, it will be automatically generated by VTEX.
Name Name string Yes Product name. Limited to 150 characters.
  CategoryPath string   Path of the categories associated with this product, from the highest category level to the lowest category level, separated by '/'. It is mandatory to use this field or the 'CategoryId' field.
  CategoryId integer   ID of an existing category to be associated with this product. It is mandatory to use this field or the "CategoryPath" field.
Brand BrandName string   Name of the brand to be associated with this product. It is mandatory to use this field or the 'BrandId' field. If you want to create a new brand, i.e. in case the brand does not exist yet, use this field instead of 'BrandId'.
  BrandId string   ID de una Marca existente que se asociará a este producto. Es obligatorio utilizar este campo o el campo 'BrandName'.
  LinkId string   Slug to be used to construct the URL of the product page. If not reported, it will be generated according to the product name, replacing spaces and special characters with hyphens (-).
  RefId string   Product reference code, if SKU does not exist. There can only be one reference (SKU or RefId).
Visibility IsVisible boolean   Show (true) or hide (false) the product in search results and on product pages, but the product can still be added to the shopping cart. Normally applicable for gifts.
Description Product Description string   By default, the connector publishes the products marked as visible and leaves the rest unpublished.
  DescriptionShort string   Product description.
release_date Example "2019-01-01T00:00:00" ReleaseDate string   Store Framework: Legacy CMS Portal: Keywords or synonyms related to the product, separated by comma (,). "Television", for example, can have a substitute word such as "TV". This field is important to make your searches more complete.
  Keywords string   Product title label. Limited to 150 characters. Displayed in the browser tab and corresponds to the title of the product page.
Title Title string   This field is important for SEO.
If the connector does not receive 'title', it is generated from the 'Name' field.        
status IsActive boolean    
  TaxCode string    
  MetaTagDescription string    
  ShowWithoutStock boolean    
  Score integer    

Variants

Field in Sales Layer Field in VTEX Type Mandatory Description
Variant Reference   string Yes Sales Layer variant reference
  Id integer   Unique SKU identifier. If not reported, it will be automatically generated by VTEX.
  ProductId integer   Product ID associated with this SKU.
  IsActive boolean   Defines whether the SKU is active (true) or not (false). During the creation of a SKU, do not set this field to true or you will receive a 400 Bad Request error. You must activate the SKU afterward, as explained in Activating an SKU.

Actualmente, el conector no soporta este campo. 

ActivateIfPossible boolean   When set to true, this attribute will automatically update the SKU as active once associated with an image or an active component. It is recommended to set it to true unless you plan an internal workflow to manually activate SKUs.When set to true, this attribute will automatically update the SKU as active once associated with an image or an active component. It is recommended to set it to true unless you have an internal workflow for manually activating SKUs.
Variant name Name string Yes SKU name, i.e. the variation of the product added above. For example: Product - Refrigerator, SKU - 110V. Limited to 200 characters.
  RefId string   Reference code used internally for organizational purposes. Must be unique. Mandatory only if Ean is not reported, but can also be used together with EAN.
EAN EAN string  

EAN code. Mandatory only if RefId is not reported, but can also be used together with RefId.

If the field is empty and without formulas, it has no effect. It will not overwrite the current content of the values set in the VTEX account.

Only one EAN is allowed.

If the EAN is changed on the VTEX side, it will have no effect on the Sales Layer side. This means that the sales layer will not resend the EAN to VTEX unless changes are made on the sales layer side. Therefore, modifications made to the EAN in VTEX (modifications not made by the SL connector) will not be overwritten, even if these values differ from those set in the assigned field of the connectors within the PIM account.

PackagedHeight PackagedHeight number   Height is used for the calculation of the shipment.
PackagedLength PackagedLength number  

Length used for the calculation of the consignment.

PackagedWidth PackagedWidth number   Width is used for the calculation of the shipment.
PackagedWeightKg PackagedWeightKg integer  

Weight used for the shipping calculation, in the measurement configured in the shop, which by default is in grams. Do not fill this field with 0 or null, as this could lead to shipping problems.

Height Height     Actual SKU height.
Length Length    

Actual SKU length.

Width Width     Actual SKU width.
WeightKg WeightKg     Weight of the SKU in the measurement configured in the shop, which by default is in grams.
CubicWeight CubicWeight     Cubic weight.
IsKit IsKit    

Flag to set whether the product SKU is composed of one or more SKUs, thus becoming a bundle. Must be enabled if you are adding a bundle. Once enabled, the flag cannot be reversed.

CreationDate CreationDate string   Date and time of SKU creation.
RewardValue RewardValue string   To add the product as a pre-sale, enter the estimated arrival date of the product in ISO-8601 format. You must take into account both the launch date and the freight calculation for the arrival date.
EstimatedDateArrival EstimatedDateArrival string | null   Provided by manufacturers to identify their products. This field must be filled in if the product has a specific manufacturer code.
ManufacturerCode ManufacturerCode string   Provided by manufacturers to identify their products. This field must be filled in if the product has a specific manufacturer code.
  CommercialConditionId integer   Used to define SKU-specific promotions or installment rules. If there is no specific condition, use 1 (default value). This field does not accept 0. More information in Registering a trade condition.
MeasurementUnit MeasurementUnit string   SKU unit of measure
UnitMultiplier UnitMultiplier number   This is the SKU multiple number. If the Multiplier is 5.0000, the product can be added in multiple quantities of 5, 10, 15, 20, onwards.
ModalType ModalType string | null   Links an unusual type of SKU to a carrier specialized in its delivery. This field must be populated with the modal name (e.g. "Chemicals" or "Refrigerated products"). To learn more about this feature, read our articles How the modal works and Modal settings for carriers.
KitItensSellApart KitItensSellApart boolean   Defines whether the components of the kit can be sold separately.

Note: If you add new fields in mapping from the standard VTEX list you will have to rename them always in lowercase.

Finally, in variants you can map all the needed fields, as done in Categories and Products:

20

When field mapping is complete, you can click on Save and Complete button at the en of the page.

After this, you will be able to see the channel in your panel:

21

When saving, the connector will automatically start synchronizing, and then, it will do it again between the next 10 minutes to 3 hours, depending on the API’s load, whenever there has been a change in any item.

 

Synchronization considerations:

  • Apart from following the status of items, the connector will sync any item that may have suffered changes in SALES LAYER (even if it was originated by related categories or variants).
  • It will sync any item that may be affected or relevant to some connector’s modification (such as adding category mapping, or synchronization settings, for example).
  • It will not sync previous items (that have been synchronized before) and haven’t had any changes or aren’t relevant to a connector’s modification.
  • If your are connecting to an existing store in VTEX, previous items that do not exist or are not configured to be synched in SALES LAYER, will not be modified by any synchronization.
  • For more information on this, you can go to the following link in our Support Center: https://support.saleSales Layerayer.com/es/api/introduccion.

If a full synchronization must be launched, meaning to sync all items, previous and new, all fields, whether they’ve been modified or not, apart from selecting this option, you could use the Force refresh button on top of the Parameters tab (it appears when saving the connector). But, in case you need this option you have to take into account that this action will imply sending of ALL your complete catalog, multi-language fields, images, formulas, etc... This will affect how much the synchronization lasts, increasing it in relation to the scheduled sync duration. Also, forcing the connector does not ensure immediate synchronization, as it will depend on the existing process queue.

Note: In case any new fields are created that are not mentioned in articles related to this connector or included in the corresponding channel (the VTEX connector), they will be sent to the attributes section.