Upgrade from 1.x to 2.x - Introduction

  • Updated

Shopify has overtime added, changed and removed some features in the solution. To accommodate the changes in Shopify and make the Shopify Connecter up to date, some of the settings and mappings in the Shopify Connecter is removed or changed.

The Shopify Connector require some extra access scopes for the Shopify API. Ensure the API account has the right access scope as described in Shopify - Install

Import Variant Ids from Shopify

One of the biggest changes between the previous versions of the Shopify Connector and version 2 is the introduction of variant ids in Perfion.

In the same way that products have their Shopify ids in Perfion, variants now also have their Shopify ids in Perfion.

If you’re upgrading from an earlier version of the connector, your variants in Perfion does not have any Ids, and the first time the synchronization will run, all existing variants in Shopify will be deleted as their ids are unknown in Perfion.

To prevent this, it is recommended to export all of the variant ids from Shopify and import them into Perfion.

Shopify does not natively support exporting variant ids, but several apps in the Shopify App Store supports this. The process for doing this is described below

Install an app from the Shopify App Store that allows exporting variant ids

Ultimate Product ID Exporter is a free option, but as these apps are maintained by third parties, licenses and functionality are subject to change

Export all products and their variant ids.

Modify the exported file so it can be used as import into Perfion. In the file you should have variant SKU or variant Barcode as a unique identifier for the variants. The variant Id should be imported into the feature you use for SyncID for variants. You can delete the main products (your virtuals in Perfion) from the file

Import the variants and their ids

Now your variants in Perfion will match the correct variants in Shopify

E-commerce settings

The below settings are deprecated or changed

Setting Description
SyncType The SyncType only control the product SyncType. Use MetafieldDefinitionSyncType and CategorySyncType to control Metafield Definition and Categories
ShopifyApiVersion Version is deprecated. The Shopify Connector will use the API version it is desigen for or the earliest stable version available

ShopifyStoreAPIKey

ShopifyStoreAPIPassword

The ShopifyStoreAPIKey and ShopifyStoreAPIPassword is deprecated. The Shopify Connector only support “Admin API access token“ which is set in the appsettings.json file.
ShopifyStoreAPIAccessToken The ShopifyStoreAPIAccessToken is moved to the appsettings.json as ShopifyApi.AccessToken.
ConfigurationUpdateFrequencyInMin The ConfigurationUpdateFrequencyInMin is deprecated. The Connector will update the configurations at any new synchronization cycle and it is not possible to update the configuration in a synchronization cycle.

SyncFrequencyInMin,

DataMaxAgeInMin

To control the frequency of synchronization cycles, the SyncFrequencyInMin and DataMaxAgeInMin is deprecated. Use the FullSyncFrequencyInMin and DeltaSyncFrequencyInMin insted.
SyncCategories The SyncCategories is deprecated. If a category is mapped in the Category Mapping, the categories will be synchronized.
UpdateUnpublishedItems The UpdateUnpublishedItems is deprecated. The Product Mapping “Publish” is deprecated. Use Status in Product Mapping to control the status of the Product.
KeepExistingVariantData The KeepExistingVariantData is deprecated. The Shopify Connector will always update products and variants as they are in Perion.
SuppressMissingMetafieldWarnings The SuppressMissingMetafieldWarnings is deprecated.
Languages The Languages will now use all the languages, former it was only the first language.
ShopifyDefaultLanguage The ShopifyDefaultLanguage is a new setting and need to be defined

Category Mapping

Mapping Description
KeyField mapping The KeyField mapping need to be From @Id To Key
SyncCollection The SyncCollection is deprecated. All Collections will be synchronized.
SyncMetafields The SyncMetafields is deprecated. If Metafield are mapped, the images will be synchronized.
SyncKeepDeletedMetafields The SyncKeepDeletedMetafields is deprecated. Use the setting MetafieldDefinitionSyncType instead.
Published The Publish is deprecated. Use the SalesChannels instead.
PublishedScope The PublishedScopeis deprecated. Use the SalesChannels instead.
SyncID and SyncDate The SyncID and SyncDate is required

 

Product Mapping

Mapping Description
KeyField mapping The KeyField mapping need to be From @Id To Key
SyncType SyncType is deprecated. It is only possible to control the SyncType in the settings and not at the Product.
SyncProduct The SyncProduct is deprecated. If a product is a part of the E-Commerce filter, the product will be created in Shopify.
SyncDefaultVariant Shopify has added the possibility to create products without variants. The DefaultVariant concept is deprecated in the Shopify Connector.
SyncVariants The SyncVariants is deprecated. All variants will be synchronized.
SyncCollections The SyncCollections is deprecated. If the Collections/RelatedCategory is mapped at the Product, the Collection will be synchronized.
SyncImages The SyncImages is deprecated. If Images are mapped, the images will be synchronized.
SyncMetafields The SyncMetafields is deprecated. If Metafield are mapped, the images will be synchronized.
SyncKeepDeletedMetafields The SyncKeepDeletedMetafieldsis deprecated. All Metafields will be synchronized.

Metafield|global|title_tag|string

Metafield|global|description_tag|string

The Metafield “global title_tag” is deprecated. Use SEO title and description instead.
Publish The Publish is deprecated. Use the Status and Sales Channels instead.
PublishedScope The PublishedScopeis deprecated. Use the SalesChannels instead.

DefaultVariantPrice

DefaultVariantCost

DefaultVariantSKU

DefaultVariantBarcode

DefaultVariantQuantity

DefaultVariantWeight

Shopify has added the possibility to create products without variants. The DefaultVariant concept is deprecated in the Shopify Connector. Use the fields without DefaultVariant instead.
DefaultVariantOption<n> Shopify has added the possibility to create products without variants. The DefaultVariantOption<n> is deprecated.

Variant Mapping

Mapping Description
SyncID and SyncDate The SyncID and SyncDate are new at the Variant mapping and are required mappings.
SyncVariant The SyncVariants is deprecated. All variants will be synchronized.
SyncMetafields The SyncMetafields is deprecated. If Metafield are mapped, the images will be synchronized.

SyncImage

SyncAllImages

The SyncImages is deprecated. If Images are mapped, the images will be synchronized.
OldInventoryQuantity The OldInventoryQuantity is deprecated.
InventoryQuantityAdjustment The InventoryQuantityAdjustment is deprecated.
FulfillmentService The FulfillmentService is deprecated.
InventoryManagement The InventoryManagement is deprecated.
DoNotUseDefaultQuantities The DoNotUseDefaultQuantities is deprecated.
RelocateIfNecessary The RelocateIfNecessary is deprecated.
DisconnectIfNecessary The DisconnectIfNecessary is deprecated.
Grams The Grams is deprecated.
CountryCodeOfOrigin The CountryCodeOfOrigin is deprecated.
HarmonizedSystemCode The HarmonizedSystemCode is deprecated.
ProvinceCodeOfOrigin The ProvinceCodeOfOrigin is deprecated.

 

Metafield types

Some of the metafield types are renamed.

Old type New type
Bool boolean
DateTime date_time
Decimal number_decimal
FileRef file_reference
Int number_integer
Integer number_integer
MultiLineText multi_line_text_field
PageRef page_reference
ProductRef product_reference
SingleLineText single_line_text_field
String single_line_text_field.
VariantRef variant_reference

 

Was this article helpful?

0 out of 0 found this helpful

Comments

0 comments

Please sign in to leave a comment.