Integrate 17 Shopify sites With Netsuite.

Create a connector for Integrating Shopify with Netsuite. The connector has the ability to work for multiple stores.

  1. Order sync from Shopify to NetSuite.
  2. Fulfillment sync from NetSuite to Shopify.
  3. Item creation sync from NetSuite to Shopify.
  4. Price level sync from NetSuite to Shopify.
  5. Item stock level sync from NetSuite to Shopify.
  6. Refund sync from NetSuite to Shopify.

Our Solution

  1. We will create 2 different custom records to configure Shopify integration.

Custom record 1: Shopify store detail.

  • This custom record will help us to configure the Shopify site details. 
  • The “Shopify store detail” named custom record contains multiple fields. Field details are:
Field name DescriptionField typeIs mandatory
Shopify HostnameTo configure the hostname for each Shopify site.Free form textTrue
Shopify API keyTo configure the API key of each Shopify site.Free form textTrue
Shopify passwordTo configure the API password of each Shopify site.Free form textTrue
API URLWe will set this value in that field when users create new “Shopify store detail” records. The value of this field will be set as “{apikey}:{password}@{hostname}” Also, we will use duplicate site configuration using this custom field.Free form textFalse (disable)
Preferred currencyUsers can select currency type for the corresponding store. List field. This currency helps to Identify the amount. If the field is empty USD will be considered as the default value.List fieldFalse 
Price levelUsers can identify the store price level. We will apply the item amount based on this store price level. If this field is empty we will consider the online price as the default price of the item.List fieldFalse 
SubsidiaryMention the specific subsidiary.List fieldFalse
InactiveThis will help identify whether the store is active or not. If the field value is true we will exclude the store from integration.Check boxFalse 
  • Users need to manually configure this “Shopify store detail” custom record for each Shopify site.  ( Example: For 16 Shopify site users manually set up 16 Shopify store detail custom records with mandatory values).
  • This is only a one-time setup for the initial integration stage.

Custom record 2: Shopify store item detail.

  • This record will help us to create mapping over each Shopify site item and Netsuite item record.
  • The parent of this record will be each “Shopify store detail” custom record.
  • Using this record we will create and update the items record in Shopify. Also, save the Shopify item id from API response under the corresponding “Shopify store item detail” record in Netsuite.
Field name DescriptionField typeIs mandatory
Shopify SKUNetsuite Itemid as Shopify item SKU.Free form texttrue
Shopify Item DescriptionDisplay name/code of the Netsuite item record.Free form texttrue
Shopify Stock CountNetsuite available quantity in a specific location. This will be the store item stock.Free form texttrue
Shopify product IDThis field helps to store the product IDs. Based on this field we will map Netsuite items and Shopify items in specific stores. The field value will be theFree form texttrue
Shopify Item TagThis field is only applicable for (Kit/package and group items)Free form textfalse
Shopify ImageImage for item creation. We will use this image URL when adding item records to ShopifyFree form textfalse
Tax Percentage.Netsuite items tax percentage. This tax percentage is calculated as a Shopify item Integerfalse
Shopify Item AmountShopify item Amount = base price + ( base price of the item * tax percentage ) / 100Currencytrue

 Item creation sync from NetSuite to Shopify

  1. This integration will be a schedule base integration.
  2. This will be a one way integration from NetSuite to Shopify.
  3. We will set up a custom record “Shopify store item detail” to store the item details for specific stores.
  4. We will update the item list for every store using a map/reduce script. After creating a product for each store we will store the corresponding store product id in the respective “Shopify store item detail” record.
  5. Under each “Shopify store detail” parent custom record the “Shopify store item detail”  record will be appended as a child record.
  6. We will consider the item amount as “base price + ( base price of the item * tax percentage ) / 100”
  7. For kit/package item and item group we will mention the components and its quantity in the item description of the Shopify product record. Also added item type in the tag section.

Item stock level sync from NetSuite to Shopify

  1. This integration will work on a scheduled basis.
  2. This will be a one way integration from NetSuite to Shopify.
  3. Every 1 hour we will run a scheduled script for updating stock quantity.
  4. We will take items listed under each store (Shopify store detail).
  5. Get each item’s quantity onhand hand and update these values as the corresponding item stock quantity in Shopify.
  6. For the kit item quantity, we will create possible kit items with the available components. For the group items also the same scenario we will consider.

