A tracking link and a discount code can fit in the same message, but they do different jobs. If you need to send both, write two messages. A shopper who opted into delivery updates may never have asked for sale reminders.
Start with the reason for the message
- A shipping update for order #1042 is a utility use case. Give the shopper the status and tracking link.
- A reminder about an unfinished checkout, a coupon, or a recommendation is marketing. Use the marketing category and reach only customers whose permission covers it.
- A one-time verification code belongs in an authentication template. Keep the message focused on the code.
- A support reply within the customer service window can use normal chat. If the window has closed, choose an approved template that fits the purpose.
Try classifying two drafts
“Your package is with the carrier. Track order #1042 here” has a clear service purpose. “Your package is with the carrier. Get 15% off your next order” adds promotion. Separate the promotion before submitting the order update. The Meta review can still classify the template differently, so check the final status before enabling the automation.
Budget by category and market
Use the recipient market and the approved category to estimate the Meta fee. Keep WhatFlow’s app allowance on a separate line. If a draft is rejected or its category changes, review the cause before sending a replacement.
Read Meta’s marketing, utility and authentication examples, and check platform pricing before scheduling your first send.
For setup in Shopify Admin, see the WhatFlow Business API help centre.
Sources and demonstration notes
Sources checked November 9, 2026.



