How to send order updates via SMS for Shopify
You will learn
Learn how to send order updates via text to people not opted in to your SMS marketing program.
These messages are a great way to:
- Expand your SMS audience, potentially converting recipients to sign up for marketing text messages.
- Decrease customer support questions by proactively providing information about orders.
Shopify customers can now collect transactional SMS consent on their thank you and order status pages via an app block and sync it to Klaviyo. Shopify Plus customers can also collect transactional SMS consent on their checkout pages the same way. Please note that collecting both transactional-only consent at checkout via app block and collecting consent for SMS order updates may appear repetitive to customers.
Before you begin
Please note the following about SMS order updates:
- This feature is only available for paid accounts with Shopify stores.
- Consent given for order updates only applies to that 1 order.
- This permission does not apply to SMS updates on any future orders, nor does it apply to SMS marketing messages. It is not the same as transactional consent.
- Approved transactional messages can send to people who have consented to receive:
- Only updates for that order.
- SMS marketing messages.
- Transactional SMS messages, such as through a Shopify app block.
- Before using this feature, your message must be approved by Klaviyo, either via using a pre-approved template or by submitting a custom message and going through the approval process.
- Review may take up to 24 hours. Klaviyo notifies you when it is complete.
- Editing a transactional message after it has been approved removes its transactional status, and the message will need to be re-submitted for approval.
- You can send order updates via post-purchase flows triggered by one of these metrics:
- Placed Order
- Fulfilled Order
- Fulfilled Partial Order
- Refunded Order
- Cancelled Order
- Confirmed Shipment
- Delivered Shipment
- Marked Out for Delivery
- You cannot use this feature if you are an alcohol or firearms brand, regardless of whether you have age-gating or not.
Note that Confirmed Shipment, Delivered Shipment, and Marked Out for Delivery only sync to Klaviyo if they are available in Shopify, and these events are only available for certain shipping carriers.
What is the difference between consenting to SMS marketing and order updates?
Subscribing to order updates is a more limited consent than subscribing to SMS marketing.
- Order update subscribers can only receive SMS messages about the order, such as when it was shipped or delivered.
- SMS marketing subscribers can receive SMS messages for anything, including sales, product launches, and updates for all orders.
Use case | Order updates | SMS marketing | |
Campaigns | ✖ | ✔ | |
Flow messages | Order updates | ✔ | ✔ |
Abandoned cart, welcome, winback, etc. | ✖ | ✔ | |
SMS conversations | ✖ | ✔ | |
Understand how consent for order updates works
The way someone opts in to receive SMS order updates is by:
- Going to the Shopify checkout page.
- Inputting their phone number in the shipping address field.

- Placing an order.
When an order-related event (e.g., Placed Order, Fulfilled Order) syncs to Klaviyo, it includes OptedInToSmsOrderUpdates. A value of True means a phone number was provided in the shipping address. You must add the consent language described below before using this field as consent for order updates.
This consent only applies to that 1 order. If someone places multiple orders, they will only receive updates about the order(s) where they inputted their phone number within the shipping address field. For order-update consent to apply, the phone number on the Klaviyo profile must match the phone number supplied for the order.
How can I see if someone consented to order updates?
You can view whether or not someone opted in to receive order updates in the event details. This field is called OptedInToSmsOrderUpdates.
The example below is for a Placed Order event, but this field is also included in other order-related events.

This information will not show on their profile; it’s not a profile property or part of channel consent.
What happens if someone unsubscribes?
Unsubscribing removes consent for all SMS messages.
For instance, say that a customer previously consented to both order updates and SMS marketing. If they unsubscribe, either by clicking a link or texting an opt-out keyword, you will not be able to send them any SMS message, including order updates, until they opt back in.
Collect order update consent
If you haven’t already, you must update your settings in Shopify so that you can start collecting consent for order updates.
- Log in to your Shopify store.
- Navigate to Settings > Checkout.
- Under Customer contact method, select Email (if it’s not already selected).

- Scroll down to the Customer information section.
- Locate the option for Shipping address phone number, and select Optional.

- Save your changes.
- Locate the Checkout language section.
- Click Manage checkout language.
- Search for the Checkout contact section.
- In the Optional phone label field, add the following language:
- “Phone number to receive order updates.”
- In the Phone tooltip field, add the SMS consent language, replacing the URL placeholders with the URLs to your privacy policy and terms of service:
- Suggested consent language: “Enter your phone number to consent to order-related text messages (order and shipping updates), including messages sent by autodialer. Consent is not a condition of any purchase. Msg & data rates apply. Msg freq varies. Unsubscribe by replying STOP or clicking the unsubscribe link (where available). View our Privacy Policy [Insert your URL] and Terms of Service [Insert your URL].”
- Example: “ View our Privacy Policy [mystore.com/policies/privacy-policy] and Terms of Service [mystore.com/policies/terms-of-service].”
- If you have engineering resources, we recommend adding this language directly to your checkout page. That way, the language is conspicuous to customers, which helps toward compliance. See Shopify’s Help Center for instructions.
- Save your changes.
- In the left sidebar, click Notifications > Customer notifications.
- Select Order Confirmation > SMS.
- If the status is Active, click Deactivate.