Order sync from Shopify to NetSuite 

  1. The order sync will work on a scheduled basis.
  2. This will be a one way integration from Shopify to NetSuite.
  3. We will create a scheduled script for sales order creation.
  4. We will create 3 script fields to differentiate each store.
  5. The field names are Shopify hostname, Shopify password, and Shopify API key.
  6. We will fetch sales orders from Shopify and create orders in Netsuite.
  7. Also, we will check the duplicate sales order creation before creating each sales order in Netsuite.
  8. Before creating each sales order we will check if the customer exists or not in the Netsuite. We will take the customer’s email id as unique. If a customer has the same “email address” in Netsuite, we will create a sales order for that customer else we will create new customers with customer data then only create a sales order for that customer. 
  9. For identifying the sales order belonging to stores we will use the 4 custom fields shopify hostname, Shopify password, Shopify API key, and Shopify order id.
  10. Also, we will set up a transaction line field “Shopify product id” in the sales order, item fulfillment, and invoice record for identifying the Shopify product.
  11. Order is successfully sync. We will flag the order in shopify for acknowledgement.

Fulfillment sync from NetSuite to Shopify 

  1. This will be a real-time integration.
  2. This will be a one way integration from NetSuite to Shopify.
  3. When shipping an item fulfillment in Netsuite we will trigger our integration script.
  4. We will check whether the created sales order record is created through Shopify integration or not.
  5.  If yes, we will fulfill the orders in Shopify. 
  6. Shopify product id in the item line will help us to corresponding items in Shopify. Also, we will use the Shopify host name, Shopify password, Shopify API key, and Shopify order id field for mapping Shopify store and order.

Refund sync from NetSuite to Shopify

  1. This will be a real-time integration.
  2. This will be a one way integration from NetSuite to Shopify.
  3. When a user creates a credit memo or cash refund record in Netsuite. We will refund the corresponding order in Shopify.
  4. We will only create refunds in Shopify. Do not consider the update and delete.

Assumption

For stock and item integration.

  1. We assume that 16 Shopify stores represent 16 different locations. Can we need to migrate all Netsuite items in all stores? 
  2. The client netsuite account is multi-currency enabled. Which currency amount will be the item amount in Shopify. Is the currency different for each store?
  3. In the client netsuite account, we could not find the Matrix and child matrix items. Can we consider the matrix items in the item integration?
  4. Which price level amount do we need to consider the product price in shopify?
  5. The item stock quantity fetch from which location? Is it the sum of all warehouses onhand quantity?
  6. The stock update and item creation in Netsuite will be on a scheduled basis, not real-time integration.
  7. We assume that in Shopify tax setup is “All prices include tax”?

For order integration.

  1. We will not consider the Historical order sync.
  2. We will map over the Netsuite customer and Shopify customers using the email address.
  3. If a customer has the same email address we will create a sales order for that customer in Netsuite.
  4. If the customer does not exist in the Netsuite, We will create a new customer and then create an order for the newly created customer.
  5. We could not consider the sales order update and delete in Netsuite.
  6. We will create item fulfilments in Shopify. When shipping item fulfillments which are created from the Shopify orders. Also, provide the 
  7. Can we consider the partial fulfillment scenario? Is there a partial item fulfillment concept in the client Netsuite system? We will not delete or update the item fulfillment in Netsuite only the creation is considered for the integration.
  8. Only we will create the refund in Shopify when creating cash refund and credit memo in Netsuite. Could you please advise us to consider more scenarios for refund integration?

Note

  1. We could not find an API for the Shopify product multi-pricing setup.
  2. We could not use the multi-price level concept in Shopify integration.
  3. We will only sync the sales order creation. We will not consider the billing part of orders.
  4. The image URL must be available without login in Netsuite. 

Questions

  1. Provide the client account and a Shopify account for integration purposes.
  2. Have you already set up Shopify stores?
  3. If the store setup is already completed How can we identify the mapping over Netsuite and Shopify items? 
  4. If Shopify setup is not yet completed, Which all item types are considerable for item integration?
  5. Are there any discounts applicable in the Shopify orders? If yes, how can we handle the Shopify discount in Netsuite?
  6. Could you please provide shipment item mapping over Netsuite and Shopify for sales order creation? 
  7. Could you please provide customer, sales order, and item integration mapping? Otherwise, we will sync orders, customers, and items with mandatory fields.
  8. Are you using multiple sales channels for single stores?

Leave a comment

Your email address will not be published. Required fields are marked *