Proposal For NetSuite Shopify Integration using the Celigo Shopify-NetSuite Integration App

This proposal outlines the NetSuite and Shopify Integration for Crest Group Ltd (hereafter referred to as “the client”). It also details the engagement scope of Jobin & Jismi (hereafter referred to as “the implementer”), the official implementation partner of Oracle NetSuite.

Proposal Summary:

This proposal outlines the integration of NetSuite and Shopify, leveraging the Celigo Shopify-NetSuite Integration App. The integration aims to streamline the e-commerce workflow by ensuring seamless communication between the Shopify platform and NetSuite’s ERP system. The goal is to synchronize customer data, sales orders, product information, and inventory updates in real-time, enhancing operational efficiency and minimizing manual data entry.

The integration will be executed in two phases:

Phase 1: Focuses on the basic integration setup, including customer, order, payment, fulfillment, and inventory synchronization.

Phase 2: Includes advanced features such as order history sync and additional custom flows.

The estimated time for completion of Phase 1 is 56 hours, including analysis, development, and testing.

The Phase 2 will cover additional flows, and a separate proposal and estimate will be shared for this phase at a later date.

This proposal is based on discussions and prior communications. Any additional modifications identified during development will be treated as a change request.

Requirement Overview:

This section provides an overview of the integration requirements, including the data flows between NetSuite and Shopify, and the specific objectives for the integration.

1) Customer Sync

Customer sync from NetSuite to Shopify

  • This flow adds or updates customers and its address book and meta fields from NetSuite to Shopify. If the customer already exists in Shopify, this flow updates the existing customer record. The flow runs in predefined schedules.

Customer sync from Shopify to NetSuite

  • The integration will sync customer records from Shopify to NetSuite. The sync will be initiated by new order creations in Shopify. Includes syncing the basic customer information as well as their billing and shipping address etc.

Notes

  • Updates in Shopify will be reflected in NetSuite. Deletes will not be reflected.
  • Field mapping will be confirmed in the initial stage of development • Multiple addresses are allowed in NetSuite and Shopify.

2) Order Sync

Order Sync from Shopify to NetSuite 

  • Order Creation Sync from Shopify to NetSuite will be a real-time sync.
  • Orders placed on Shopify will be created in NetSuite as ‘Pending Fulfillment’ sales orders. 
  • Order details such as product name, quantity, customer information, and payment status will be included. 
  • Order updates made in Shopify after fulfillment will not be reflected in NetSuite unless they occur before fulfillment. The Order Update sync is not real time. 
  • Order Cancellation: If an order is cancelled in Shopify, the corresponding order in NetSuite will be updated to ‘Closed’ status.

3) Inventory Sync 

Inventory Sync from NetSuite to Shopify 

  • Inventory Sync from NetSuite to Shopify will be a scheduled sync. 
  • Through this flow we set the ‘Available’ of Product. The ‘In stock’ and ‘out of stock’ status are assigned by Shopify.

4) Product Sync

Product Sync from NetSuite to Shopify

  • Product Sync from NetSuite to Shopify will be a scheduled sync.
  • Various item types in NetSuite, including Inventory, Assembly, and Kit Items, can be synced using the available flows in the integration app.
  • The ‘NetSuite Item to Shopify Product Add/Update’ flow syncs items in NetSuite as Products in Shopify, with Kit items in NetSuite exported as Simple Products in Shopify.
  • The parent-child items from NetSuite can be synced to Shopify as regular Matrix Items in Shopify using the NetSuite Matrix Item to Shopify Product Add/Update flow.
  • Supports the sync of Item Images from NetSuite as Product Images on Shopify.

5) Fulfillment Sync

Fulfillment sync from NetSuite to Shopify

  • Fulfillment Sync from NetSuite to Shopify will be a scheduled sync. • New fulfillments will be synced from NetSuite to Shopify. The integration will support creating new fulfillment data but will not update existing fulfillments in Shopify.

6) Auto Billing Sync

  • Auto Billing Sync will be a scheduled sync.
  • NetSuite sales order to NetSuite invoice (add): The flow enable you to automate the generation of invoices for sales orders imported from Shopify into NetSuite.

7) Refunds and Cancellations Sync

Refunds and Cancellations Sync from Shopify to NetSuite

  • Refunds and Cancellations Sync from Shopify to NetSuite will be a scheduled sync.
  • Refunds processed in Shopify will be synced as Customer Refund records in NetSuite.

8) Payments Sync

Create NetSuite Customer Deposit

  • If you charge customers at the time of sale and before the order is fulfilled, the integration creates customer deposits in NetSuite as soon as the order is imported into NetSuite.
  • Once customer deposit records are created in NetSuite and the order is fulfilled, you can apply the order invoice to the customer deposit records.
  • Only Transactions marked as Captured are considered for creating Customer Deposits.
  • The integration flow creates one customer deposit per each payment method used on the order.

9) Price Level Sync

  • Price levels in NetSuite (e.g., Retail, Wholesale, Trade, Special) are handled in Shopify as Discounts (Tags). No custom flow is implemented for the purpose.
  • If price levels in NetSuite have fixed discount rates, we can sync the Retail Price from NetSuite to the Price field in Shopify’s product page.
  • Retail Price will be the base price in NetSuite, and any discounts will be applied in Shopify based on the price level tags.
  • Shopify can then apply discounts using predefined Tags (e.g., Retail Price, Trade Price, Wholesale Price, Special Price).
  • During customer sync, we can map the NetSuite Customer Price Level Feild to the corresponding Tag in Shopify Customer.
  • When prices in NetSuite are updated for a price level other than Retail price, those updates are directly handled in Shopify, not via the sync.

Assumptions:

  • Field mapping should be defined in the initial stage of development.
  • Integration will be active for new records created in NetSuite or updates that happen in NetSuite. The migration of existing/historical customers and items also included in the scope of this development but will be considered only if required by the client.
  • Sales orders will be created with status ‘Pending Fulfillment’ in NetSuite.
  • Some fields in NetSuite have predefined character limits. If any field in Shopify exceeds these limits, potentially affects synchronization from Shopify to NetSuite.
  • Warehouse’s locations will not include any bin management.
  • We are not considering the unit of measure specified in any records.
  • We will not be considering multiple currencies and assume that there is only one base currency.
  • Date format of the data sent to ShopifyAPI Should be UTC format and the date format in NetSuite will be followed according to the global preference set up in the account.
  • The integration requires a subscription to the Premium Edition of the Shopify NetSuite Integration App and is also available in the Celigo Sandbox environment.

Risks:

  • Some of the API endpoints will be deprecated/version updates can take place in the future.  
  • If there are any null values in any fields in NetSuite or Shopify, we will be updating the null value itself in the corresponding fields  
  • Some APIs will infer some mandatory fields while sending data to the Shopify website and which will not be a mandatory field in NetSuite, and we might need to make it a mandatory field in NetSuite  
  • Creation of items in the Shopify website will not be reflected in NetSuite.

Estimated Effort – 56 Man Hours

Leave a comment

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