NetSuite fulfillment to Shopify fulfillment (add) - Notify Customer Based on Condition

I would like to be able to map the notify customer on a fulfilment to T/F based on some logic, rather than a simple hardcoded Yes/No such that Fulfilment Orders that require shipping have notify = True; and those that “do not require shipping” have notify = False.

Without this the customer gets 2 shipping notifications, first for the items that are truly shipped; then a second for the items on the order (eg service type items) that have been fulfilled but not physically shipped. This is confusing and not great customer experience.

I think the relevant data on the Shopify Fulfilment is the “Shipping Method” (delivery_method). On test orders this shows as “Shipping not required” for such items. I’ve tried to write a handlebar expressions but don’t think the data is being exposed in the flow?

Thank you

Hi Sandra,

Currently, in the standard Shopify–NetSuite integration app, the NetSuite Fulfillment → Shopify Fulfillment (Add) mapping only allows the notifyCustomer field to be set as a static True/False value. However, you can achieve the desired behavior by creating a saved search formula in NetSuite to determine which customers should be notified and which should not.

Hi Berns

Thank you for responding.

The issue is that there is more than one fulfilment created in Shopify (from one fulfilment in NetSuite) and Shopify creates separate fulfilment orders for the items that do not require shipping. I want to notify the customers about fulfilments UNLESS they are for Order Fulfilmetn sections that are classified by Shopify as “Does not require Shipping”.

I wish to avoid sending a notification that non-shipping items have been shipped :slight_smile: Although I do need to marl them as fulfilled to close the order in Shopify.

Ideally I would add handlebar expression on the Notify setting in the flow but I cannot seem to access the field delivery_method

Thanks again

Sandra

Hi Sandra,

The NetSuite Fulfillment - Shopify Fulfillment (Add) flow reads data from the saved search, and it does not have access to the Shopify fulfillment JSON. This is why the delivery_method field cannot be accessed in the mapping. Because of this, any conditional logic for the Notify Customer value needs to be handled within the saved search.

One possible approach is to create a custom field on the Item Fulfillment form (for example, a checkbox or text field) that indicates whether the customer should be notified. If the custom field is checked or contains a value indicating that the order requires shipping, the saved search should return True for Notify Customer. If the field is unchecked or indicates that shipping is not required, the saved search should return False.

This way, when the flow retrieves the data from the saved search, it will follow the value returned by the formula and prevent sending a notification to the customer when it is set to False.

Sample saved search formula:

CASE WHEN {custbody_notify_customer} = 'T' THEN 'true' ELSE 'false' END

or

CASE WHEN {custbody_shipping_type} = 'Shipping not required' THEN 'false' ELSE 'true' END

Hi Berns

I’m not sure if I am explaining myself properly. This is to do with the way Shopify creates multiple Fulfilment Orders from one Sales Order and the need to set different notify options for different parts of the order (ie by fulfilment order).

So we have one item fulfilment for the order coming across from NetSuite - but this results in 2 fulfilments in Shopify: one for the physical products and a separate one for those marked “does not require shipping”. I need to find a way to set Notify to True for the product related element but False for the fulfilment element relating to items that do not require shipping.

Here is an example of a part of one order in Shopify where you can see the separate fulfilment orders:

The flow gets the fulfilment order info from Shopify but the export does not contain the data I need:

"query": "query FulfillmentOrderList($orderId: ID!) { order(id: $orderId) { fulfillmentOrders(first: 250) { nodes { id requestStatus status lineItems(first: 250) { nodes {lineItem{id quantity} id totalQuantity remainingQuantity} } fulfillBy assignedLocation { address1 address2 city countryCode location { id } } } } } }",
"variables": {
"orderId": "gid://shopify/Order/{{{encodeURI data.order_id}}}"
}
}

If this included delivery-method I would be able to manage using a handlebar expression but I cannot edit that in the flow. Is there any other way I can achieve this?

Sending a customer notification that something that can’t be shipped has been doesn’t make sense, yet I need to fulfil the order to close it down.

Thanks again

Hi Sandra,

The fields available in the GraphQL query are the only ones accessible by the flow and cannot be modified. To include delivery-method, a feature request would need to be submitted to the product team. I can submit the request on your behalf; however, we cannot commit to an implementation date, as it must be reviewed and applied to all users, given that this is a prebuilt flow.

Yes please

Shopify split orders into order fulfilments based on location and delivery method, however the integration app only handles location. It would be useful to be able to manage the Shopify order fulfilments based on their definition.

Currently in the data I see

"fulfillBy": ,
"assignedLocation": {
"location": {
"id": "gid://shopify/Location/………………."

if we could add delivery_method it would be one small change to the HTTP request body and make the flow a lot more flexible.

In the meantime, as a workaround I can make the items “require shipping” so the fulfilment emails do not get split when passed to Shopify.

Sandra