03 October 2019

What is Shopify Plus? Part 3 - Shopify Flow

6 Minute Read

Part 3 - Shopify Flow

Want to work with our team?
Get in touch

Welcome to the third article in the ‘What is Shopify Plus?’ mini series – a series that explores the Shopify Plus platform and the flagship features that accompany it. This article will examine Shopify Flow – a powerful app that allows merchants to create, customise and edit automated internal processes.

The first two articles of the Shopify Plus mini series can be found here:

What is Shopify Flow?

Shopify Flow is a native Shopify application that allows merchants to automate everyday tasks. These automated tasks – known as workflows – can either be handpicked from a library of pre-made templates or can be built from scratch in your browser. Shopify Flow doesn’t require any code knowledge and is displayed through an intuitive, user-friendly interface.

Popular uses of Shopify Flow

  • Tag customers based on whether their order includes discounts

  • Add loyalty tags to customers based on their order amount

  • Tag a customer when an order's risk level is high

Below, we'll go into detail on how a workflow is created.

Implementing a workflow

Workflows are built using a combination of three steps:

Triggersconditional statements and actions.

For an automated action to take place, a specific event must first trigger the automation and subsequent conditions must be met before the action is outputted. If the conditions are not met, the action is not outputted.


A trigger is a specific event that, when observed, begins the workflow as established in the Shopify Flow user interface. Out of the box, there are 9 default triggers, however, this number can increase with the integration of various third-party applications.

In the example picture below, the trigger “order risk analyzed” is seen at the top of the workflow. This will trigger when an order is flagged with a new risk level – regardless of whether it’s low, medium or high.

Shopify workflow screenshot

Conditional statements

Conditional statements are rules that must be passed as either true or false in order to dictate the actions that are outputted. There are over 100 different conditions to pick from, each with a number of variations available. Multiple conditional statements can be grouped together, meaning all statements have to be true to pass the entire statement.

An example of two statements grouped together can be seen below, just underneath the aforementioned trigger. These statements are “Order risk level = high” and ‘Order billing address matching shipping address = false’. If either of the conditions prove false, the workflow will look to see if any extra conditions or actions have been added (positioned below). In this case, there are no actions or extra conditional statements, regardless of the outcome.

A screenshot of a conditional statement example


Shopify offer a number of actions that work out-the-box – 10 Shopify-focused and 6 that incorporate third-party productivity apps such as Google Sheets, Slack, Asana and Trello.

In the example below, two actions – ‘Cancel order’ and ‘Add customer tags’ – are added. If both conditions are passed as true, then the two actions will be executed. However, if one or both statements are passed as false, the conditions are not met and the workflow will end with no actions outputted.

A screenshot of customer tags being added to the workflow

Incorporating multiple conditions and actions

Shopify Flow workflows can be as simple or as complex as you make them. Some might only include a trigger and an action, whereas others can incorporate a vast number of different outcomes.

In the example below, extra functionality has been added to the workflow by adding a second set of conditional statements. These will only be tested if the first statements are passed as false.

If the workflow reaches the second set of conditional statements and passes them as true, the second action of ‘add order tags’ will be outputted. However, if both sets of statements are passed as false, the workflow will end with no outputs as there are no further actions or conditions defined.

A screenshot of the example workflow where multiple conditions and actions are being used.

What can (and can’t) Shopify Flow do?

The above workflow serves as a great example of how Shopify Flow can easily automate an important risk analysis procedure. However, the application’s abilities stretch well beyond just risk analysis.

Some of Shopify Flow’s most popular uses include:

  • Tag products that are low or out-of-stock

  • Temporarily remove out-of-stock products from your store

  • Set up internal reminder emails to send when stock falls below a certain level

Loyalty and promotions
  • Track the use of discount codes

  • Set up internal reminder emails to send when customers order large orders.

  • Connect with third-party loyalty apps for extra functionality

  • Add tags to customers based on shopping habits, postal code, email address, order history, IP address, etc.

  • Track customers who make large refunds

  • Organise customers by lifetime spend tiers

  • Send notification emails to staff when order is placed or refunded

  • Get notified about irregularly large orders

  • Tag orders paid with gift cards

  • Automatically add new products to collections based on keywords identified within the products title

Liquid integration

Many workflows result in actions that involve internal email notifications to staff. These emails are totally customisable inside the Shopify Flow user interface and support the use of Liquid variables.

This means that the emails can include dynamic content, such as customer name, email, order number, order cost, etc.

For example, Shopify provides this following example in their documentation:

Writing the email in the Shopify Flow interface using Liquid code variables:
To customerservices@company.com Please send a thank you note to '{{order.customer.firstName}} {{order.customer.lastName}} ({{order.customer.email}}) for placing an order for {{order.totalPriceSet.shopMoney.amount}}. '
How the email looks once outputted in an actual email:
To customerservices@company.com Please send a thank you note to Jim Hall (jim@example.com) for placing an order for £560.50. 


Unfortunately, one limitation was found. Emails triggered by actions cannot be sent to the respective customer using the {{order.customer.email}} variable. Instead, emails can only be sent to one permanent email address per action. This means that, whilst the body of the email can contain dynamic content such as those seen in the above example, the email recipient field cannot.

For this reason, emails sent through Shopify Flow are typically used to send reminder emails to specific people within a business – perhaps the logistics team, the PR team, or customer services. This way, these specific people can then follow up the reminder email with a real, personalised email to a client if required.

To conclude…

Shopify Flow is yet another of the many perks available exclusively to Shopify Plus merchants. A lot like Shopify Scripts (discussed in the previous article of the series), Shopify Flow’s focus is on automation, ultimately making life easier for store owners.

Given the extensive selection of triggers, conditional statements and actions available, the number of possible combinations is enormous.

Want to work with our team?

Get in touch