NetSuite > Shopify - order fulfillments
Introduction
This flow was designed on the basis that orders are typically fulfilled in NetSuite.
A NetSuite query retrieves orders that have been fulfilled in the last day, with sales order number, PO number, shipping details, tracking numbers, and status (sorted by most recent first). Next, anything that is not in a shipped state is removed before data is cached.
We then retrieve and cache required details from Shopify, and the final cache is pushed to Shopify (sending fulfilment IDs and tracking numbers).
Process flow snapshot
Limitations
Carrier information in NetSuite.
Out of the box, NetSuite does not include a 'carrier' field in the package section of item fulfillments.
Fulfillment cancellations in Shopify
This flow will fail if an order has been fulfilled and then the fulfillment is subsequently cancelled in Shopify.
Shopify GraphQL error handling
There is a known limitation with error handling for Shopify GraphQL. Please refer to the Error handling for Shopify GraphQL section for more information and a suggested approach that you may wish to adopt in your flows.
Assumptions
No assumptions noted for this flow.
Customisation
To ensure that this process flow runs as required, some customisation options are available. These are documented in the following sections:
Flow variables
This process flow does not use flow variables.
Process flow shapes
This process flow includes some shapes that can be configured with your own settings. Please see guidelines in the table below.
Shape settings determine the outcome of process flows. Do not change shape settings unless they are listed below.
Trigger
This SuiteQL query on the NetSuite connector retrieves fulfillment (shipment) records, together with related sales order and shipping details, for the past day. As such, the default schedule is defined to run once a day. You can update the schedule, but ensure that the NetSuite query is also updated to stay aligned.
Notify
This flow is designed in a try/catch structure, so notifications are generated if any part of the flow fails. To achieve this, the catch route includes a notify shape, which must be configured for your own notification preferences.
Alert level: Defaults to error but can be changed if needed
Channel: Defaults to email + log but can be changed if needed
Email Limit: Defaults to 5 but can be changed if needed
Notification Group: Replace the notify placeholder which your required notification group.
Message: If required, you can change the placeholder message.
For more information, please refer to our Notify shape and Notification groups pages.
Connector (NetSuite)
If you did not add or select a NetSuite instance during the blueprint installation process, the following settings must be configured:
Source instance : Set to your required NetSuite instance.
Source endpoint : Set to POST suiteQL
Query: Leave as the default
Connector (Shopify)
If you did not add or select a Shopify instance during the blueprint installation process, the following settings must be configured:
Source instance : Set to your required Shopify instance.
Source endpoint : Set to POST Get order by ID by name via graphql
Variables : Leave the Order Name variable as it defaults.
Connector (Shopify)
If you did not add or select a Shopify instance during the blueprint installation process, the following settings must be configured:
Source instance : Set to your required Shopify instance.
Source endpoint : Set to POST Get order for fulfillment via graphql
Variables : Leave the Order ID variable as it defaults.
Connector (Shopify)
If you did not add or select a Shopify instance during the blueprint installation process, the following settings must be configured:
Source instance : Set to your required Shopify instance.
Source endpoint : Set to POST Fulfill orders via graphql
Variables : Leave the Fulfilment Order ID and Tracking Number variables as the defaults.
Reference
Reference information for this process flow is documented in the following sections:
Scripts in this process flow
This process flow does not use scripts.
Cross-reference lookups in this process flow
This process flow does not use cross-reference lookups.
Last updated
Was this helpful?
