Metafields in Shopify allows you to store additional information for products, collections, orders, blogs, pages, and your shop that cannot be managed within the native fields provided by Shopify. For example - If you would like to maintain additional description fields for your catalog like the detailed description, featured description, etc, you can do this in NetSuite simply by creating custom fields if you like but in Shopify, you would do this by leveraging the Metafields functionality. A metafield in Shopify consists of a namespace, a key, a value, and a description (optional). For additional info, please refer to the Shopify help article here.
The Integration App enables you to map NetSuite standard/custom fields to Shopify metafields (if they already exist) and/or also create the metafields in Shopify directly via the Integration App & then map and update them.
Note: Celigo supports all the metafield types mentioned in the Shopify metafields except the List types.
Mapping Shopify metafields to NetSuite standard/custom fields
First, choose the standard/custom field(s) in NetSuite that you would like to map to a corresponding metafield in Shopify. In the following example, we have highlighted a few fields that will be used to map to corresponding Shopify metafields.
Next, go to the saved search in NetSuite that is being used for exporting Items from NetSuite to Shopify. If you are using the saved search that comes from the bundle, the name of the search should start like "Celigo Shopify Item Export [your store name]". Once you open the Saved Search in the edit mode, select the 'Results' tab.
Under the 'Results' tab, you will see all the fields that are configured to be sent over to Shopify.
In order to map a NetSuite field to a corresponding Shopify metafield, you need to add an additional row by choosing the desired NetSuite field from the dropdown. You must also provide a relevant label under the "Custom Label" column on the right. Important: The label name must be suffixed with (Meta) to be identified as a meta field by the Integration App (see image below). So for example: if you need to map the "Technical Specifications" field, the custom label should be "Technical Specifications (Meta)". Add as many fields as you like and then save the changes to the Saved Search.
Now, head over to integrator.io and go to the "Settings" section of the "Shopify - NetSuite Integration App". Go to the "Product" section and open the 'Field Mappings' section for the "NetSuite Item to Shopify Product Add/Update" data flow.
Add an additional row to your field mappings. In this row, provide the NetSuite value (left column) as meta[*].Technical Specifications (Meta) (The pink-colored text is exactly what is provided in the Saved Search.)
For the Shopify value (right column), provide the value in the following specified format: product.metafields[*].namespace:key (Note: Namespace and key are colon-separated)
For example, the following is the namespace and key values in a sample Product API.
Replace these values in the field mapping section in the specified format and Save to complete the mapping successfully. Similarly, add any other meta-fields to represent the mapping correctly.
Once the mapping is done, you can run the data flows from the data flow settings dashboard.
Creating metafields if they do not exist
If you don't have metafields already created, directly add the 'namespace' and 'key' values in the mapping editor in the specified format (product.metafields[*].namespace:key) and the Integration App will create the metafields in Shopify.
Viewing metafields in Shopify
Go to a Shopify Product and in the url, append with the term 'metafields.json' and press 'Enter'.
The screen displays the metafields in the backend.