Create your transactional message
In Klaviyo, go to Flows and create or open a flow triggered by one of these Shopify metrics:
- Placed Order
- Fulfilled Order
- Fulfilled Partial Order
- Refunded Order
- Cancelled Order
- Confirmed Shipment
- Delivered Shipment
- Marked Out for Delivery
Creating a custom transactional message
Use an SMS message that is not part of an A/B test.
- Drag an SMS into your flow.
- Edit the content of your message (e.g., “Your order has shipped! Track it here [LINK]”). Do not include promotional content, such as discounts or sales.
- Save the content.
- Select the SMS message in the flow. In the configuration panel, select Apply for transactional status.
- Note: if you want multiple messages in a flow to be transactional, you must select them one at a time.
- Click Submit for review, then click Submit in the confirmation dialog.
- Keep the message in Draft until it is approved if you want it to send to order-update subscribers. Messages set to Live while under review send as marketing messages and require marketing consent. While waiting:
- You will not be able to edit the message content.
- You cannot set up an A/B test.

- When the review is complete, check whether your message was approved or denied.

If your message is approved, note that any subsequent edits to the message content will remove the transactional status. If you want to edit the content, you must uncheck the transactional status, edit the content, and then submit the message for approval.
What to do if the message was rejected
If your message was rejected you can:
- Keep the message as-is (and not have it be marked transactional).
- Edit the content and re-submit it for approval.
- Submit an appeal.
To appeal, submit a ticket to Klaviyo Support and include:
- “Transactional appeal” as the subject line/reason for the ticket
- Flow message ID
- Example (or 2) of the message you want to send
- Screenshot of your call to action (CTA)
- Estimate of how many times per month someone could receive this message
- The opt-out and SMS disclosure language you’re using
- Links to your privacy policy and terms of service
Target your SMS subscribers with different messages
Approved transactional messages can send to SMS marketing subscribers, ongoing transactional SMS subscribers, and people who consented to updates for the order. If everyone should receive the same order update, you do not need the consent splits below. Use them to send different content to marketing subscribers and people who consented only to updates for this order. If you already created a message, move it to the appropriate path instead of adding it again.
The conditional split below checks SMS marketing consent. People who consented only to order updates go down its No path, where a trigger split checks OptedInToSmsOrderUpdates for that order. A customer with ongoing transactional SMS consent can still receive an approved transactional message even if this order-update field is False; the example below does not include that customer unless they also have marketing or single-order consent.
- Drag in a conditional split and set it to If someone can or cannot receive marketing > can receive > text message marketing. Save the split.
- On the Yes path, add an SMS message and either create your message and include promotional content, or mark the message as transactional.
- On the No path, place a trigger split and set it to OptedInToSmsOrderUpdates equals True. Save the split.
- On the Yes path of the trigger split, add an SMS message.
- Create your transactional message and submit for approval.
If you have an existing flow that is more complex (with several splits, emails, or time delays), you can switch the splits so that you don’t have to move anything to a different path.

Turn on your flow
- Optional: turn off Smart Sending and quiet hours for approved transactional messages, and turn on UTM tracking. For promotional messages, mandatory quiet hours still apply even if you turn the setting off. Save any changes.
- Once the messages that need transactional status are approved, click Review and turn on, or Update status if that is the button shown. Select Live, then click Save to start sending automatically.
Additional resources
- Shopify data reference
Learn what data syncs from Shopify to Klaviyo and where to view it. This includes both order data (such as Placed Order, Ordered Product, etc.), delivery data, onsite tracking data, and customer data. If you have not already, read our guide on getting started with Shopify for step-by-step instructions on integrating, before continuing with this article.
- Understanding SMS consent collection
Learn about SMS consent, including what counts as SMS consent, how you can collect it, and how resubscribes work. SMS consent refers to whether someone is opted in (i.e., if they have agreed to receive marketing text messages from your brand).
- How to create a post-purchase flow
Learn how to set up a post-purchase flow in Klaviyo as well as best practices for doing so. A post-purchase flow triggers after a customer has placed an order while your ecommerce platform is integrated with Klaviyo. Sending post-purchase emails builds relationships and brand loyalty with your customers and makes them more likely to purchase again.
- SMS marketing strategies for all levels [+12 Pro tips]