Skip to main content
Shopify Flows Library - Grantable Rewards &/ Points

How to use Shopify Flows to automatically grant rewards to customers' wallet

OMNI Team avatar
Written by OMNI Team
Updated over a week ago

Apart from Welcome Reward, Birthday Reward & One-time giveaway campaign, you can also set up automation logics within "Shopify Flow" app.

A Shopify Flow basically consists of 3 main building blocks:

  • Triggers > Conditions > Actions

  • For "Actions", below examples only focus on OMNI's "Grant reward" &/ "Add points"

(Below screenshots are for reference only, settings/ details within Shopify Flow may evolve from time to time. We strongly recommend merchants to self test & validate if the flows logic suit your business needs & understand the expected behavior.)

OMNI Grantable Rewards &/ Points can be assigned to customers based on different event triggers, so you can leverage this to drive your various business objectives!

Business objectives examples:

Before you proceed

  • Install "Shopify Flow" app on your store - FREE for all Shopify plans

  • Within "OMNI" app (Program > Integrations > Shopify Flow), turn on "Flow triggers" & "Flow actions"

Step 1 - Create a Grantable Reward

  • Within "OMNI" app, go to "Rewards > Create grantable reward":

Step 2 - Create a Shopify Flow

  • Shopify admin > apps > "Shopify Flow" > click "Create workflow" > click "Select a trigger" based on your business objective

💡Business objective: Drive member registration (increase member base)

  • Flow logic: After a customer created an enabled account, grant him a reward/ add points to him

  • Trigger: "Member account registered" (OMNI - wv/member/account_registered)

  • Condition: /

  • Action: Grant reward &/ Add points

  • Prerequisites: /

💡Business objective: Encourage tier upgrade

  • Flow logic: After a customer tier upgraded, grant him a reward/ add points to him

  • Trigger: "Tier updated" (OMNI - wv/tier/updated)

  • Condition: /

  • Action: Grant reward &/ Add points

  • Prerequisites: /

💡Business objective: Drive collection sales & repeat purchase

  • Flow logic: After a customer's order got fulfilled & the order consist of products from a specific collection which had reached a certain amount $xx (E.g. $500), grant him a reward/ add points to him

  • Trigger: "Order fulfilled" (Shopify - Order fulfilled)

  • Condition:
    Check if: Collections handle is equal to chair AND Presentment money amount is greater than or equal to 500

    • "chair" is the collection handle "collections_item.handle"
      ("handle" is the last part of a url e.g. https://xxx.myshopify.com/collections/chair)

    • "Amount" "order.currentSubtotalPriceSet.presentmentMoney.amount"

  • Action: Grant reward &/ Add points

  • Prerequisites: /

  • Remarks:

    • This flow is truly only counting the sales of a product from a collection, NOT the entire order value. In below example, only order 1001 matches the criteria
      e.g. chair ($100), table ($200)

      • order 1001: chair x 5pcs ($500) + table x 1pc ($200) = $700

      • order 1002: chair x 1pc ($100) + table x 2pcs ($400) = $500

💡Business objective: Drive basket size & AOV

  • Flow logic: After a customer's order got fulfilled & the entire order (incl. shipping fee) reached a certain amount $xx, grant him a reward/ add points to him

  • Trigger: "Order fulfilled" (Shopify - Order fulfilled)

  • Condition:
    Check if: Presentment money amount is greater than or equal to 1000

    • "Amount" "order.totalReceivedSet.presentmentMoney.amount"

  • Action: Grant reward &/ Add points

  • Prerequisites: /

💡Business objective: Winback lapsed customers

  • Flow logic: Order fulfilled wait xx days still no new order, grant him a reward/ add points to him

  • Trigger: "Order fulfilled" (Shopify - Order fulfilled)

  • Condition:

    • Check if: Order display fulfillment status ("order.displayFulfillmentStatus") is equal to FULFILLED

    • Wait for xx days

    • Check if: Order created at ("order.createdAt") is equal to order created at

  • Action: Grant reward &/ Add points

  • Prerequisites: /

💡Business objective: Encourage first order purchase

  • Flow logic: If the order is actually the first order of that customer, grant him a reward/ add points to him

  • Trigger: "Order created" (Shopify - Order fulfilled)

  • Condition: Check if: Number of orders ("order.customer.numberOfOrders") is equal to 1

  • Action: Grant reward &/ Add points

  • Prerequisites: /

💡Business objective: Incentivise customers to purchase based on interest tag

  • Flow logic: Order fulfilled wait xx days still no new order, grant him a reward/ add points to him

  • Trigger: "Customer tags added" (Shopify - Customer tags added)

  • Condition:

    • Check if: Tags is equal to furniturefan

  • Action: Grant reward &/ Add points

  • Prerequisites: /

  • Remarks: This flow works only after the flow is turned on and then customers got newly tagged

    • e.g. If a customer already has a "furniturefan" tag on his profile before this flow is active, logically won't trigger the flow.

💡Business objective: Sell OMNI grantable rewards as an "All-in-One Coupon Bundle"

  • Flow logic:
    There is a product named "All-in-One Coupon Package". This package product includes 6 items (free products, product/order level/free shipping discount)
    After customers ordered a product named e.g. "All-in-One Coupon Package", flow will automatically fulfill the order and the grantable rewards will be issued to customers

  • Trigger: "Order ready to fulfill" (Shopify - Order ready to fulfill)

  • Condition:
    Check if: Action is equalto CREATE_FULFILLMENT AND
    Method type is equal to NONE AND
    Product title is equal to "All-in-One Coupon Package"

  • Action: Grant reward &/ Add points

  • Prerequisites:

    • Within "Shopify > Products", please create a digital product
      e.g. "All-in-One Coupon Package" (by unticking "This is a physical product")

    • Within "OMNI", please create grantable rewards
      e.g. 6 Grantable rewards (some can be free products, product/order level/free shipping discount, etc)

💡Business objective: Drive traffic to retail store

  • Flow logic: Customer placed an order at POS, grant him a reward/ add points to him.

  • Trigger: "Order created" (Shopify - Order created)

  • Condition:
    Check if: The order publication channel ("Order.publication.name") is Point of sale

  • Action: Grant reward &/ Add points

  • Prerequisites: merchant has installed "Shopify POS" app

💡Business objective: Drive reviews submissions

  • Flow logic: After a customer's order fulfilled, the review app will send him a review request email. Customer click that and submit review, will then trigger the "New review received" event. Then merchant can grant reward &/ add points to customer.

  • Trigger: e.g. Judge.me Product Reviews app's "New review received"

  • Condition: /

  • Action: Grant reward &/ Add points

  • Prerequisites: installed a Review app which has integration with Shopify Flow app (e.g. Judge.me Product Reviews app)

💡Business objective: Drive product subscription sales

  • Flow logic: When a customer subscribes a product, a contract will be created and once that is triggered, grant him a reward/ add points to him.

  • Condition: /

  • Action: Grant reward &/ Add points

  • Prerequisites: installed a Subscription app which has integration with Shopify Flow app (e.g. Shopify Subscriptions app)

Remarks:

  • If you choose to "Grant Reward", you will need to create a Grantable Reward first to get the Reward ID

  • For "Grant reward", basically can just leave "Event handle" & "Event key" empty (so that the flow will run recurringly)

    • Yet, if you would like to prevent customers from being granted the reward multiple times via the grant reward action, you can utilize the deduplication mechanisms by filling in the "Unique Token" in the Shopify flow action - read here for more details

Have questions in mind? Contact us at [email protected] and we are happy to assist!

Did this answer your question?