Skip to content

Shopify Flow ​

Use Shopify Flow with UpForm to automate actions when a customer submits a form — for example, add customer tags, create a discount, or connect to other Shopify apps.

UpForm sends a New UpForm Submission trigger to Shopify Flow. Each trigger includes the form title and the submitted field values.

To save answers to a customer profile or customer metafield at submit time, use the Advanced tab on supported fields in the form builder instead of building a Flow workflow for that step. See Date for an example with birth dates.

Before you begin ​

  • Install the free Shopify Flow app from the Shopify App Store.
  • Your UpForm plan must include Workflow automation.
  • On each form that should trigger Flow, enable Save submission data in the General tab. Shopify Flow does not run when submission data is not saved. See General.
  • Shopify Flow is a store-wide setting. You do not enable it separately on each form, and you do not use Add workflow automation provider.
  • Shopify Admin and Flow labels can change. If a label does not match exactly, use search in Shopify Flow or the app’s help.

Enable Shopify Flow in UpForm ​

  1. Open UpForm in Shopify admin.
  2. Go to Settings → Workflow automation.
  3. Find Shopify Flow in the provider list.
  4. Turn the switch on.

Enable Shopify Flow in Workflow automation

The change saves automatically. Shopify Flow stays enabled for all forms on your store until you turn it off.

You can still connect other workflow providers (Klaviyo, Zapier, and others) in the same settings area. They run independently of Shopify Flow.

How the trigger works ​

When a customer submits a form and UpForm saves the submission, UpForm queues a New UpForm Submission trigger for Shopify Flow.

In Shopify Flow, choose UpForm → New UpForm Submission as the workflow trigger.

Each trigger payload includes:

PropertyDescription
submission.formTitleTitle of the form that was submitted
submission.fieldsList of submitted fields

Each item in submission.fields includes:

PropertyDescription
nameInternal field name (for example, email-1, date-1)
labelField label shown in the form builder
valueSubmitted value, stored as a string
typeValue type: string, number, boolean, file, or mixed
filesFor file fields only — file name, URL, and media type

Field names in Flow ​

UpForm assigns each field an internal name when you add it to the form. Names follow the pattern {field-type}-{number} — for example, email-1 for the first email field and date-1 for the first date field.

Use the name value in Flow conditions and Liquid templates, not the field label.

If you add more than one field of the same type, the number increases (email-2, text-3, and so on). Build or update your workflows after you change the form layout so the names still match.

Example Liquid to read an email field:

{{ submission.fields | where: "name", "email-1" | map: "value" | first }}

File upload fields ​

File fields include a files array with fileName, originalSource (public URL), id (Shopify file GID when applicable), and mediaType (IMAGE or FILE). The value property contains a summary string for the upload.

What you can build in Flow ​

Use Shopify Flow when you need automation beyond saving field values to the customer profile:

  • Add customer tags — segment subscribers or interest groups
  • Create discount codes — welcome or promotional offers
  • Connect to other apps — email, loyalty, or fulfillment tools that listen for Flow triggers
  • Scheduled workflows — run on a schedule using customer segments or metafields already on the profile

Workflow types:

  • Event-based — runs when the form is submitted
  • Time-based — runs on a schedule