Skip to main content

Cash Sale and Sales Order in single Shopify NetSuite IA

Comments

6 comments

  • KHAISAR AHMAD QA Lead

    Hello Sujit Desai

    This is Khaisar from Celigo. Please allow me to answer your query. 

    The existing Shopify - Netsuite Integration App, do support this usecase. 

    First thing, I would like to confirm here, for all the POS Orders (including Buy Online Pick In Store), we internally handle them to import as CashSales even if only the flow "Shopify order to NetSuite sales order (add realtime) for sales order" is enabled. We internally read the Order source, and for all the POS orders, we import it as CashSales (as this is ideal workflow for most of the business). For this to work, you just need to have your "Shopify order to NetSuite sales order (add realtime) for sales order" enabled and below setting under Order > POS section as disabled. By this you can sync both your online & POS order using the same flow and in realtime with SalesOrder & CashSale record type respectively. 

    And for the next query "Using scheduled flow, sync Shopify Orders to NetSuite as" is not displayed. Actually, we show this setting only if both the realtime flows are in disabled status. If any one of the realtime flow is enabled, then we hide this setting, as this flow "Shopify order to NetSuite order (sales order or cash sale scheduled)" considers the same record as like the realtime flow i.e., either SalesOrder or CashSale. However as mentioned in the first reply, though both Realtime and Batch flow are set to SalesOrder record, we still import the POS orders as Cashsale. 

    Please review this and let us know for further queries. 

    Thanks, 

     
    
    
    1
  • Sujit Desai
    Engaged
    Celigo University Level 4: Legendary

    Khaiser,

     

    Thank you so much. This was much relieving. Currently we do not map the payment method on sales order and we map it on the customer deposit. I would like to know that when POS orders are treated as Cash Sales when synced through "Shopify order to NetSuite sales order (add realtime) for sales order" how do we map their payment method since this flow will not have the payment method mapping. Also what happens to the customer deposit flow when the order is POS order. Does it gets triggered or not?

    0
  • KHAISAR AHMAD QA Lead

    Hello Sujit Desai

    Greetings !!
    As I mentioned previously, we use the same SalesOrder import even to import the CashSale records in certain scenarios. This means we need to specifically handle few mappings which are required to create a cashsale record, something like

    1. Location
    2. Account
    3. Payment Method etc., 

    For other mappings except Payment Methods, they don't require any special handling as that won't impact the sales order record. But for Payment Methods, as it affects import of customer deposit, we need to handle in such a way that this mapping is applicable only when the source is "POS". For this to achieve, please make use of below handlebar for the Payment Method mapping

    {{#if source_name}}{{#compare source_name '===' 'pos'}}{{payment_gateway_names}}{{else}}{{/compare}}{{/if}}

    This will ensure the Payment Method is set only for CashSale record and not considered for SalesOrder. 

    And as well, whenever we are importing a POS order as CashSale, we don't trigger the Customer Deposit flow. It is triggered only when we are importing the particular order as Sales Order. 

    Please review this and let us know for any further queries. 

     
    
    
    1
  • Sujit Desai
    Engaged
    Celigo University Level 4: Legendary

    KHAISAR AHMAD

    This is really great insight. Thanks a ton! Just one quick query. We will place orders from POS but we will ship the order products to customer if the the product is out of stock. We call these orders as 'endless aisle' and they are equivalent of 'Buy in Store and ship to customer'. We will be importing these orders as netsuite sales orders. To handle these orders do we need only need to check the following settings in POS subtab of order settings:

    Since the pos order source for this order will be 'POS' the payment method will be mapped for these sales order. And this will prevent the customer deposit flow run. Even thought the source is same for POS orders and endlessAisle orders the former is fulfilled and latter is not. Is there any other conditions like fulfillment status that we can add to make sure we achieve the following:

    1. Shopify POS, fulfilled order: NetSuite Cash Sale

    2. Shopify online, unfulfilled order(BOPIS): NetSuite Sales Order and Customer Deposit

    3. Shopify POS, unfulfilled order(EndlessAisle): NetSuite Sales Order and Customer Deposit.

    I would appreciate if you can share the handlebar syntax for payment method that will accommodate the above requirements. Meanwhile I will try on my own for this as well. Thank you so much again. Much appreciate your help.

    0
  • KHAISAR AHMAD QA Lead

    Hello Sujit Desai

    Hope you are doing well !!

    In the above list you mentioned, we internally support both POS Orders & BOPIS Orders i.e., Scenario 1 & 2. And for EndlessAisle orders, we can try to handle this by extending the handlebar I provided previously. Mostly we will be using the node as you mentioned i.e., combination of "source_name" & "fulfillment_status"
    Can you confirm have you reviewed these kind of orders previously and what will be "fulfillment_status".

    Do you mind logging a support ticket with the same Order ID, and sample Order JSON for the same. So that we can review it thoroughly and provide you the handlebar.

    Please review and let us know for any further queries. 

    Thanks, 

     
    
    
    1
  • Sujit Desai
    Engaged
    Celigo University Level 4: Legendary

    Khaiser,

    I figured that out and it is working. Thank you for the lead again.

    0

Please sign in to leave a comment.