Shopify × WhatsApp

Shipping updates on WhatsApp, straight from Shopify.

Shopify's order fulfilled event starts a Nonito flow that sends the customer a WhatsApp message, in English or Arabic, and attributes every order that follows. WhatsApp is where customers in Egypt and the Gulf already read their messages, and it carries buttons, images and replies.

What the flow uses from Shopify.

Nonito receives orders, abandoned checkouts, customers, products and collections from Shopify. For this flow it listens for one event and uses a handful of fields from it. Discount codes are created in your Shopify store, one per customer, with the expiry you set.

From ShopifyWhat it is for
Order fulfilled
Shopify fulfillment
Fires when the order is marked fulfilled, with the courier and tracking link if your fulfilment app adds them.
Phone numberFrom the order.
Fulfilment statusThe flow follows real events, not a guessed timeline.
Tracking linkSo the customer can check without asking you.
Courier namePeople want to know who is knocking. Optional.
Delivery windowIf your courier provides one. It is the single most useful thing in the message. Optional.

The flow, as it sits in the builder.

Tell the customer where the order is before they have to ask, at every step from dispatch to the door.

Shipping updates · Shopify → WhatsAppLive in Nonito
Triggers
Trigger Event
Event:Order fulfilled
Source:Shopify
Messaging
WhatsApp
Template:order_shipped
Includes:Courier + tracking
Timing
Wait for Event
Wait for:Out for delivery
Messaging
WhatsApp
Template:out_for_delivery
Timing
Wait for Event
Wait for:Delivered
Recommendations
Product Recommendations
Source:Purchase history
Messaging
WhatsApp
Template:delivered_next_pick
The same builder your team logs into. Every node here is configurable.
WhatsApp

On its way

Good news, Nour. Order #1042 is on its way with Bosta. Track it any time: yourstore.com/track

WhatsApp

Arriving today

Your order is out for delivery today, between 2pm and 5pm.

3 WhatsApp templates to copy.

Use them as they are or rewrite them in your voice. The variables in braces are filled from Shopify at send time.

On its wayEnglish

Good news, {{first_name}}. Order {{order_number}} is on its way with {{courier}}.

Track it any time:
{{tracking_link}}

Naming the courier matters more than it sounds. People want to know who is going to knock.

Arriving todayEnglish

Your order is out for delivery today, between {{delivery_window}}.

The most useful message in the set. A window is what lets someone arrange to be in, which is what stops a failed delivery.

DeliveredEnglish

Delivered. Hope you like it, {{first_name}}.

Most people who bought the {{product_name}} come back for the {{recommended_product}}.

The recommendation only works here because the customer is holding the thing it relates to. The same line a week later is just an ad.

Every message in this flow, with the reasoning behind each one: Shipping & Delivery Updates in the flow library →

How to set up shipping updates on WhatsApp from Shopify

01

Connect your Shopify store

Sign up, enter your store domain and approve access in Shopify. Orders, checkouts, customers and products start flowing in, and nothing is exported by hand.

02

Connect WhatsApp

Bring your WhatsApp Business number or set one up through Nonito. Templates are written in English and Arabic and submitted to Meta for you.

Then build the flow

  1. Create the flow, choose Trigger Event, and select order fulfilled.
  2. Add a WhatsApp node for the dispatch message. Map the courier and the tracking link.
  3. Add a Wait for Event node set to out for delivery.
  4. Add a WhatsApp node with the delivery window.
  5. Add a second Wait for Event node set to delivered.
  6. Add a Product Recommendations node reading purchase history, then the final WhatsApp node.
  7. Add a branch for a parcel that has not moved in 48 hours, routing to a person.
  8. Send a test order through and check each message fires on the real status.
  9. Turn it on. Every order that follows a message is attributed back to this flow in the dashboard, so you can see what it earned.

Where this goes wrong

  • This flow is only as good as your courier. If shipping statuses are not written back to the order, there is nothing to fire on.
  • Three updates is the ceiling. Every status change your courier emits is not a message the customer wants.
  • If the parcel stalls, the silence is louder than the updates were. Have a plan for what happens when nothing moves for 48 hours.

Meta charges per delivered template message, and the rate depends on the country. WhatsApp API pricing by country →

Questions Shopify teams ask about this.

Can Nonito run shipping updates on WhatsApp from Shopify?

Yes. Shopify's order fulfilled event starts the flow, and Nonito sends the WhatsApp message with the customer's details filled in from Shopify. It runs on its own once switched on.

Which Shopify event starts it?

Order fulfilled. Fires when the order is marked fulfilled, with the courier and tracking link if your fulfilment app adds them.

Do I need a WhatsApp Business API account first?

No. You can bring an existing WhatsApp Business number, or Nonito sets up the API connection and submits your templates to Meta for approval during onboarding. Approval is usually the only thing you wait on.

Can the messages go out in Arabic?

Yes. A Language node sends Arabic speakers the Arabic template and everyone else the English one, using the language on the Shopify customer record.

Is three messages too many?

These are the messages customers otherwise ask for. Each one answers a question they were about to send you, which is why they get read rather than muted.

Does this work with our courier?

It reacts to fulfilment and shipping events on your store, so any courier that writes status back will drive it. If yours does not, this flow cannot run.

Put shipping updates on WhatsApp live.

Start on the free plan and connect Shopify, or book a call and we will set the first flow up with you.

CHAT WITH US • CHAT WITH US •