<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" 
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns:atom="http://www.w3.org/2005/Atom"
>
  <channel>
    <title>WhatFlow Blog — WhatsApp Marketing &amp; Automation for Shopify</title>
    <link>https://whatflow.io/blog</link>
    <description>Tips, guides, and product updates on WhatsApp marketing for Shopify merchants.</description>
    <language>en-US</language>
    <lastBuildDate>Sun, 08 Nov 2026 13:55:39 GMT</lastBuildDate>
    <atom:link href="https://whatflow.io/blog/rss.xml" rel="self" type="application/rss+xml"/>
    
    <item>
      <title><![CDATA[Build an API-Triggered WhatsApp Workflow in WhatFlow]]></title>
      <link>https://whatflow.io/blog/whatflow-api-triggered-inbox-workflow</link>
      <guid isPermaLink="true">https://whatflow.io/blog/whatflow-api-triggered-inbox-workflow</guid>
      <description><![CDATA[Map event data to an approved WhatsApp template, branch on a field, and test an API-triggered Team Inbox workflow before enabling it.]]></description>
      <content:encoded><![CDATA[Use a WhatFlow Inbox Workflow when an event starts in a system that can call your workflow endpoint. For example, a repair portal could notify a customer on WhatsApp when a repair is ready for pickup. For a Shopify-native event, start by checking whether  Shopify Flow  already has the trigger you need. Inbox Workflows and WhatsApp Flows are different. Inbox Workflows run steps and decisions in the background. WhatsApp Flows are forms customers fill out inside WhatsApp. Start with one example event Create a workflow in Team Inbox and open  Configure Triggers . Enable the API call trigger with an API key for your server-side integration. Keep the key on the server and out of screenshots, spreadsheets, storefront JavaScript and example documentation. Use the workflow builder’s sample JSON mapping. A test event might contain these fields: recipient : a WhatsApp test number you control reference : a sample repair reference, such as  TEST-1048 stage : the event state, such as  ready location : the pickup point shown in the customer message Map the recipient field and use the example values to preview the rest. These are illustrative field names. Use the endpoint and request format shown for your workflow rather than assuming a universal payload.  Branch before sending Add a decision that checks whether the repair is ready. End the other branch without sending a message. On the ready branch, choose an approved template for the pickup update and map the reference and pickup location to its variables. For business-initiated messaging, follow  WhatsApp’s policy  and check that the recipient can receive the message. If the timing matters, the builder offers waits. Check whether a short delay, a scheduled timestamp, or an event from your own system makes sense. Start with no wait while you verify the mapping. Test both branches before connecting the real system Run a test with a number you control. Check that the ready branch renders the right template and that the non-ready branch sends nothing. Then try a missing reference and a repeated event. Have the source integration prevent duplicate notifications if the same event is delivered more than once. Review the run before enabling real traffic. If the shopper replies with a pickup question, route that conversation to a person rather than building an increasingly complex branch tree. The  Team Inbox support guide  covers the handoff. ]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[guides]]></category>
      <pubDate>Sun, 08 Nov 2026 11:22:06 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Connect WhatFlow Inbox Events with Signed Webhooks]]></title>
      <link>https://whatflow.io/blog/whatflow-team-inbox-signed-webhooks</link>
      <guid isPermaLink="true">https://whatflow.io/blog/whatflow-team-inbox-signed-webhooks</guid>
      <description><![CDATA[Send WhatFlow Inbox events to your own tools, verify their signatures, and use delivery logs to debug your webhook integration.]]></description>
      <content:encoded><![CDATA[If your team tracks customer issues in another system, a WhatFlow webhook can tell that system what happened in WhatsApp. Start with one event and one destination. An assignment event that updates an internal queue is easier to test than copying every message and status into another tool. For example, when a WhatsApp conversation is assigned to the shipping team, you could record the handoff in an internal dashboard. Keep the event narrow: the dashboard may need the conversation reference, but it probably doesn’t need the customer’s entire message history. Pick the event that answers your question Open  Webhooks  in WhatFlow Team Inbox and add an endpoint you control. Choose the event types the receiver actually needs. WhatFlow’s event options include received and sent messages, status changes, interactive replies, conversation assignment and labels, and workflow outcomes. Use the assignment event for ownership reporting. Use message status for delivery reporting. They tell you different things, and subscribing to every status event can create a lot of noise.  Verify the request before you act on it Use the signing instructions and headers shown in the WhatFlow webhook setup. The signature is based on the timestamp and the  raw  request body. Verify it before parsing and acting on the payload; reserializing the JSON first can change the bytes. Keep the secret on the receiving server and reject invalid signatures. Apply an appropriate timestamp tolerance and design the receiver so a repeated delivery does not repeat the business action. For the shipping example, create or update a single handoff record for the same event instead of adding another ticket every time a request arrives. Avoid storing more customer data than the dashboard needs. Test delivery and practice one failure Send a test from the webhook screen. Verify the receiver accepts the signature, returns a successful response, and records the expected result. Then check a controlled failure on your test endpoint and use the delivery log to distinguish an unreachable endpoint from a non-success response. WhatFlow shows recent attempts and retry status. Fix the receiver before manually retrying an event, and check that replay doesn’t create a duplicate record. When it works, add one additional event only if it supports a real workflow. For the agent side of this example, see  how to work the WhatFlow support queue . ]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[guides]]></category>
      <pubDate>Sun, 08 Nov 2026 11:22:06 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Fix Failed WhatsApp Broadcasts in WhatFlow]]></title>
      <link>https://whatflow.io/blog/whatflow-whatsapp-broadcast-failure-retry</link>
      <guid isPermaLink="true">https://whatflow.io/blog/whatflow-whatsapp-broadcast-failure-retry</guid>
      <description><![CDATA[Use WhatFlow’s recipient report to diagnose failed WhatsApp messages, pause a live broadcast when needed, and retry the right recipients.]]></description>
      <content:encoded><![CDATA[When a WhatsApp broadcast has failures, open the recipient report before you retry anything. A missing template value, an opted-out recipient, and a temporary sending error call for different responses. Sending the campaign again to everyone can duplicate messages for customers who already got them. Say your Shopify store schedules a launch to 300 opted-in customers. The first deliveries look right, but several failures show up in the recipient table. Treat those rows as an investigation, not an instruction to push the retry button. Pause if the problem could affect the rest of the audience Open the campaign in WhatFlow Team Inbox. If it is still sending and you find a broken product link, incorrect personalization, or an audience mistake, pause the campaign where the control is available. Messages already sent cannot be taken back through that pause. Check one affected example and confirm whether the fault applies to the whole campaign or a few rows. If the report just shows some messages pending, give the queue time to progress. Pending and failed are different. Compare the timestamps and statuses before you decide that the sender is stuck.  Read the failure and check the input Use the recipient-level failure detail and export if you need to reconcile the audience against the source file. Check the phone format, mapped variables, template approval and sending account. If the recipient was blocked or opted out, keep them excluded. Don’t substitute another number from your CRM without verifying that it belongs to the right customer and can receive the message. A simple triage sheet can have three columns:  reason ,  fix , and  retry decision . “Wrong template link” means the campaign needs a corrected message. “Missing product name” means checking the mapping and the original row. A permission or opt-out issue is a stop sign. Retry selectively, then verify the outcome After you correct a retryable failure, use the individual retry option and check the new status. WhatFlow also has a failed-recipient retry action where available. Reserve it for a group with the same known, corrected cause. If the approved template or audience itself needs to change, rebuild the affected portion rather than retrying bad input. Check delivered, read and failed counts after the retry. A read receipt is not a sale. If you’re measuring orders, use the Shopify campaign tracking you set up before the launch. For the next send, follow the  WhatFlow campaign walkthrough  and test a representative row before scheduling. ]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[whatsapp]]></category>
      <pubDate>Sun, 08 Nov 2026 11:22:06 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Map a CSV or Excel Audience to a WhatsApp Template]]></title>
      <link>https://whatflow.io/blog/whatflow-whatsapp-campaign-spreadsheet-mapping</link>
      <guid isPermaLink="true">https://whatflow.io/blog/whatflow-whatsapp-campaign-spreadsheet-mapping</guid>
      <description><![CDATA[Prepare an opted-in spreadsheet for WhatFlow broadcasts, map template variables, and test blank fields and links before scheduling.]]></description>
      <content:encoded><![CDATA[The fastest way to catch a bad WhatsApp campaign is to preview the row you least trust. A row with a missing first name, an old phone format, or a blank product field can expose problems a clean test row won’t show. Use a spreadsheet audience in WhatFlow Team Inbox when you already have an eligible recipient list and want to personalize an approved template. If the audience already exists as a Shopify segment and you don’t need a spreadsheet, compare the  Shopify Admin broadcast route  first. Make each row represent one intended recipient Start with a column for the phone number and only the fields you intend to use. For example, a launch reminder might need a first name and a product name. Check country codes before importing and make sure your spreadsheet tool hasn’t removed important characters or reformatted the number as scientific notation. Review duplicates and consent in the source file. Two rows for one number are often a data problem, especially when they contain different personalization. Resolve the conflict before uploading rather than relying on the importer to choose what the shopper should see. Match columns to the approved template In WhatFlow  Broadcasts , choose the sending channel and approved template, then upload the CSV or Excel file. Map each variable to the corresponding column. If your template has dynamic fields in a button or header, check those mappings as well as the body. An illustrative row might have the name “Sam” and the product “olive Trail Pack.” Read the resulting message out loud. Does the product field include text like “SKU-402” that a shopper wouldn’t recognize? Does the message still make sense if the first name is missing? Fix the data or use an approved template that doesn’t need that variable.  Test a normal row and a difficult one Send a test to a number your team controls. Open the product link on a phone and reply to the test. Confirm the intended team can see the reply in the Inbox. Then repeat with your problematic row after correcting it. If your template uses a dynamic URL, verify the final destination rather than trusting the label. Before scheduling, compare the audience count to the source file and review opt-outs under  WhatsApp’s policy . After sending, use the recipient report to investigate failures and  retry only eligible recipients . Keep the cleaned audience and template version together so the next person can reproduce the send. ]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[whatsapp]]></category>
      <pubDate>Sun, 08 Nov 2026 11:22:06 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Handle WhatsApp Replies During a Shopify Product Launch]]></title>
      <link>https://whatflow.io/blog/whatflow-whatsapp-product-launch-reply-playbook</link>
      <guid isPermaLink="true">https://whatflow.io/blog/whatflow-whatsapp-product-launch-reply-playbook</guid>
      <description><![CDATA[Set up a launch reply queue in WhatFlow with agent assignments, saved answers, catalog recommendations, and a handoff to Shopify checkout.]]></description>
      <content:encoded><![CDATA[Plan the reply queue before your WhatsApp product launch goes out. A shopper who asks about sizing is already engaged. Sending them another campaign message while their question sits unassigned wastes the opportunity. Imagine you’re dropping a jacket in two colors. One agent knows stock and sizing. Another handles address changes and delivery. You can run the broadcast in WhatFlow and use the same Team Inbox for the questions that follow. Set up the three answers you know you’ll need Write short canned responses for sizing, availability, and shipping. Leave the facts that can change as details the agent checks before sending. For example: Hi {{customer}}, I can help with the fit. What size do you normally wear, and do you prefer room for a layer underneath? That’s a starter, not a product recommendation. Check the fit chart and actual stock before sharing the item. Store the internal “what to check” instructions in your team playbook or a private note, not inside the customer’s canned response.  Decide who owns each reply When the send begins, one agent monitors  Unassigned  and  Needs reply . Claim a chat or assign it before working on it. If a conversation needs a different owner, leave a note with the customer’s exact question and what you’ve already checked. Use  Closing soon  to prioritize chats near the end of the service window. Don’t assume an unread badge is the same as an unanswered question. Keep a narrow set of labels such as “sizing,” “stock,” and “order issue” if your team needs to hand work across shifts. Adding twenty labels during the launch is slower than deciding who will answer. Share the product and confirm where checkout happens If the shopper asks for the olive jacket in medium, share that catalog item from the conversation. If they send a WhatsApp cart and you’ve configured catalog cart follow-up, WhatFlow can respond with a Shopify checkout link. Check Shopify for the order and payment status before promising dispatch. A cart in chat is not a paid order. After the launch, review the questions you couldn’t answer quickly. Update the product page and your canned replies from what you actually heard. Then export the campaign report and separate delivery failures from support issues. The  campaign setup guide  covers the send, and the  catalog walkthrough  covers the checkout handoff. ]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[whatsapp]]></category>
      <pubDate>Sun, 08 Nov 2026 11:22:06 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Run a Shopify WhatsApp Campaign with WhatFlow]]></title>
      <link>https://whatflow.io/blog/whatflow-shopify-whatsapp-campaign-walkthrough</link>
      <guid isPermaLink="true">https://whatflow.io/blog/whatflow-shopify-whatsapp-campaign-walkthrough</guid>
      <description><![CDATA[Build a Shopify WhatsApp product launch: choose an audience, personalize and test your message, schedule the send, and work the replies.]]></description>
      <content:encoded><![CDATA[The first decision in a Shopify WhatsApp campaign is where the audience lives. If you already have a customer segment in Shopify, start there. If you have an opted-in spreadsheet or want to reach people from existing WhatsApp conversations, build the broadcast in WhatFlow Team Inbox. I’d choose the route before writing the message: it determines what you can personalize and how you’ll run the send. Say you’re launching a new color of a popular backpack. The audience you want is people who explicitly asked to hear about the launch. Your goal is to get those customers to the product, answer questions about the new color, and see which messages failed. You can do that without treating the entire Shopify customer list as a marketing audience. Route 1: Start from Shopify customers or a segment In Shopify Admin, select the customers you want to message and choose the WhatFlow broadcast action. If you already have a saved segment, open it and use Shopify’s  Use segment  action to start the WhatFlow broadcast builder. Pick the approved template, review who will receive the send, and use the WhatFlow queue to check progress. This is a campaign launched from Shopify. It doesn’t create an automatically refreshed Shopify segment inside the Inbox audience picker. If you’re running another send a month later, review the audience again before you submit it.  Route 2: Build a scheduled campaign in Team Inbox Open  Broadcasts  in Team Inbox and start a draft. Pick the sending number and an approved marketing template. For the audience, upload a CSV or Excel file or choose eligible contacts from existing conversations on that channel. Map spreadsheet columns to the fields in your template, then check the preview with a real example row from your test data. For a launch, I’d make the action obvious: Hi {{first_name}}, the olive Trail Pack you asked about is available. Tap View backpack for sizes and stock. If you’re unsure what fits, reply and we’ll help you choose. That’s example copy for a marketing template, not a message we sent. Before scheduling, send a test to a number your team controls. Check the first-name field, the button link, and what happens when you reply. Check the time zone shown in the scheduler, and make sure someone is available to answer after the send. Review consent and opt-outs under  WhatsApp’s messaging policy .  Decide what happens after customers reply A shopper who asks “Will a 16-inch laptop fit?” is giving you a chance to help, not asking for a second sales reminder. Claim the conversation in Team Inbox and answer with the actual dimensions. If a different product fits better, share that catalog item and explain why. The  catalog selling walkthrough  explains what happens if they send a cart back. Agree on who covers product questions and order issues before launch. Use the  Team Inbox triage guide  to set up the handoff, especially if the launch runs outside your normal support hours. Review delivery before you plan the next send Look at the recipient report for sent, delivered, read, and failed statuses. Read isn’t a sale, and an absent read status doesn’t prove the shopper ignored you. Investigate why failed messages failed; fix a correctable cause before using the retry action. Don’t retry a contact who opted out. If your goal is sales, measure the Shopify orders attributed to your campaign with the tracking setup you actually used. Keep that separate from message delivery and from recovery attribution. For cost, count your WhatFlow sends and applicable Meta charges separately using  WhatFlow pricing . I’d keep the first launch small. If the test message, reply handoff, and recipient report all work, you have a process you can reuse for the next product drop. For a spreadsheet audience, follow the  field-mapping checklist . If your report already shows failures, use the  failed-broadcast guide  to decide whether to pause, correct the input, or retry individual recipients. ]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[whatsapp]]></category>
      <pubDate>Sun, 08 Nov 2026 11:10:43 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Work a Shopify Support Queue in WhatFlow Team Inbox]]></title>
      <link>https://whatflow.io/blog/whatflow-team-inbox-shopify-support-workflow</link>
      <guid isPermaLink="true">https://whatflow.io/blog/whatflow-team-inbox-shopify-support-workflow</guid>
      <description><![CDATA[See how a Shopify team claims WhatsApp chats, checks order tracking, uses saved replies, and hands off conversations without paying per seat.]]></description>
      <content:encoded><![CDATA[A WhatsApp inbox earns its place when two people can handle the same store without making the customer repeat themselves. In WhatFlow Team Inbox, an agent can find chats that need a reply, take ownership, check a matching Shopify order and leave a note for a teammate. The Inbox is part of WhatFlow Business API and doesn’t charge per agent seat. Take a typical Monday morning. A shopper writes, “My parcel was supposed to arrive yesterday.” Two agents are online. One checks delivery questions and the other handles product advice. Here’s how I’d work that chat. Claim the right conversation Start with  Needs reply  to see open chats where the customer wrote last. Use  Closing soon  when you need to answer while the customer service window is still open. Use  Unassigned  to find threads without an owner and  Mine  to check the conversations you’ve claimed. A teammate typing warning gives you another cue to pause before sending a duplicate reply. Don’t confuse unread with unanswered. An agent may have opened the chat to look up an order and still owe the customer an answer. Make ownership explicit so the next shift knows who is following up.  Check the Shopify order before answering Open the conversation profile and look at  Shopify orders . When the contact’s WhatsApp phone matches the number on a Shopify customer record, the inbox can show order details such as the date, total, payment or fulfillment status, and tracking where Shopify has it. A matching record saves a lookup. It doesn’t prove which parcel the shopper means. If the customer has more than one order, confirm the relevant order number. If tracking is missing, say what you know and give a follow-up time rather than inventing a delivery date. Hi Sam, I’ve found order #1048. The carrier hasn’t posted a new scan yet. I’ll check with dispatch and update you here by 3 pm. That’s a sample reply, not a real order. The key detail is the next action and who owns it. Use saved replies without sounding scripted Add a short saved reply for common tracking questions, then edit the facts before sending. WhatFlow can insert customer or agent details into canned responses. It also saves drafts per conversation and can hold a text reply briefly for Undo Send. That hold is before delivery; it won’t recall a WhatsApp message the customer already received.  Handoff, resolve, and follow up Leave an internal note such as “Checked #1048; dispatch to confirm carrier scan by 3 pm.” Keep it separate from the customer-facing reply. Use a label if your team needs to find all open shipping exceptions, and assign the chat to the next owner if it crosses shifts. Mark it done when the next action is finished. If the customer writes again, revisit the thread. If the service window has expired and you need to resume the conversation, choose an appropriate approved template under  WhatsApp’s messaging policy . The countdown helps with triage; it doesn’t extend the window. Try this with two agents and a demo order. Check that the second agent can tell who owns the conversation and what was promised without asking the first agent. That’s the test I’d use when comparing a  Shopify WhatsApp inbox  with a tool that leaves order context in a separate tab. If your shipping team tracks assignments outside the Inbox, use the  signed webhook guide  to test a conversation assignment event against an endpoint you control. ]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[operations]]></category>
      <pubDate>Sun, 08 Nov 2026 11:10:43 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Sell from a WhatsApp Catalog and Check Out on Shopify]]></title>
      <link>https://whatflow.io/blog/whatflow-whatsapp-catalog-to-shopify-checkout</link>
      <guid isPermaLink="true">https://whatflow.io/blog/whatflow-whatsapp-catalog-to-shopify-checkout</guid>
      <description><![CDATA[Show products in WhatFlow Team Inbox, handle a WhatsApp cart, and send shoppers to Shopify checkout without treating a chat cart as an order.]]></description>
      <content:encoded><![CDATA[The useful part of a WhatsApp catalog is what happens after a customer asks for advice. A shopper can look at a product you share, send back a cart, and continue to Shopify checkout. WhatFlow connects those steps so the conversation can help the sale without turning the chat into your payment system. Imagine a customer asks which travel bag fits their airline’s personal-item limit. You need to check dimensions, recommend one variant, and get the customer to checkout with the correct item. I’d test that exact journey before adding a catalog to a campaign. Connect the catalog you want to use Open  Meta Catalog  in WhatFlow Team Inbox. If you’re using a WhatFlow-managed catalog, choose the products or Shopify collections you want included and run the sync. If you already use an externally managed catalog, check what’s connected and who owns its data before choosing a sync route. Our  catalog support guide  explains the setup options in more detail. Pick a sample product that has two variants with different availability. Check what WhatsApp shows for each variant, including image, price, and stock. When details change in Shopify, verify the catalog reflects the new data before you send that item in a launch.  Share a recommendation in the conversation Answer the buyer’s question first, then send the product. If one model fits and the other doesn’t, explain the difference instead of sharing the entire collection. I’d go with the 18 L Weekender. It’s 40 × 25 × 18 cm. Check that against your airline’s current limit, and tell me if you’d like the olive version. Use the product picker in Team Inbox to send the relevant item. The buyer can open the product details in WhatsApp. If they change their mind about the color or size, confirm the variant before asking them to check out. Treat the cart reply and paid order as separate events A customer sending a cart on WhatsApp shows purchase intent. It’s still not a paid Shopify order. With the catalog cart follow-up configured, WhatFlow can respond with a Shopify checkout link. The buyer completes payment through Shopify. Your team should check Shopify for order and payment status before confirming shipment. For automation beyond the default follow-up, Business API has a  catalog order received  trigger for Shopify Flow. Use it when you need a workflow to react to the WhatsApp catalog event. Treat that event separately from Shopify’s order-paid event.  WhatFlow release history Test before adding the catalog to a campaign Open a test conversation using a number you control. Share one catalog product and verify the exact variant shown. Send a sample cart back from WhatsApp and open the Shopify checkout link. Confirm that item and quantity match. Check what happens if the product is unavailable. Make sure staff know how to respond if the shopper asks for another variant or sends a second cart. Once that works, use the same process for replies to a  Shopify WhatsApp campaign . A broadcast can start the conversation; the catalog and checkout path give the team something useful to do when a shopper answers. ]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[conversion]]></category>
      <pubDate>Sun, 08 Nov 2026 11:10:43 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[How We Moved WhatFlow from Gadget to Cloudflare Workers]]></title>
      <link>https://whatflow.io/blog/migrating-whatflow-from-gadget-to-cloudflare</link>
      <guid isPermaLink="true">https://whatflow.io/blog/migrating-whatflow-from-gadget-to-cloudflare</guid>
      <description><![CDATA[Why and how we moved WhatFlow's official and unofficial API apps from Gadget to Cloudflare Workers: a growing bill, two sources of truth, 22,000+ WhatsApp sessions moved, and what we learned.]]></description>
      <content:encoded><![CDATA[WhatFlow runs two WhatsApp apps for Shopify.  WhatFlow Chat Automation , our unofficial API app, links a store's regular WhatsApp account. It launched on the Shopify App Store in October 2024, after about three months of development.  WhatFlow Business API , our official API app, connects through Meta's WhatsApp Cloud API, and we started building it in March 2026. Both apps began on  Gadget , a hosted platform for building Shopify apps. Between late August and early October 2026 we moved both apps, plus the new WhatsApp Team Inbox, onto Cloudflare Workers. This post covers why we did it and how: the architecture we moved to, how we proved the new apps did everything the old ones did, how we moved the data without asking anyone to reinstall, and what went wrong afterwards. Why we started on Gadget When I started WhatFlow in 2024, I was a university student and the only developer. AI coding tools were still mostly chat windows you pasted code into, so building and running software was my biggest bottleneck. Gadget took the infrastructure, the database, Shopify OAuth, webhooks and hosting off my hands, so the little time I had went into the product. With only a few users, the cost was small. It was clearly the right call. As the apps grew, so did the bill. For a long time we were happy to pay it, because Gadget saved us DevOps work, hiring and a great deal of time. Their team was supportive throughout, and often refunded us when something went wrong. Thank you to Franco, Muhammad and everyone else at Gadget. Why we left Eventually the numbers stopped working. Our monthly bill climbed past $1,200, then $1,300 and $1,400, and was projected to reach about $1,800 a month by August and September 2026. We had already been moving pieces away to control costs. First we moved the unofficial API app's webhook handling to Cloudflare Workers. We also tried running that load on a large VPS managed with Coolify, but the webhook volume was more than it could take, and at the time I didn't have the experience to architect around it. Back on Workers, we optimized enough to bring the bills down again. By mid-2026 the unofficial API app's busiest paths (order events, checkouts, draft orders, poll replies, incoming messages, Shopify Flow and usage events) ran on  13 separate Cloudflare Workers  with per-feature queues, plus a key-value store kept in sync on a schedule. Its admin UI, data and Shopify sessions stayed on Gadget. Running one product in two places was hard and bug-prone. A setting changed in the admin had to be synced to the Workers, every webhook had two possible owners, and a release could mean deploying to both platforms. When Shopify introduced expiring offline access tokens, keeping a store's credentials consistent across two sources of truth became the hardest problem of all. Meanwhile, the landscape had changed since 2024. AI coding agents had become genuinely good at building and maintaining infrastructure code, Cloudflare's pricing was reasonable, and we already had experience running our busiest workloads there. The layer Gadget had handled for us was something we could now own. So we decided it was time to move everything to Cloudflare. Official API app first, unofficial second We started with the official API app. It ran entirely on Gadget, so there was no split to untangle, and it was the smaller of the two, with around 400 to 500 paying stores at the time (more than 1,000 today). On Gadget it had grown to 15 data models, 68 global actions, 42 model actions and 32 Shopify extensions. The unofficial API app had 3,000 to 4,000 active subscribers, so moving it was the riskier job. We waited until the official API app had run stably on Cloudflare for a few weeks, then moved the unofficial API app completely, front end and back end. The architecture we moved to We kept the design simple:  one Worker per app  that serves the embedded admin UI, the app's API, Shopify webhooks, Shopify Flow actions and admin extension requests. UI and routing:  React Router on Workers, with Shopify sessions stored in D1. The admin UI uses Shopify's Polaris web components. App data:  Cloudflare D1 (SQLite) through the Drizzle ORM, for shops, settings, templates, automations and message context. Background work:  Cloudflare Queues with a dead-letter queue. The unofficial API app's 13 per-feature queues became a single event queue. High-volume operational records:  a managed PostgreSQL database reached through Cloudflare Hyperdrive, for jobs, webhook receipts and delivery records that would otherwise fill D1. Media:  R2 for files and images. Scheduled work:  two cron schedules per app, a frequent one for due jobs and a daily one for retention and housekeeping. Team Inbox:  a separate Worker with Durable Objects for real-time conversation updates and broadcasts. It receives Meta's webhooks, verifies them, and passes them to the official API app's Worker over a service binding, backed by a durable outbox so nothing is lost if a hand-off fails. We also changed how Shopify webhooks are registered. On Gadget, the unofficial API app created webhooks for each shop through the API. The new apps declare them once, at app level, in the Shopify app configuration, which removes a whole class of "this shop is missing a webhook" problems. Rule one: parity before improvements The most important decision was what we did not change. The admin UI had to be  like-for-like : same pages, same settings, same behaviour. Only the data layer underneath was allowed to change. Every improvement we wanted to make waited until after the cutover. Before switching the official API app over, we ran a final parity audit that compared every Gadget action, model action and extension with its new counterpart. The first pass said, plainly, that the new app was not yet a complete like-for-like migration and listed  21 findings . We fixed all 21, each with a regression test, before production traffic moved. A few features were deliberately not carried over at that point and were rebuilt or retired separately, so the cutover stayed a migration and not a redesign. Moving the data without a reinstall Merchants should not have to reinstall an app because we changed hosting. That meant carrying over everything a store depends on: offline Shopify sessions and refresh tokens, WhatsApp connections, message templates, automation settings and app subscriptions. Encrypted, resumable exports  from the old platform, so a dropped connection never meant starting over. An idempotent preload.  Every row was upserted with a "newer timestamp wins" rule. Running the preload again wrote zero rows, which proved it could be repeated safely right up to cutover. Field-by-field verification.  For the official API app we compared  1,126,975 fields  between the old and new databases at the final import, with  zero mismatches . Conflicts were parked, not guessed.  Rows that couldn't be imported cleanly went to an encrypted holding table for review. We never generated or invented credentials to fill a gap. The unofficial API app's import followed the same pattern. Every row was checked against a production export, large settings were loaded in resumable chunks sized to stay within D1's statement limits, and old queued jobs were archived rather than replayed. The cutover Each production Worker was first deployed in a  fail-closed maintenance mode . Its health check reported "not ready" and every other request got a 503, so nothing could reach it by accident while data was still loading. Official API app (WhatFlow Business API), September 9–12, 2026.  Production data was preloaded on September 9. On September 10 we closed the final parity findings, ran the last import and verification, and switched traffic. Until then, the Team Inbox Worker forwarded Meta webhooks to the old app, and afterwards only to Cloudflare. On September 12 we shipped guards that stop the old app from sending any WhatsApp message at all. Unofficial API app (WhatFlow Chat Automation), October 6–7, 2026.  After a few stable weeks on the official API app, the unofficial API app moved during a short, planned maintenance window. The next day we moved  more than 22,000 linked WhatsApp sessions  from 43 servers onto 10, using tooling that ran as a dry run by default, backed up every record before changing it and read each change back afterwards. Both migrations went smoothly, with only a few small hiccups and very little downtime. Rollback was planned, not improvised: previous Worker versions stayed available, configuration backups were taken before every bulk change, and the old platform's send paths were guarded in place instead of deleted. What broke, and what we learned Cutover day was the easy part. The weeks after taught us more, mostly about running at volume on a platform that bills per operation. Queues deliver at least once, so sends need fences Cloudflare Queues guarantee at-least-once delivery, which means a message can occasionally be delivered twice. For a WhatsApp app, "twice" means a customer gets the same message twice. Every send now passes a durable  send fence : once a send is recorded, a redelivered job can't send it again. If we can't tell whether a send went through, it's flagged for review instead of retried. Token refreshes need a single owner Shopify's expiring offline tokens come with a refresh token that can only be used once. With many Workers running at the same time, two requests could try to refresh the same shop's token at once. We put token refreshes behind a per-shop lock. Later we found that most requests didn't need the lock at all: when a stored session is still valid, it can be used directly. Skipping the lock in that case cut the median time of admin data calls from  2.75 seconds to 0.78 seconds , and the 90th percentile from  5.3 seconds to 1.3 seconds . A bad day for the database On October 13, a burst of memory-heavy work in the unofficial API app turned into a cascade of database errors. We contained it by cutting queue concurrency from 20 to 2, fixed the code paths that read large payloads all at once so they stream instead, and only then raised concurrency back to 20. The lesson: each Worker instance has a fixed memory limit shared by everything it's doing, so anything that might be large has to be streamed. Every operation has a price, so decide early On the old platform a wasted background job was invisible. On Cloudflare every queue message, database write and log line is counted. So we moved decisions forward to the moment a webhook arrives: if an event doesn't need work (a disabled feature, a shop without the relevant setting, a status update we already have), it's dropped before it's queued. We also removed intermediate hops between queues. Billable queue operations per hour fell by  about 45%  (from roughly 36,000 to 20,000). Writes to the unofficial API app's main queue fell by  about 60% . Logging moved to at most one structured line per request, instead of many small lines. Cleaning up Once both apps had run cleanly in production, we deleted the one-off cutover tooling, removed code that only existed for the migration, and added tests that fail if a dependency on the old platform's SDK comes back. Moving shouldn't leave a second, half-alive system behind. What merchants noticed No reinstall. Stores kept their settings, templates, WhatsApp connections and subscriptions. Faster admin pages, especially after we started loading each page's data on the server. A steady run of features that were hard to build across two platforms, such as the Team Inbox, Shopify Flow triggers for WhatsApp catalog orders and media, review requests and Shopify Analytics reporting. If you want the merchant-facing view of everything that shipped before and after the move, it's all in the  WhatFlow changelog . Change hosting, not behaviour. Prove parity, then make it better.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[updates]]></category>
      <pubDate>Thu, 05 Nov 2026 12:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[How to A/B test WhatsApp messages when your list is small]]></title>
      <link>https://whatflow.io/blog/ab-test-whatsapp-messages-small-list</link>
      <guid isPermaLink="true">https://whatflow.io/blog/ab-test-whatsapp-messages-small-list</guid>
      <description><![CDATA[With a few hundred subscribers, classic A/B testing mostly measures noise. Here's how to test WhatsApp messages in a way that still teaches you something.]]></description>
      <content:encoded><![CDATA[To A/B test WhatsApp messages with a small list, test one big change at a time, split your list randomly, judge on a metric that happens often (replies or clicks, not orders), and repeat the same test over several sends before declaring a winner. With a few hundred people per variant, only large differences are real. Small gaps are noise, so call them a tie. Most A/B testing advice is written for email lists with 100,000 people. A Shopify store with 800 WhatsApp subscribers can't run those tests and get a trustworthy answer from one send. You can still learn a lot. You just have to test differently. Why small-list A/B tests mislead you Say you split 600 subscribers into two groups of 300. Variant A gets 12 clicks, variant B gets 18. B "won by 50%." Feels decisive.  It isn't. With numbers that small, random chance easily moves a group by five or six clicks. Who happened to be on their phone, who had a payday, who was in a group chat argument. Run the identical message twice and you'd see gaps like that. A rough rule of thumb I use: add the two counts together, take the square root, and double it. If the gap between variants is smaller than that, assume it's noise. In the example, 12 + 18 = 30, √30 is about 5.5, doubled is 11. The gap is 6. Noise. Not a basis for rewriting your whole approach. (This is a quick sanity check, not proper statistics. If you want a real significance test, any online two-proportion calculator will do it.) If you run a manual split test, create separate opted-in audiences and keep the send time and offer consistent. WhatFlow’s recipient reports let you export delivery results for each broadcast. Use your Shopify tracking setup to compare purchases. This workflow does not require an automated A/B test feature. See the  campaign walkthrough . Step 1: Pick a metric that happens often The rarer the event, the bigger the list you need. Orders from a broadcast might be a handful per send. Replies and clicks happen far more. Metric How often it happens Good for small lists? Read Often, but undercounted (read receipts can be off) Okay for first-line tests Quick reply taps / replies Fairly often Yes, best choice Link clicks Moderately Yes Orders Rarely per send Only pooled over many sends Opt-outs Rare Watch it, don't optimise for it Pick one primary metric before you send. If you choose after seeing the data, you'll always find a winner. Step 2: Test big differences, not tiny ones With a small list, you can only detect big effects, so only test changes that could plausibly produce one. Worth testing: Offer vs no offer.  "Back in stock" alone vs "Back in stock, plus free delivery this week". The first line.  It shows in the notification preview. Product-first vs benefit-first. The button.  "Shop now" (link) vs "Show me the colours" (quick reply that starts a chat). Personalised vs generic.  The specific product they viewed vs the new collection. Timing.  Morning vs evening, same message. Not worth testing on a small list: one emoji vs two, "Hi" vs "Hello", button colour equivalents. You'll never see a real difference. Here's a hypothetical pair for a fashion store testing the button: Variant A Hi Maya, the Aria wrap dress is back in your size (M). Only a few left in olive.
[Shop the dress] Variant B Hi Maya, the Aria wrap dress is back in your size (M). Only a few left in olive.
[Hold one for me] [Ask about fit] B opens a conversation instead of sending her to the store. That's a big enough difference to show up even on a small list, and it tells you something useful about whether your customers prefer to buy through chat. Step 3: Split randomly, not conveniently Don't send A to customers A to M and B to N to Z. Don't send A to your newest subscribers and B to the oldest. Shuffle the list (a random number column in a spreadsheet, sorted, works fine) and split it. Check both groups have a similar mix of countries and past buyers. If you have a segment of very engaged customers, split that segment evenly too. One extra superfan in a 300-person group can swing the result. Step 4: Get both templates approved first Outside the 24-hour customer service window, every business-initiated WhatsApp message must use a Meta-approved template. If the variants differ in fixed text, that's two templates, and each needs approval before the send. Submit both together so one isn't stuck in review on send day. If one is rejected, the guide to  why Meta rejects WhatsApp templates  will help. WhatFlow's template editor lets you build both variants side by side, with the same variables for customer name and product, so the only thing that differs between them is the part you're actually testing. New templates start with an  unknown  quality rating until Meta has feedback and read data, according to Meta's  template quality docs . That's another reason not to blast a brand-new variant at your whole list. Step 5: Repeat and pool This is the trick that makes small-list testing work. Instead of one test that decides everything, run the same comparison across several sends and add up the results. Hypothetical example: a coffee shop tests "quick reply button vs link button" across four weekly broadcasts to about 500 people each. Send A replies/clicks B replies/clicks Week 1 14 22 Week 2 11 19 Week 3 16 15 Week 4 10 21 Total 51 77 Week 3 alone would have said "no difference." Pooled, B wins three of four. Run the rule of thumb from earlier: 51 + 77 = 128, √128 is about 11.3, doubled is roughly 23. The gap is 26, so B's lead is probably real. Now you can act. (Numbers invented to show the method.) Keep the variable the same across sends and let everything else change naturally (product, offer). If B keeps winning across different products, you've learned something general about your customers. Step 6: Use holdouts for the money question A/B tests compare two messages. They don't tell you whether sending anything at all was worth it. For that, hold back a random slice (10 to 20%) that gets nothing, and compare orders per customer. The guide to  WhatsApp marketing metrics  explains why this matters more than attributed revenue. Watch the side effects Every test has a cost line. Track opt-outs for each variant. A pushy variant can win on clicks and lose on blocks, and blocks hurt everything you send later. WhatsApp also caps marketing messages for people who rarely read them; Meta's  per-user limits page  says the cap is based partly on recent read rate. If one variant consistently gets fewer reads, it isn't only losing the test, it may be shrinking your reachable audience. Also be careful with how often you test. Two variants doesn't mean two sends to the same person. Each customer gets one message, same as any  well-run broadcast . Keep within your usual  message frequency . Where WhatFlow fits WhatFlow's Business API app gives you the template editor, broadcasts and a shared inbox to handle replies when a quick-reply variant starts conversations. Every feature is included on every plan, including Free, so you don't need an upgrade to run tests. If a test points you toward conversational broadcasts, the next step is making those replies easy to answer;  saved replies that don't sound robotic  help there.  The small-list testing checklist One big change per test. One primary metric, chosen before sending (replies or clicks). Random split, similar groups. Both templates approved in advance. Repeat across sends and pool the results. Track opt-outs per variant. Small gaps are ties. Move on and test something bigger.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[whatsapp]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[How to add a WhatsApp chat button to your Shopify store]]></title>
      <link>https://whatflow.io/blog/add-whatsapp-chat-button-shopify</link>
      <guid isPermaLink="true">https://whatflow.io/blog/add-whatsapp-chat-button-shopify</guid>
      <description><![CDATA[Add a WhatsApp chat button to Shopify in a few minutes, then place it where shoppers have questions without covering your add-to-cart on mobile.]]></description>
      <content:encoded><![CDATA[To add a WhatsApp button to Shopify, install a WhatsApp app, switch on its app embed in your theme editor, pick a style and position that matches your theme, save, and test it on your phone. No code needed. With WhatFlow, the theme-matched WhatsApp chat buttons are free forever. The real work is placement: on mobile, the button must never cover your add-to-cart. That's five minutes of setup. Below is the step-by-step, plus the placement and mobile details that decide whether the button actually gets used. Why add a WhatsApp chat button at all? Because a lot of shoppers, especially in markets where WhatsApp is how people talk to shops, would rather ask than guess. "Does this run small?" "Do you deliver to Lahore by Friday?" "Is this safe with retinol?" If the only way to ask is an email form, many of them just leave. A WhatsApp chat button turns those questions into conversations. When the customer messages you, Meta opens a 24-hour customer service window in which your team can reply freely (Meta's  pricing page  explains how service messages are charged; as of October 2026 there's a monthly free allowance per number, then a charge). The post on  pre-purchase questions on WhatsApp  shows how those chats can improve your product pages too. How to add a WhatsApp button to Shopify (step by step) These steps are for WhatFlow, but most Shopify chat-button apps follow the same pattern because they use Shopify's app embed system. Exact labels can differ slightly in your admin. A storefront button starts the conversation. In WhatFlow Business API, the team can then claim the chat, check Shopify order context and share a catalog item if the buyer needs help choosing. That's the difference I'd test between a button-only app and a button with a commerce workspace behind it. See the  product-sharing walkthrough . Install WhatFlow  from the  Shopify App Store . WhatFlow WhatsApp Business API connects your number through Meta's official Embedded Signup, right from Shopify admin. Open your theme editor.  In Shopify admin, go to Online Store, then edit your live theme. Turn on the app embed.  Shopify's  app embeds documentation  describes the process: open the App embeds panel in the theme editor sidebar, find the WhatsApp button embed, and switch it on. Choose the style and placement.  Pick the button style, colours that match your theme, which corner it sits in, and where it appears. Save,  then preview the store. Test on a real phone.  Tap it, make sure it opens WhatsApp to the right number, and check what the first message looks like. Here's what the button controls look like inside WhatFlow:  One gotcha: app embeds are enabled per theme. If you're editing a draft theme and then publish a different one, the button won't be there. Always check the live theme after a theme switch. Free app button vs a plain wa.me link You can skip the app and put a  wa.me link  in your header menu or footer. It works. Here's the trade-off:  Plain wa.me link App chat button (e.g. WhatFlow) Cost Free WhatFlow's button is free forever Matches your theme Only as a text link Styled to match Floating on every page No Yes Placement and visibility control Manual theme edits Settings in the app embed Connected to a team inbox No Yes, with WhatFlow's Business API app The  free WhatsApp button vs paid chat widget  comparison goes into more detail if you're weighing up a bigger chat tool. Where to place the WhatsApp button Placement matters more than design. A good rule: put the button where questions happen, and keep it away from where buying happens. On mobile (where most of your traffic probably is) Bottom corner, but not over the add-to-cart.  Many themes have a sticky add-to-cart bar at the bottom of product pages. A floating button on top of it is a disaster. Move the button up, or to the other corner. Watch the clutter.  Cookie banners, review widgets, "back to top" arrows and loyalty launchers all want the same corners. Load a product page on your phone and look at what overlaps. The post on  review widgets and WhatsApp buttons on mobile  covers this in detail. Size for thumbs.  Big enough to tap easily, small enough that it doesn't cover product photos. On desktop A floating button in the bottom right is the convention people expect. Desktop users are less likely to message from WhatsApp, but WhatsApp Web and the desktop app mean some will. Which pages Product pages:  the most valuable spot. Questions here are pre-purchase. Cart:  useful for delivery and COD questions right before checkout. Contact and FAQ pages:  obvious. Collection pages:  optional. Fine if it's subtle. Theme-matched vs floating is its own debate; the comparison of  theme-matched buttons vs floating widgets  lays out when each works. Prefill a useful first message A blank chat makes the customer think about what to type. A prefilled message gets them started and tells your team the context: Hi! I have a question about the Aria Wrap Dress. Hi Kaya Home, I'm checking delivery times to Jeddah. If your button can include the product name automatically, use it. Your team instantly knows which product the customer is looking at, and you save one back-and-forth. Make sure someone answers A chat button with slow replies is worse than no button. Before you switch it on:  Decide who answers, and when.  Post the hours somewhere visible. Set an away message  for nights and weekends. Examples in  away messages and business hours . Prepare saved replies  for the five questions you get every day: delivery time, COD, sizing, returns, stock. Use a shared inbox,  not the owner's phone. WhatFlow's  team inbox  includes assignment, filters and saved replies with no seat fees, so it works the same for a two-person shop as for a support team of thirty. That last point is where WhatFlow is different from a button-only app. The button is free, and on WhatFlow's Business API app every feature (inbox, templates, broadcasts, Shopify Flow automation, catalog sharing) is included on every plan, including Free. It runs on Meta's official WhatsApp Cloud API, so it's built for stores that are growing, not just testing the water. Troubleshooting: button missing or opening the wrong chat Not showing at all:  check the app embed is switched on in the theme that's actually published, and that you clicked Save. Showing on desktop but not mobile (or the reverse):  look for device visibility settings in the button controls, and check that another widget isn't sitting on top of it. Opens the wrong number:  make sure the number connected in the app is your business number in international format. Hidden behind the cookie banner:  move the button or adjust its vertical offset, then dismiss the banner on your phone and check again. Slows the page:  compare a page speed test before and after enabling it. If a chat tool adds noticeable weight, that's worth knowing before you keep it. Disappeared after a theme update:  re-check app embeds on the new theme version. They don't always carry over the way you expect. When in doubt, test in a private browser window on your phone, since cached pages can show an older version of the theme. Turn button chats into opt-ins (carefully) Someone messaging you through the button hasn't agreed to marketing. After you've helped them, you can ask: Glad that helped! Want us to message you here when new styles drop? About twice a month, and you can stop anytime.
[Yes please] [No thanks] The guide to  collecting WhatsApp opt-ins on Shopify  has more wording for this.  Quick checklist App installed and number connected. App embed on, on the live theme. Style matches the theme; position clears the sticky add-to-cart on mobile. Prefilled message names the product or the topic. Tested on iPhone and Android. Someone owns the inbox, with an away message for off-hours.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[guides]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[How to get your Shopify store mentioned in AI answers (GEO)]]></title>
      <link>https://whatflow.io/blog/ai-search-visibility-shopify-geo</link>
      <guid isPermaLink="true">https://whatflow.io/blog/ai-search-visibility-shopify-geo</guid>
      <description><![CDATA[What actually helps a Shopify store show up in ChatGPT, Perplexity and Google AI answers, what doesn't, and where llms.txt fits. No magic tricks.]]></description>
      <content:encoded><![CDATA[To get your Shopify store mentioned in AI answers, make sure AI search crawlers can reach your pages, keep your product data complete, state your store facts (what you sell, where you ship, returns, contact) plainly on your own site, publish pages that answer real buyer questions, and earn genuine mentions elsewhere. Nobody can guarantee a mention in ChatGPT, Perplexity or Google's AI Overviews. That's the honest version of generative engine optimization, or GEO. It's mostly good SEO with a few extra checks. Here's what's actually known as of November 2026, and what I'd do on a small Shopify store. What is generative engine optimization (GEO)? Generative engine optimization is the work of making your site easy for AI answer engines to find, understand and cite. An "AI answer engine" here means ChatGPT search, Perplexity, Microsoft Copilot, and Google's AI Overviews and AI Mode: tools that write an answer and link to sources, instead of just listing ten blue links. Most of these systems don't "know" your store from training data. When a shopper asks "best linen dress brands that ship to Dubai", the assistant usually runs a web search, reads a handful of pages, and writes a summary with citations. So the question becomes: are your pages in the index it searched, and are they the clearest answer it found? How do AI assistants choose which stores to mention? Nobody outside these companies knows the full recipe, but the vendors publish enough to work with. Google.  Google's  AI features documentation  says there are no extra requirements to appear in AI Overviews or AI Mode. A page has to be indexed and eligible to show a snippet in normal Search. Google's 2026  generative AI optimization guide  adds that these features run on Google's core ranking and quality systems, and that original, first-hand content matters most over time. ChatGPT.  OpenAI's  crawler documentation  says ChatGPT search surfaces sites through a crawler called OAI-SearchBot. If you block it in robots.txt, your pages won't appear in ChatGPT search answers (OpenAI notes they can still show up as plain links when someone searches for your site by name). Perplexity.  Perplexity's  crawler page  says PerplexityBot is what surfaces and links sites in Perplexity results, and recommends allowing it. The common thread: you get cited by being crawlable, indexed and useful. There's no separate AI channel you can sneak into. Step 1: Check which AI crawlers can reach your store Visit  yourstore.com/robots.txt . Look for any rule naming the crawlers below. Even if the file looks fine, an old theme customisation, a security app or a CDN rule can still block bots, so check them too. Here's what the main bots do, according to each company's own documentation: Crawler Company What it's for Block it? Googlebot Google Search, including AI Overviews and AI Mode No OAI-SearchBot OpenAI Showing and citing sites in ChatGPT search No, if you want ChatGPT citations GPTBot OpenAI Collecting content that may train OpenAI models Your call ChatGPT-User OpenAI Fetching a page when a user asks ChatGPT to Not controlled the same way; user-triggered PerplexityBot Perplexity Showing and linking sites in Perplexity results No, if you want Perplexity citations Perplexity-User Perplexity Fetching a page for a user's question Generally ignores robots.txt My opinion: allow the search crawlers. Whether you block training crawlers like GPTBot is a values decision, not an SEO one, and blocking it doesn't stop OAI-SearchBot from citing you. If you do edit robots.txt on Shopify, read Shopify's  robots.txt.liquid warning  first. A typo there can wipe out your Google traffic too. Step 2: Get your product data complete AI shopping answers lean heavily on structured product data, not just your page copy. On Shopify this matters more than you'd think. Shopify now has a Sales channels > Agentic section in admin. Its  agentic storefronts page  lists channels including ChatGPT, Microsoft Copilot, Google AI Mode and Gemini (through the Google & YouTube channel or Merchant Center), Meta surfaces, and Shop. Products reach those channels through  Shopify Catalog , which reads your titles, descriptions, images, categories, variants, prices and inventory. Shopify is clear that being in Catalog doesn't guarantee a product shows up in any particular AI answer. But incomplete data is an easy way to be skipped. So: Set a product category  for every product, not just a product type. Fill in variant options properly.  "Size: M" and "Colour: Sage", not "Option1: Default". Write real descriptions  with materials, dimensions, compatibility and care. Keep inventory accurate.  An assistant recommending an out-of-stock product is a bad experience for everyone. Add barcodes (GTINs)  where your products have them. Keep Google Merchant Center healthy  if you use the Google & YouTube channel. Google's guide names Merchant Center feeds as a way products appear in its AI responses. Shopify's own  Optimizing your store for AI  page suggests putting detailed specs and comparison information on product pages, with AI-oriented detail lower down the page so it doesn't clutter things for shoppers. Sensible advice. Step 3: State your store facts in plain sentences AI answers often include store-level facts: "ships to the UAE", "offers cash on delivery", "30-day returns". If those facts are vague, buried in an image, or contradictory across pages, the assistant either skips you or gets it wrong. Make sure these exist as plain text on your site: About page:  who you are, where you're based, what you sell, since when. Shipping page:  countries, delivery times, costs, COD availability. Returns page:  window, conditions, who pays return shipping. Contact page:  email, WhatsApp number, hours. Consistent names:  the same business name and spelling on your site, social profiles and marketplaces. Write them so a single sentence stands on its own. Compare: We ship pretty much everywhere, see checkout for details! We ship to the UAE, Saudi Arabia, Qatar, Kuwait, Bahrain and Oman. Delivery takes 2–4 business days and cash on delivery is available in all six countries. The second one can be quoted. The first can't. Organization markup helps machines connect these facts, and I explain how in  schema markup for Shopify stores . Shopify also lets you manage a knowledge base of store facts that AI agents use, under Sales channels > Agentic. Check it, because the auto-generated answers are only as good as your policies. Step 4: Publish pages that answer the questions people ask AI People phrase questions to AI the way they'd ask a shop assistant: "Is linen good for humid weather?", "Which vitamin C serum is safe with retinol?", "Can I return a sofa if it doesn't fit through the door?". If your store has a clear, specific page answering that, you're a candidate for citation. If the answer only exists in your WhatsApp chats, you're not. That's why I keep telling merchants their support inbox is their best keyword research tool. Every question a customer types into WhatsApp is one another customer is typing into ChatGPT. If your team answers in a shared inbox like WhatFlow's, tagging those questions as they come in gives you a ready-made content list. I've laid out a process for  turning WhatsApp conversations into content ideas , and it pairs well with  writing product FAQs that answer real buying questions . A few writing habits help these pages get lifted into answers: Answer first.  Put the direct answer in the first two sentences, then explain. Name things.  "Our Sage Linen Wrap Dress" beats "it". Use tables and lists  where the content is genuinely tabular (sizes, comparisons, steps). Show first-hand knowledge.  For example: "The one complaint we hear about this dress from customers in Riyadh is wrinkling, so here's how to steam it." Google's guide explicitly favours that kind of non-commodity content. Google's guide also says you don't need to chop content into tiny "chunks" or rewrite it in a special AI style. Write for people. Step 5: Earn real mentions elsewhere AI answers to "best X for Y" questions lean on sources beyond your own site: review sites, editorial roundups, forums, marketplaces, YouTube. If nobody else mentions your store, an assistant has little reason to. What works for small stores: Product reviews on your own pages  from real buyers. Start with  collecting your first product reviews  if you have none. A presence where your category is discussed : niche communities, Reddit threads, local media, comparison blogs. Be useful, not spammy. Accurate marketplace and social profiles  that match your site. PR for something genuinely new : a product launch, a local story, an unusual policy. Google's guide calls out inauthentic mentions directly: fake reviews and planted "best of" lists don't help and its spam systems are built to catch them. Don't waste money there. What about llms.txt? llms.txt is a proposed convention, first published in September 2024 at  llmstxt.org , for a Markdown file at your site root that gives AI tools a short summary of your site and links to key pages. It's unofficial, and support varies by tool. As of November 2026, Google has said plainly that Google Search doesn't use llms.txt files and that they won't help or hurt your visibility or rankings, while noting it's fine to keep one for other services ( Search Central changelog, June 2026 ). My take: if your platform or theme makes it a five-minute job, fine. It won't hurt. But don't spend a week on it while your collection pages are empty and your returns policy is a single line. Those matter more. How do I know if any of this is working? You can't track AI mentions perfectly, but you can get a decent signal: Referral traffic.  In Shopify analytics, look for sessions from chatgpt.com, perplexity.ai, copilot.microsoft.com and similar. Search Console.  Google's guide points to generative AI reporting in Search Console for its own AI features. Manual checks.  Once a month, ask three or four assistants the questions your customers ask. Note if your store is mentioned and if the facts are right. If a fact is wrong, fix the page it probably came from. Ask customers.  Add "How did you hear about us?" to post-purchase. You'll be surprised how many now say "ChatGPT".  The short version GEO for a Shopify store is: let the search crawlers in, complete your product data, write your store facts in plain sentences, answer real questions on real pages, and get talked about honestly. If you're doing proper SEO, you're already most of the way there. Start with the  Shopify SEO checklist  and add the AI checks above on top.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[seo]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Back-in-stock alerts on WhatsApp: Shopify setup and examples]]></title>
      <link>https://whatflow.io/blog/back-in-stock-whatsapp-alerts-setup</link>
      <guid isPermaLink="true">https://whatflow.io/blog/back-in-stock-whatsapp-alerts-setup</guid>
      <description><![CDATA[Two honest ways to send back-in-stock alerts on WhatsApp from Shopify, using Shopify Flow and WhatFlow, plus consent wording and message examples.]]></description>
      <content:encoded><![CDATA[WhatFlow doesn't have a dedicated back-in-stock feature, and I'd rather say that up front. You can still send back-in-stock alerts from Shopify over WhatsApp in two ways: Shopify Flow's "Product variant back in stock" trigger plus WhatFlow's template action, or a back-in-stock app's own Flow trigger feeding the same action. Both need opted-in subscribers and an approved template. Two ways to send back in stock alerts from Shopify  Route A: Flow + customer tags Route B: back-in-stock app + Flow Who collects sign-ups You (WhatsApp chat or a form) Your back-in-stock app What fires the alert Shopify Flow's "Product variant back in stock" trigger The app's own Flow trigger What sends the WhatsApp WhatFlow's send-template action WhatFlow's send-template action Best for Small catalogues, requests that arrive in chat Larger catalogues, lots of sign-ups Main catch You manage tags; Flow returns up to 100 customers per lookup Only works if the app's trigger passes a phone number I'd start with Route A if most of your "is this coming back?" questions already arrive on WhatsApp. Go to Route B if you already have a back-in-stock app with a sign-up form on your product pages.  Route A: Shopify Flow, customer tags and WhatFlow Step 1: capture the request with consent Say a customer messages: "Is the oat linen shirt coming back in M?" Reply inside the chat: It's sold out in M right now, sorry. We're expecting more in about two weeks. Want a WhatsApp message the moment it's back? Reply YES and we'll send one alert, nothing else. When they say yes, tag the customer in Shopify with something that identifies the variant, for example  bis-oat-linen-m . You can do that by hand from the customer record. If you'd like to automate tagging from incoming messages,  routing incoming WhatsApp messages with Shopify Flow  shows what's possible. Record the consent somewhere you can find it later.  Collecting WhatsApp opt-ins on Shopify  covers good places to store it. Step 2: create and submit the template Write a back-in-stock template in WhatFlow's template editor with variables for the customer's first name, product name and link. Meta decides the template's category. A restock alert promotes a product, so expect it to be treated as marketing in many cases; our  marketing vs utility templates explainer  has the detail. It can't send until it's approved. Step 3: build the Flow workflow Trigger: Product variant back in stock.  Per Shopify's docs, this fires when a variant's inventory increases from 0 or less to 1 or more, whether the change comes from an order, a manual edit or an app. Condition:  check it's the variant you care about (or use the variant's SKU to build the tag you search for). Action: Get customer data.  Query customers with the matching tag. Flow returns up to 100 customers per run. For each  customer returned: Condition:  confirm the customer really has the tag. Shopify's docs warn that a failed query can return all results instead of none, and you do not want to alert your whole customer list about one shirt. Action:  WhatFlow's send-template action, mapping first name, product title and product URL into the template variables. Action:  remove the  bis-  tag so they're not alerted again next time.  The step-by-step for the template action is in  sending WhatsApp templates from Shopify Flow . When to use Inventory quantity changed instead The back-in-stock trigger doesn't care about locations; it's about in stock versus out of stock. If you only want to alert people when a specific warehouse or shop has stock, or only when you have, say, more than five units, use Flow's "Inventory quantity changed" trigger, which gives you the prior quantity and per-location levels to build conditions on. Route B: a back-in-stock app's Flow trigger Many back-in-stock apps on the Shopify App Store add their own Shopify Flow triggers. If yours does, the setup is shorter: the app collects sign-ups on your product page, fires a trigger when it's time to notify someone, and you add WhatFlow's send-template action to that workflow. Before you build anything, check three things in your app's Flow trigger: Does it pass a phone number?  If the trigger only includes an email address, you can't send a WhatsApp message from it. Does it fire per subscriber or per product?  Per subscriber is easiest: one trigger, one WhatsApp. Per product means you'll need to look up the subscribers yourself. Does the sign-up form collect WhatsApp consent?  An email sign-up isn't WhatsApp consent. Add a WhatsApp checkbox or a separate phone field with clear wording. App features change, so look at what your app's Flow trigger actually exposes today rather than what its listing implies.  Evaluating Shopify app connectors before building a workflow  is a good checklist for this. Consent wording for a back-in-stock sign-up On a product page form: Notify me on WhatsApp when this is back in stock. We'll send one message for this item. Reply STOP any time. Short, specific, and it tells people exactly what they're signing up for. That one line does more for your quality rating than anything else in this guide. Back-in-stock message examples Standard alert: Hi Rhea, good news: the Oat Linen Shirt is back in size M. Here's the link: shoplinen.co/oat-shirt You asked us to let you know, so this is the only message you'll get about it. Small restock (be honest about quantity): Hi Rhea, the Oat Linen Shirt is back in M, but only a small batch came in. If you still want one, here it is: shoplinen.co/oat-shirt Back, but different: Hi Rhea, the Oat Linen Shirt is back in M. Heads-up: the new batch has a slightly longer sleeve (2cm). Happy to send a photo if you'd like to compare. Link: shoplinen.co/oat-shirt If someone replies with a question, that opens the 24-hour customer service window and you can answer normally. How many alerts, and when? One alert per request. No "still thinking about it?" follow-up. They asked for one message, so send one. Timing is the awkward part. Flow fires the moment inventory changes, which might be 2am when your supplier's stock sync runs. If that's a problem, change how you restock (receive inventory during working hours) or move the send to a scheduled workflow. And if 300 people are waiting for a variant and 20 units arrive, think before you alert everyone at once. A small-restock message like the one above keeps expectations honest. Test before you switch it on A back-in-stock workflow that misfires can message the wrong people, so test it properly: Create a test product (or a hidden variant) with zero inventory. Tag your own customer record with the matching  bis-  tag, using your own phone number, opted in. Tag a colleague's test record with a different tag, to make sure they're not messaged. Change the test variant's inventory from 0 to 1. Check: did you get exactly one message, with the right product name and link? Did your colleague get nothing? Was your tag removed afterwards? Look at the workflow's run history in Shopify Flow for errors. Only then activate it for real products. And when you change the template later, run the test again.  WhatsApp or email for restock alerts? Both work. WhatsApp gets seen fast and invites a reply; email is cheaper per message and fine for low-urgency items. If you're choosing between them, our  WhatsApp vs email comparison for back-in-stock alerts  lays out the trade-offs. Many stores offer both on the sign-up form and let the customer pick.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[conversion]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Birthday messages for customers that don't feel automated]]></title>
      <link>https://whatflow.io/blog/birthday-anniversary-messages-shopify</link>
      <guid isPermaLink="true">https://whatflow.io/blog/birthday-anniversary-messages-shopify</guid>
      <description><![CDATA[How to collect birthdays with consent, store them in Shopify, send on the right day, and write birthday and anniversary messages that sound human.]]></description>
      <content:encoded><![CDATA[Birthday messages for customers feel personal when three things are true: the customer chose to share the date, the message arrives on the right day, and it sounds like a person at your store wrote it. Collect birthdays with a clear reason, store them in a Shopify customer metafield, and send one short WhatsApp template on the day. If you can't do all three, skip birthdays. Why most birthday messages feel automated You've had them. "Happy Birthday, VALUED CUSTOMER! 🎉 Enjoy 15% off with code BDAY15!" at 12:01am, from a store you bought socks from once. What makes them feel robotic: The wrong time.  Midnight sends scream "scheduled job". The wrong data.  A date pulled from somewhere the customer doesn't remember sharing. A coupon instead of a greeting.  The message is really a promotion wearing a party hat. Nobody's name on it.  No person, no store voice. Fix those four and the message stops feeling automated, even though it is. How to collect birthdays (with consent) Ask for it, and say why. Something like: Tell us your birthday and we'll send you a little something on the day. Just the day and month, no year needed. Ask for day and month only. You don't need the year, and asking for less makes people more willing to share. Make the field optional, and let people remove it later. Good places to ask: Account sign-up or the customer account page. A post-purchase thank-you page. In a WhatsApp chat, after a positive conversation: "By the way, want us to remember your birthday? Just send the day and month." Separately, make sure the customer has opted in to WhatsApp messages from you. Sharing a birthday and agreeing to WhatsApp marketing are two different things; ask for both clearly. If you sell into the EU or UK, read  our GDPR checklist for WhatsApp marketing  before you start collecting personal details for marketing. The basics of getting opt-in right are in  collecting WhatsApp opt-ins on Shopify . Where to store it Shopify customers can hold extra fields called  metafields , which are custom data attached to a customer record. Create a customer metafield definition for the birth date and save each customer's date there. Shopify Flow's own birthday workflow template expects exactly this: a birth date customer metafield and a segment of customers whose birthday is today. Anniversaries you already know about You don't need to collect anything for the most useful anniversary:  the first order . Shopify already knows when each customer first bought from you. Other anniversaries worth remembering, only if the customer told you: A wedding date, for a jewellery or gifting store that made the rings or the favours. A pet's adoption day, for a pet store. The date a subscription started. Never guess or infer these. If a customer mentioned their wedding in a chat, ask before you save it. Setting it up with Shopify Flow and WhatFlow Here's a setup that works with WhatFlow's Flow actions: Create a segment  of customers whose birth date metafield matches today. Shopify's birthday Flow template is a good starting point. Tag them.  Use Flow's "Customer joined segment" trigger with an "Add customer tags" action (say,  birthday-today ). That trigger only supports tag, metafield and note actions, which is why tagging comes first. Send the message.  A second workflow on the Scheduled time trigger runs each morning, uses "Get customer data" to find customers tagged  birthday-today , and for each one runs WhatFlow's send-template action with the customer's first name mapped in. Clean up.  Remove the tag after sending, so nobody gets two messages. Flow returns up to 100 customers per lookup, which covers most small stores' daily birthdays comfortably. Test the whole thing with your own customer record and a fake birthday before you switch it on. The template action is covered step by step in  sending WhatsApp templates from Shopify Flow . The birthday message itself needs to be a Meta-approved template. Write it in WhatFlow's template editor, submit it, and wait for approval before activating the workflow. When to send birthday messages On the day, mid-morning, in the customer's time zone.  If most of your customers are in one country, schedule for 10am there. Not at midnight.  Even if your segment updates at midnight, hold the send. Birthday week, for gifts.  If you're offering something to use, give them a week, not a day. Birthday message examples Simple greeting, no offer: Happy birthday, Hana! From all of us at Little Fern Studio, we hope today is a lovely one. Thanks for being part of our little corner of the internet. Maya With a small gift: Happy birthday, Hana! We've added a free mini candle to your next order this week, no minimum spend. Just order as normal before Sunday and it'll be in the box. Maya at Little Fern For a long-time customer: Happy birthday, Hana. You've been ordering from us since our very first market stall, which still makes me smile. Hope it's a great day. Maya First-order anniversary: Hi Omar, a year ago today you placed your first order with us (the walnut desk tray, if you remember). Thanks for sticking with us. If anything we sent ever needs a bit of care or a replacement part, just message here. Wedding anniversary (jewellery, only if they shared it): Hi Priya, happy anniversary to you and Rohan. We still remember engraving your bands. If you'd ever like them cleaned or resized, bring them in or message us here. Notice what's missing from most of them: codes. They're signed by a person, they reference something real, and they're short. Should a birthday message include a discount? My view: a gift beats a discount. "A free mini candle in your next order" feels like a present. "15% off with code BDAY15" feels like a sale. Both can work, but the gift is the one people remember, and it doesn't teach customers to save their shopping for their birthday. If you do use a code, make it generous enough to feel like a gift and valid long enough (a week or more) that it doesn't feel like pressure. Keep it opt-in, and easy to stop Every marketing message on WhatsApp needs a way out. If a customer replies STOP or asks you to forget their birthday, remove the date and honour the opt-out straight away. Our guide to  running a clean WhatsApp opt-out process  covers how to make that stick across your team. Common birthday-message mistakes (and quick fixes) Mistake Why it feels automated Fix Sending at 12:01am Nobody's awake to read it Schedule mid-morning local time "Dear Customer" No name, no person Use the first name and sign it Same message for a first-time buyer and a five-year regular Ignores the relationship Two versions: new customers and regulars A code that expires in 24 hours Feels like pressure on their birthday A week, or a gift instead Sending to someone who never shared a birthday Feels creepy Only use dates customers gave you Two messages (email and WhatsApp) at the same time Feels like a system, not a person Pick one channel per customer What if a customer says you got the date wrong? It happens: a typo at sign-up, a gift buyer who entered someone else's birthday. Apologise lightly, fix the metafield, and move on. Oh no, sorry about that! I've updated it to the 14th of March. Hope the real one is a great day when it comes. If the birthday belonged to a gift recipient, ask whether they'd like to keep a reminder for that person instead. Some customers love being nudged a week before a partner's or parent's birthday, as long as they asked for it. For a one-off retention send, start with the eligible repeat buyers you can actually identify in Shopify, or upload an opted-in spreadsheet to WhatFlow Team Inbox. Personalize an approved template and test the product link before scheduling. If someone replies with a question, pick up that conversation in the same inbox instead of sending another automatic reminder. See the  broadcast setup and checks .  Where birthdays fit Birthday and anniversary messages are small. They won't transform your revenue on their own. But they're one of the few business messages people actually like getting, and they pair well with the bigger pieces of retention, like  how you treat VIP customers on WhatsApp . Keep them human and keep them rare.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[retention]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[The Black Friday WhatsApp playbook for Shopify stores (2026)]]></title>
      <link>https://whatflow.io/blog/black-friday-whatsapp-playbook-shopify</link>
      <guid isPermaLink="true">https://whatflow.io/blog/black-friday-whatsapp-playbook-shopify</guid>
      <description><![CDATA[A day-by-day Black Friday WhatsApp plan from November 5 to Cyber Monday: approved templates, opt-ins, early access, launch day and cart recovery.]]></description>
      <content:encoded><![CDATA[Black Friday WhatsApp marketing works when three things are done before the sale starts: your templates are approved by Meta, your list has actually opted in, and someone owns the replies. Black Friday 2026 is Friday, November 27 and Cyber Monday is November 30. As I write this on November 5, that's 22 days away. Here's the day-by-day plan I'd follow. Why WhatsApp works on Black Friday (and why blasting doesn't) Black Friday inboxes are a mess. Email open rates get buried under every brand on earth, and SMS is expensive in a lot of countries. WhatsApp is where many of your customers already talk to friends, family and the shops they trust, so a message there gets seen. That's also the danger. A WhatsApp message lands next to someone's mum. If it's loud, off-topic or the fourth one this week, they'll block you, and blocks and reports drag down your phone number's quality rating. So the whole playbook below is built on one rule: fewer messages, sent to people who asked for them, each one useful on its own. The Black Friday WhatsApp countdown (from November 5, 2026) Dates What to do Why now Nov 5 to 11 Lock the offer, write and submit templates Templates need Meta approval before they can send Nov 12 to 18 Grow and clean your opt-in list Opt-ins collected after the sale are too late Nov 19 to 23 Rehearse support, test every automation Bugs found on launch day cost orders Nov 24 to 26 Send early access to your list Rewards people who opted in Nov 27 Launch message, cart recovery live The main event Nov 28 to 29 Answer chats, no extra blasts Let the inbox breathe Nov 30 Cyber Monday last call to non-buyers One clear deadline Dec 1 onwards Order updates, shipping cut-offs, thank-yous Where repeat customers come from Week 1 (Nov 5 to 11): lock the offer and get templates approved A  message template  is a pre-written WhatsApp message that Meta reviews and approves before you can use it. Outside the 24-hour customer service window (the 24 hours after a customer last messaged you), a business can only start a conversation with an approved template. Every Black Friday promotion you plan to send is a business-initiated message, so every one of them needs an approved template. Meta's own documentation says template review "can take up to 24 hours". Don't plan around the best case. Plan around a rejection, an edit and a second review, which is why I'd submit everything this week. Write these templates now: Early access  (marketing): goes out Nov 24 or 25. Launch day  (marketing): Nov 27. Cyber Monday last call  (marketing): Nov 30. Abandoned checkout reminder : runs all week. Order confirmation and COD confirmation  (utility): if you sell cash on delivery, this is the one that saves you from fake orders. Shipping update  (utility). Holiday shipping cut-off reminder : for December. Keep the wording specific: the real discount, the real dates, one link. Vague hype ("HUGE savings, don't miss out!!!") is what gets templates rejected and blocked. If one does bounce back, our guide on  why Meta rejects WhatsApp templates  covers the usual fixes. WhatFlow is built on the official Meta WhatsApp Cloud API, so you write and submit templates from the template editor inside Shopify admin and they go to Meta for review like any other Business Platform template. The status updates when Meta approves or rejects them. Week 2 (Nov 12 to 18): build an opt-in list you can actually message Here's the uncomfortable bit. Someone who messaged you in March asking about sizes has not agreed to receive Black Friday promotions. WhatsApp's Business Messaging Policy requires opt-in before you send business-initiated messages, and you have to honour opt-outs. Ways to grow a real list in the next seven days: Add a WhatsApp opt-in checkbox at checkout and on your account sign-up, with honest wording: "Get early access to our Black Friday sale on WhatsApp." Put an early-access sign-up on your homepage that names the date and the perk. Reply to customers already chatting with you: "Want early access to our Black Friday sale here on WhatsApp? Reply YES and we'll send it on the 24th." Record the yes. Mention it once in your email newsletter and on Instagram. Our guide to  collecting WhatsApp opt-ins on Shopify  walks through the wording and where to store consent. One more thing to check this week: your messaging limit. Meta caps how many unique people you can message outside the service window in a rolling 24 hours, and that cap rises with verification, volume and good quality. If your list is bigger than your current limit, you'll need to split sends across days. The  quality rating and messaging limits guide  explains how to check yours. Week 3 (Nov 19 to 23): rehearse support and test everything Your WhatsApp campaigns will generate replies. Lots of them. "Does the code work on the gift set?" "Will it arrive before the 10th?" "Can I change my size?" The support side of the sale has its own guide:  preparing your Shopify support team for Black Friday . The short version for WhatsApp:  Write saved replies for the ten questions you'll get most, using this year's actual offer terms. Decide who answers WhatsApp each shift. A shared inbox with assignment beats three staff phones. WhatFlow's inbox has no seat fees, so pulling in five extra people for the weekend (or fifty, if you're a bigger team) doesn't change your seat bill. Send every template to yourself and a colleague. Click every link. Check the discount applies. Place a test order with a test COD confirmation if you use one. Then do one last read of every template before the early-access send, as if you were the customer. Early access (Nov 24 to 26): reward the people who opted in Early access is the best Black Friday message you can send, because it's genuinely a perk. Your list gets the sale a day or two before everyone else. Hi Amira, it's Lena from Fernwood Candles. As promised, your early access is open: 25% off everything until Friday, before we announce it anywhere else. Your link: fernwood.shop/early Reply STOP if you'd rather not get offers here. Name a person, keep the promise you made at sign-up, and give one link. Black Friday (Nov 27): the launch message On the day, send one message to opted-in subscribers who haven't already bought during early access. Send in the morning in your customers' time zone, not at midnight. Black Friday is live at Fernwood Candles: 25% off everything through Monday, Nov 30. Gift sets ship free over $50. Order by Dec 14 for delivery before the holidays (most of the US). Shop: fernwood.shop/bf If your list is large, stagger the send across the morning so your team isn't hit by every reply at once. If you already have an opted-in Shopify audience, start a WhatFlow broadcast from selected customers or a Shopify segment in Admin. For a scheduled campaign built from CSV, Excel or existing conversations, use Team Inbox. Map the template fields, send a test, and make sure someone owns the replies. The  campaign walkthrough  shows both routes. Cart recovery during BFCM Abandoned checkout messages are one of the most useful automations during the sale, because people are comparing tabs and getting distracted. Keep the message short and helpful. Hi Sam, you left the Cedar & Fig gift set in your cart. The Black Friday price (25% off) holds until Monday night. Any questions about scents or delivery? Just reply here. I wouldn't stack an extra discount on top of a Black Friday price. The sale is already the reason to finish the order. What helps more is answering the question that stopped them, which is why the message invites a reply. We wrote more on this in  recovering an abandoned checkout with a real WhatsApp conversation . Cyber Monday (Nov 30): one last call Send this only to people who haven't bought during the weekend. Buyers should get order updates, not more promotions. Last day of our Black Friday sale. 25% off ends tonight at 11:59pm. If you were eyeing a gift set, this is the moment: fernwood.shop/bf How many Black Friday WhatsApp messages should you send? My answer: three marketing messages per person across the whole week, at most. Early access, launch, last call. Stop the sequence for anyone who buys or replies STOP. Cart recovery and order updates sit outside that count because they're triggered by the customer's own actions. Restraint is the whole strategy here. A customer who blocks you on Friday is gone for every sale after it. After BFCM (Dec 1 onwards): the messages that bring people back The week after Cyber Monday is where you earn the next order: Order and shipping updates.  People who ordered on Friday want to know where their parcel is. Proactive updates cut "where is my order?" chats. COD confirmations.  If you sell cash on delivery, confirm every order before it ships. Holiday cut-off reminders.  Tell people the last day to order for delivery before the holidays. Our  holiday shipping cut-off guide  has wording for every channel. A thank-you with no offer attached.  It's rare enough to be noticed.  What will Black Friday on WhatsApp cost? Meta charges per delivered template message, with rates that vary by category (marketing, utility, authentication) and by the recipient's country. Two changes took effect on October 1, 2026 that matter for a busy week: utility templates sent inside an open customer service window are now charged, and service replies are free only for the first 1,000 delivered per business phone number each month. A big Black Friday can blow through that, so check  Meta's pricing page  for current rates before you size a send. Our  WhatsApp Business API pricing explainer  walks through the maths. WhatFlow's app pricing is separate from Meta's charges; every WhatFlow plan includes every feature, including the Free plan, and plans differ only by messaging allowances and rates. See  WhatFlow pricing  for current amounts. Twenty-two days is enough. Submit your templates this week and the rest of the plan falls into place.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[whatsapp]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Click-to-WhatsApp ads for Shopify: setup and handling the chats]]></title>
      <link>https://whatflow.io/blog/click-to-whatsapp-ads-shopify</link>
      <guid isPermaLink="true">https://whatflow.io/blog/click-to-whatsapp-ads-shopify</guid>
      <description><![CDATA[How click-to-WhatsApp ads work for Shopify stores, what Meta's free entry point window means, and reply scripts that turn ad chats into orders.]]></description>
      <content:encoded><![CDATA[Click-to-WhatsApp ads are Facebook and Instagram ads that open a WhatsApp chat with your store instead of a product page. For a Shopify store they work best on products people want to ask about before buying. Set them up in Meta Ads Manager with WhatsApp as the destination, staff the inbox before you launch, and answer each chat within minutes with a short, useful reply. The ad is the easy part. What decides whether click-to-WhatsApp ads make money is what happens in the next ten minutes of chat. Most of this post is about that. When click-to-WhatsApp ads make sense for a Shopify store Ads that send people to a product page are fine when the product sells itself. Click-to-WhatsApp works better when shoppers have a question in the way: Fit and sizing  (fashion, shoes, rings) Suitability  (skincare for sensitive skin, supplements, baby products) Big-ticket decisions  (furniture, electronics, jewellery) where people want reassurance COD markets , where a quick chat builds trust before someone commits Custom or made-to-order items  that need details If your product is a $12 phone case, a chat is probably more friction than help. Send them to the product page. How to set up a click-to-WhatsApp ad Meta's interface changes often, so treat this as the shape of the process and follow  Meta's own Ads Manager guide  for the current labels. Connect your WhatsApp number to your Facebook Page  (and Instagram account if you advertise there). The ad needs to know which number to open. Create a campaign in Ads Manager  with an objective that supports messaging destinations. Engagement and sales objectives are the usual choices. Choose WhatsApp as the message destination  at the ad set or ad level. Write the ad creative  with a clear reason to message: "Not sure about your size? Ask us on WhatsApp." Set up the first message.  You can define a prefilled message the customer sends with one tap, and greeting or FAQ-style options. Meta's API also supports  welcome message sequences  with text, a prefilled message and quick replies. Staff the inbox, then publish.  In that order. A good prefilled message names the product so your team knows the context instantly: Hi! I saw your ad for the Aria wrap dress. Can you help me with sizing? The free entry point window, explained This is the bit of Meta pricing that makes click-to-WhatsApp ads attractive. As of November 2026, Meta's  pricing documentation  works like this: A customer taps your ad and messages you from WhatsApp on Android or iOS (desktop and web don't qualify). That opens the normal  24-hour customer service window , the period in which you can reply with any message. If you reply within that 24-hour window, your reply isn't charged and it opens a  free entry point (FEP) window , counted from when you replied. Meta says the FEP window  may remain open for up to 7 days . While it's open, Meta doesn't charge for marketing, utility, authentication or service messages to that customer. You may have read "72 hours" elsewhere. Older Meta material used that figure; the current pricing page says up to 7 days, so go by that and check the page again before you plan a budget around it. Two practical consequences: Reply within 24 hours or you lose it.  Miss the service window and you're back to paid templates. In practice, you should be replying in minutes anyway. The window is for that conversation, not a free marketing pass.  It removes Meta's charge. It doesn't create marketing consent. What to do with the chats Here's the reply structure I'd train a team on. Four moves. 1. Reply fast, and like a human Ad leads cool off quickly. They tapped because they were curious right now. If nobody's online, an honest away message beats silence (examples in  away messages and business hours ). Hi Maya! Thanks for messaging Bloom & Co. I'm Sana, happy to help with sizing on the Aria dress. 2. Answer the question the ad raised Don't make them repeat themselves. If the prefilled text says "sizing", go straight to sizing. The Aria runs true to size with a bit of stretch. What size do you usually wear in dresses, and do you prefer a closer or looser fit at the waist? 3. Ask one qualifying question One. Not a form. Size, skin type, room dimensions, delivery city. Whatever decides which product fits. 4. Offer the next step A product link with the right variant, a photo of the item on a model their height, a reserved item, or COD confirmation details. Based on that, I'd go M in olive. Here's the link with M selected: [link]. We deliver to Riyadh in 2 to 3 days, and cash on delivery is available. WhatFlow's live catalog sharing lets your team send products from your Meta catalog straight from the inbox, which is quicker than copying links. See  WhatsApp catalog sharing for support  for how stores use it.  Saved replies for the common ad questions Prepare these before launch, then personalise each one: Delivery time:  We deliver to [city] in [X] days. Order before 2pm and it ships today. COD:  Yes, cash on delivery is available in [country]. We'll send a WhatsApp confirmation after you order. Price objection:  Totally fair. The [product] is [material/benefit]. If you'd like something lighter on budget, the [alternative] is [price] and very similar. Not ready yet:  No rush! Want me to message you here if it goes on sale or runs low on your size? That last one is also how you turn an ad chat into a  marketing opt-in : ask, and record the yes. The guide to  collecting WhatsApp opt-ins  has more wording. Inbox setup for ad campaigns When an ad works, chats arrive in bursts. Set up before you spend: One shared inbox , not three staff phones. WhatFlow's  team inbox  runs on Meta's official WhatsApp Cloud API and has no seat fees, so scaling from two agents to twenty for a big ad push doesn't add seat cost. Assignment rules , so two people don't answer the same lead. WhatFlow has inbox assignment and filters for this. Saved replies  for the five questions above. A tag or note per campaign , so you can count chats and orders by ad later. Coverage hours  that match when the ad runs. Pause ads overnight if nobody's on. The guide to  selling over WhatsApp  goes deeper on the sales conversation itself. If you already have an opted-in Shopify audience, start a WhatFlow broadcast from selected customers or a Shopify segment in Admin. For a scheduled campaign built from CSV, Excel or existing conversations, use Team Inbox. Map the template fields, send a test, and make sure someone owns the replies. The  campaign walkthrough  shows both routes. Common mistakes with click-to-WhatsApp ads Launching before the inbox is ready.  The first hour of a new ad often brings a burst of chats. If nobody's there, you pay for conversations that go cold. A vague ad promise.  "Chat with us!" attracts curious people with no question. "Not sure about sizing? Ask us" attracts buyers. No prefilled message.  Customers open a blank chat, type "hi", and your team has to work out which ad they came from. Running ads in countries your team can't serve.  If you only deliver to the UAE and Saudi Arabia, target only those. Treating ad chats as subscribers.  They started a conversation. Marketing permission is a separate question you ask. Judging the campaign on cost per chat.  Cheap chats that never buy are expensive. How to measure click-to-WhatsApp ads Ads Manager shows conversations started. That's not the number that matters. Track: Conversations started  (from Ads Manager) Replied within 5 minutes  (from your inbox) Orders from those chats  (tag them, or use a unique discount code or UTM link per campaign) Cost per order , not cost per conversation Say a hypothetical campaign spends $300 and starts 150 chats. That's $2 a chat, which looks great. If 6 turn into orders, you paid $50 per order. Whether that's good depends entirely on your margin. Those numbers are invented; run your own.  Before you spend a dollar Pick one product that people genuinely ask about, write the prefilled message, prepare five saved replies, and put someone on the inbox for the hours the ad runs. Then launch small. WhatFlow gives you the inbox, saved replies, catalog sharing and templates on every plan, including Free, so the main new cost is the ad itself.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[conversion]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[How to collect WhatsApp opt-ins on Shopify (the right way)]]></title>
      <link>https://whatflow.io/blog/collect-whatsapp-opt-ins-shopify</link>
      <guid isPermaLink="true">https://whatflow.io/blog/collect-whatsapp-opt-ins-shopify</guid>
      <description><![CDATA[Six places to ask Shopify customers for WhatsApp permission, the wording that works, and how to keep a consent record you can trust.]]></description>
      <content:encoded><![CDATA[To collect WhatsApp opt-ins on Shopify, ask in the places customers already give you their number: the checkout checkbox, a sign-up popup, the chat itself, the order confirmation page, and a QR code on packaging. Every ask should name your store, say the messages come on WhatsApp, say what they'll get, and say how to stop. Then record when and where they agreed. That's the whole method. The rest of this post is the detail: where each opt-in point works best, what to write, and the mistakes that quietly wreck a WhatsApp list. What counts as a WhatsApp opt-in? A  WhatsApp opt-in  is a customer's clear agreement to receive messages from your business on WhatsApp. Meta's  opt-in guidance  is short and worth reading in full. Two things are required: you have to state that the person is opting in to receive messages from your business, and you have to state your business name. You also need their phone number, and you have to follow local law (GDPR in Europe, for example, which I cover in  WhatsApp marketing and GDPR ). Meta also recommends, but doesn't require, a few things I'd treat as rules anyway: Say what kinds of messages they'll get (order updates, offers, restock alerts). Get separate opt-ins per category where you can. Explain why the messages are worth getting. Make opting out easy, and honour it. Why bother with the recommended bits? Because WhatsApp's  Business Messaging Policy  lets customers block and report you, and that feedback can limit how many messages you're allowed to send. A vague opt-in gets you a list full of people who are surprised to hear from you. Surprised people block. Opt-in vs the 24-hour window: don't mix them up The mistake I see most often is treating "they messaged us" as "they opted in." When a customer sends you a WhatsApp message, Meta opens a  24-hour customer service window : a period in which you can reply freely to that person. That's for answering their question. It isn't permission to add them to your Friday promo broadcast. If you want that, ask them inside the conversation (more on the wording below). The  24-hour window guide  explains the mechanics in detail. 6 places to collect WhatsApp opt-ins on Shopify Here's where I'd ask, roughly in order of how much permission each one tends to collect for a typical small store. Opt-in point Who you reach Best for Watch out for Checkout checkbox Every buyer Order updates plus offers Region settings, unticked by default Sign-up popup or form Browsers, first visit Welcome offer, launches Popup fatigue on mobile Inside a chat People already talking to you High-intent shoppers Ask after you've helped, not before Order status / thank-you page Fresh buyers Delivery and reorder updates Keep it one tap QR code on packaging Customers holding the product Refills, care tips, reviews Dead-end links Click-to-WhatsApp ads New audiences Launches, high-ticket Ad chat isn't marketing consent by itself 1. The Shopify checkout checkbox This is the one most stores should set up first, because every buyer passes through it. As of November 2026, Shopify's checkout settings have a  Marketing opt-in  section with separate SMS and WhatsApp options. According to the  Shopify Help Center , you go to  Settings > Checkout , make sure the phone number field is shown (optional or required), and set WhatsApp to  Checkout only . If you run both SMS and WhatsApp opt-ins, you can choose which regions see the WhatsApp checkbox and which see the SMS one, using Shopify's recommended regions or your own picks. That's handy if you sell in India and the Gulf (WhatsApp country) and also in the US, where WhatsApp doesn't deliver marketing templates at all. Two notes from Shopify's docs that matter in practice: The customer's preference is only saved when they actually submit the checkout. Someone who ticks the box and abandons isn't subscribed. The phone field must be visible for any of this to work. If your checkout hides it, nobody can opt in. Leave the box unticked. A pre-ticked box inflates your list with people who never chose it. 2. Sign-up popups and forms A popup works for first-time visitors who aren't ready to buy. The trick is being honest about the trade: here's what you'll send, here's what you get for it. Get restock alerts and early access on WhatsApp from Noor Skincare. About 2 messages a month, never more than one a week. Reply STOP anytime.
[Phone number] [Join on WhatsApp] On mobile, keep it to one field and a big button, and don't fire it before someone has scrolled. If your form tool only supports email and SMS, don't relabel the SMS field as WhatsApp. Use a form that names WhatsApp explicitly, because the channel is part of what they're agreeing to. 3. Inside a WhatsApp conversation People who message you are your warmest audience. Answer their question first. Then ask, once, with a clear choice. Glad that sorted the sizing! One quick thing: would you like Bloom & Co to send you new-drop alerts and occasional offers here on WhatsApp? Usually 2 to 3 a month. You can stop anytime by replying STOP.
[Yes, send me drops] [No thanks] Quick reply buttons make this a one-tap decision, and the button tap is an easy thing to record. A WhatsApp chat button on your store is what starts most of these conversations; WhatFlow's  theme-matched chat buttons  are free forever, so this opt-in point costs you nothing to open. 4. The order confirmation and thank-you page Right after purchase is when people most want updates. Ask for delivery updates first, offers second, as two separate choices if you can. That matches Meta's per-category recommendation and gives you a cleaner list. Want your delivery updates on WhatsApp? Tap below and we'll message you from Kaya Home when your order ships and when it's out for delivery. If you want marketing permission too, make it a second, separate checkbox or button. Don't bundle "shipping updates and promotions" into one tick. 5. QR codes on packaging, inserts and in-store A QR code on the box reaches people at the moment they're using your product. Point it at a wa.me link with pre-filled text, so the customer's first message tells you exactly what they signed up for: Hi Noor Skincare, I'd like refill reminders on WhatsApp. When that message lands in your inbox, reply with a confirmation that restates the deal (what they'll get, how often, how to stop). That reply is your opt-in record. The full build, including URL encoding, is in the guide to  WhatsApp links and QR codes . 6. Click-to-WhatsApp ads Ads that open a WhatsApp chat bring in new people, and they start conversations, not opt-ins. Treat them like any inbound chat: help, then ask. The  Click-to-WhatsApp ads guide  covers what to do with those chats. WhatsApp opt-in wording you can copy Good opt-in copy answers four questions in one or two sentences: who, where, what, and how to stop. Here are versions for different spots. Checkout checkbox (marketing): Send me offers and new arrivals from Bloom & Co on WhatsApp. Unsubscribe anytime. Checkout or thank-you page (utility only): Send my order and delivery updates on WhatsApp. Popup with an incentive: Join Kaya Home on WhatsApp for 10% off your first order, plus launch alerts. Up to 4 messages a month. Reply STOP to leave. Back-in-stock button on a product page: Message me on WhatsApp when the Linen Throw in Sage is back. One message, then we'll ask if you want more. Confirmation reply after a QR or link opt-in: You're in! Noor Skincare will message you here when it's time to restock (roughly every 6 weeks) and when we launch something new. Reply STOP anytime and we'll remove you. Notice what's missing: no "you agree to receive communications from our partners," no tiny grey text. If the promise is clear, the people who say yes actually want the messages. Record every opt-in If a customer ever asks "why are you messaging me?", you should be able to answer in ten seconds. For each subscriber, keep: Phone number (international format) Date and time they opted in Where (checkout, popup, chat, QR, ad) What they agreed to (order updates, marketing, a single restock alert) The exact wording they saw, or a version label for it Shopify stores the checkout consent on the customer record. For chat and QR opt-ins, the conversation itself is the evidence, which is one reason a shared inbox beats staff phones. WhatFlow's  team inbox  keeps those threads in one place with no seat fees, on Meta's official WhatsApp Cloud API, so the record doesn't walk out the door with an employee, whether your team is two people or forty. Native Shopify segment sync in WhatFlow is coming soon; until then, make sure the list you broadcast to is built from the same consent you collected. And opt-outs need the same care. A STOP has to stick across every tool that can message the customer. The  opt-out process guide  walks through it. Mistakes that shrink your list (or get you blocked) Importing old phone numbers.  A number from a 2023 COD order isn't a marketing opt-in. Bundling.  "Order updates and offers" in one checkbox. Split them. Hiding the frequency.  People tolerate a lot if they knew it was coming. Asking before helping  in chat. It reads as a sales tactic, because it is one. Never sending.  A list that hears nothing for four months forgets who you are. Plan a sensible cadence before you start collecting. Once the list is growing, measure it properly. The guide to  WhatsApp opt-in rate  shows how to calculate it per source so you know which of these six points is actually working for your store.  Where to start this week If you only do one thing, turn on the WhatsApp checkbox at checkout, unticked, with clear wording. If you do two, add a chat button and ask happy chatters for permission after you've solved their problem. Those two cover buyers and browsers, and both produce opt-ins you can stand behind. WhatFlow's Free plan includes templates, broadcasts, the inbox and the chat button, so you can run the whole loop before paying anything; current allowances are on the pricing page.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[whatsapp]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Collecting customer photos and UGC through WhatsApp]]></title>
      <link>https://whatflow.io/blog/customer-photos-ugc-whatsapp</link>
      <guid isPermaLink="true">https://whatflow.io/blog/customer-photos-ugc-whatsapp</guid>
      <description><![CDATA[Customers already send product photos on WhatsApp. Here's how to ask for them, get clear permission to reuse them, and keep a record you can trust.]]></description>
      <content:encoded><![CDATA[The best way to collect user generated content for an ecommerce store is to ask for one specific photo on WhatsApp a few days after delivery, then get written permission in the same chat before you use it anywhere. Say exactly where it'll appear, ask how they'd like to be credited, and keep their reply with the image. The customer owns the photo. You're borrowing it. Most stores I talk to are already sitting on a pile of great customer photos. They arrived in WhatsApp: a sofa in someone's living room, a toddler in the new raincoat, a cake made with the baking tins. Then they sat there, because nobody knew whether they were allowed to use them. This post is about turning that pile into something you can actually publish, properly. If you're collecting photos through your review app's form instead, read  collecting photo and video reviews . This one is about the WhatsApp side: photos customers send you in conversation, and the permission you need before they go anywhere else. What counts as user generated content in ecommerce? User generated content (UGC)  in ecommerce is any content about your products created by customers rather than by you: photos, videos, unboxing clips, written posts, even a screenshot of a happy message. It's valuable because it shows the product in real life, in real light, on real people, at real scale. A studio shot can't tell a shopper how big a 60cm planter looks next to a normal armchair. A customer's photo can. UGC is different from a review. A review is published by your review app, with its own rules and verification. UGC is raw material you might use in many places: a product page gallery, Instagram, a WhatsApp broadcast, a paid ad, even a printed insert. Each of those needs permission. Why WhatsApp is a good place to collect customer photos People take product photos on their phones. WhatsApp is on the same phone, and sending a photo there is two taps from the gallery. No account to create, no form to fill, no upload limit to puzzle over. It also lets you have a conversation. You can say "that looks great, could you take one in daylight?" or "would you mind if we cropped out the window?" A review form can't do that. The trade-off is that WhatsApp makes it very easy to receive a photo and very easy to forget to ask permission. So build the permission step into the process, not into anyone's memory. Who owns a customer's photo? The customer does. Under US law, copyright exists automatically as soon as a work is fixed in a tangible form, and the  U.S. Copyright Office  uses taking a photograph as its example. Most countries work the same way. Sending you the photo on WhatsApp doesn't transfer that copyright and doesn't, by itself, give you a licence to publish it. There's a second layer if the photo shows a person, their home, their kids, a house number or an address label. Under GDPR,  photographic data can contain personal data . If you sell to people in the EU, treat permission to use an identifiable photo like any other consent: specific, informed, and something they can withdraw. The  WhatsApp GDPR checklist  covers the consent basics. So the rule is simple. No written yes, no publishing. Permission levels: match the ask to the use Not all reuse is equal. Someone happy to appear on your product page might hate seeing their living room in a Facebook ad. I'd ask for permission at the level you actually need, and no higher. Where you'll use it What to ask for Credit Product page gallery Permission to show it on your website First name or Instagram handle, if they want Your organic social posts Permission to post on your named accounts Tag or handle, if they want WhatsApp broadcasts to your customers Permission to share it with your customer list Usually first name Paid ads Separate, explicit permission for ads Ask; many prefer none Print, packaging, marketplaces Separate permission, named specifically Ask If you're planning to  reuse reviews and photos on social media , the same principle applies: say the place, get the yes. Permission wording you can copy These work as normal replies when the customer has messaged you in the last 24 hours. If you're reaching out first, outside that window, you'll need an approved template, and only to customers who opted in to messages from you. Asking for a photo, a few days after delivery: Hi {{1}}, hope the Terracotta Planter has settled in! If you've got a minute, we'd love a photo of it in your space. Daylight works best. Totally optional, and we won't post anything without asking you first. When a photo arrives, before using it anywhere: This looks fantastic, thank you! Would you be happy for us to use this photo on our website's product page and on our Instagram (@terracottahome)? We'd credit you by first name, or by your Instagram handle if you prefer, or not at all. You can ask us to take it down any time by messaging here. If they say yes, confirm exactly what they agreed to: Thank you, Amira! Just to confirm: we'll use your planter photo on our product page and on our Instagram, credited as "Amira". If you ever want it removed, message us here and we'll take it down. Asking separately for paid ads: One more question, and it's fine to say no: could we also use this photo in paid ads on Instagram and Facebook? It would appear to people who don't follow us. If you'd rather keep it to our page and website, that's completely fine. If they say no, or don't reply:  don't use it. Don't chase more than once. A "no" is still a happy customer. When someone asks you to remove it: Of course, it's done. We've removed the photo from our website and Instagram. Thanks again for sharing it with us. Should you offer a reward for photos? You can, and plenty of stores do, a small discount or loyalty points for a usable photo. Two rules. First, the reward can't depend on the photo or caption being positive. Second, if the photo is then shown as an endorsement, the incentive should be disclosed. The FTC's  guide on soliciting reviews  says incentives shouldn't be conditioned on positive content and should be disclosed, and the same logic applies to photos used as testimonials. The  incentivized reviews rules  go into the detail. Honestly, a lot of customers will send photos for the pleasure of being featured. Try asking without a reward first. How to store UGC so you can actually use it The failure mode here is a great photo, three months later, with nobody sure whether permission was given. Keep a simple UGC log. A spreadsheet is fine: Customer name and phone number (or Shopify customer ID) Product and order number Date the photo was received File name of the original, saved in a shared folder Permissions granted: website, organic social, WhatsApp broadcasts, ads How they want to be credited Date permission was given, and a screenshot or export of the reply Date of any removal request Two practical habits. Save the original file, not a screenshot of the chat. And keep the edited version separate, so you can always show what the customer actually sent. Before publishing, check the background. Address labels on a parcel, a child's school logo, a family photo on the shelf, a reflection in a mirror. Crop or ask for another shot. Don't crop in a way that changes what the photo shows about the product, though. If the customer's planter photo shows a chipped rim, that's not your hero image. And keep these chats off personal phones. If a staff member leaves, the permission record leaves with them. A shared inbox keeps the conversation, the photo and the yes in one place.  Setting up a shared team inbox  explains how to keep ownership clear. A WhatsApp UGC workflow you can automate Here's how I'd set it up in WhatFlow, which runs on the official Meta WhatsApp Cloud API and plugs into Shopify Flow: Shopify Flow sends the ask.  A few days after an order is fulfilled, a Flow workflow sends a WhatsApp template asking for a photo, only to customers who've opted in. Pick the delay to match when people actually use the product;  timing after delivery  helps. The customer replies with a photo.  WhatFlow's incoming-message trigger in Shopify Flow can tag the customer and route the chat. The chat is assigned  in the team inbox to whoever handles UGC, using assignment and filters so it doesn't get lost among order questions. They send the permission ask  as a saved reply, and log the answer. Approved photos get used.  On product pages, in social posts, or back on WhatsApp: WhatFlow's Flow actions can send media messages, so a customer photo can go into a "here's how others style it" broadcast to opted-in customers.  This works the same for a two-person shop and a 30-person team. The inbox has no seat fees, every feature is on every plan including Free, and Meta's template charges are billed separately. More request wording is in  WhatsApp message templates for Shopify .  Where to use customer photos first Start with your best-selling product page. Add three or four customer photos that answer the questions shoppers ask most: size, colour in daylight, how it looks in use. That's usually a better use of a great photo than one more Instagram post. And when an  influencer campaign  comes around, you'll already know which real customers make your product look its best.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[reviews]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Write a customer service SOP for your Shopify store]]></title>
      <link>https://whatflow.io/blog/customer-service-playbook-shopify</link>
      <guid isPermaLink="true">https://whatflow.io/blog/customer-service-playbook-shopify</guid>
      <description><![CDATA[A practical customer service SOP for small Shopify teams: the sections to include, reply templates, escalation rules and who owns what.]]></description>
      <content:encoded><![CDATA[A customer service SOP for a Shopify store is a short written playbook that tells anyone answering customers what to do for each common request, what they're allowed to decide on their own, and who takes over when they can't. Write it around your real top ten questions, attach a reply template to each, set refund limits, and name one owner per area. You don't need a 60-page manual. You need something a new hire can read on day one and use on day two. Here's the structure I'd use, with sample procedures you can adapt. Why write a support playbook at all? Because right now the playbook is in your head. That works until you take a week off, hire someone, or get a Black Friday spike and three people start answering the same WhatsApp number in three different ways. The symptoms are familiar: one person offers a full refund, another says "store credit only", and the customer screenshots both. A written customer service SOP fixes three things: In WhatFlow Team Inbox,  Needs reply  shows open conversations where the customer wrote last.  Closing soon  helps staff prioritize the service window. Claim a thread before replying, check the Shopify order if the phone number matches, and leave an internal note when the next shift needs to pick it up. The  agent walkthrough  shows how that handoff works. Consistency.  Same question, same answer, whoever replies. Speed.  Nobody has to ask the founder "what do we do when…" for the fifth time. Delegation.  You can finally hand over support without worrying. The structure: 8 sections Here's the outline. Each section should fit on a page or two. Scope and hours Response targets Tone and etiquette Procedures for common requests Reply templates Decision limits (refunds, credits, freebies) Escalation Ownership and review Let's go through them. 1. Scope and hours Which channels does support cover (WhatsApp, email, Instagram DMs)? Which hours? Who's on which shift? Write down the published hours customers see, and make sure they match your website, WhatsApp business profile and away message. 2. Response targets Your targets for first reply and resolution, during open hours and outside them. Set them from your actual data, not a number you read somewhere. Our guide on  WhatsApp response times for small teams  explains how to pick targets you'll actually hit. 3. Tone and etiquette Half a page. How you greet, whether you sign your name, emoji rules, voice notes, when not to message. You can borrow from our  WhatsApp customer service etiquette  cheat sheet. Add a short "words we don't use" list. Mine would include "kindly", "as per policy" and "we apologise for any inconvenience". 4. Procedures for common requests This is the core. Pull a month of conversations and list the requests that come up most. For most Shopify stores the list looks something like: Where is my order? Can I change my address / size / colour? Can I cancel? Wrong or damaged item Returns and exchanges COD: refused delivery, confirmation, "can I pay online instead?" Product and sizing questions before purchase Discount code not working Each procedure follows the same format:  trigger, check, action, reply, edge cases . Here's a worked example. Procedure: customer wants to change shipping address Trigger:  customer asks to change the delivery address. Check:  confirm it's the account holder (the number matches the order, or they can confirm the order number and email). Check fulfilment status in Shopify. Action:  if unfulfilled, edit the shipping address on the order in Shopify admin. If a label's already bought or it's handed to the courier, follow the "already shipped" path. Reply:  use template ADDR-1 or ADDR-2. Edge cases:  change of country, marketplace orders, orders split across locations. Escalate those to the ops lead. Shopify's own help pages on  editing orders  explain what can and can't be changed after purchase. We've written the full process up in  handling address changes and order edits on WhatsApp . Procedure: damaged item Trigger:  customer reports damage. Check:  ask for photos of the item and outer packaging in one message. Check the order and the courier. Action:  under your limit, replace or refund straight away. Above it, escalate. Reply:  DMG-1 (ask for photos), DMG-2 (offer choice). Edge cases:  fragile items, repeat claims from the same customer, high-value orders. Write procedures for the boring stuff too. "Discount code not working" eats more time than people expect. 5. Reply templates For each procedure, one or two approved replies. Give each a short code so people can find them. Keep placeholders in square brackets. WISMO-1 (in transit):  Hi [name], I've checked order #[number]. It's with [courier] and the latest scan was [location] on [date]. Expected delivery is [date]. Here's the tracking link: [link]. I'll keep an eye on it. ADDR-1 (unfulfilled, changed):  Done, [name]. I've updated the delivery address on #[number] to: [address]. It hasn't shipped yet, so it'll go straight there. ADDR-2 (already shipped):  Thanks, [name]. Order #[number] has already left with [courier], so I can't edit it on our side. I've asked the courier to redirect it to [new address]. I'll update you as soon as they confirm, and if they can't, I'll tell you the next option. DMG-2 (offer choice):  Thanks for the photos, that's clearly damaged in transit and I'm sorry. I can send a replacement today, or refund [amount] to your original payment method. Which would you prefer? CANCEL-1 (unfulfilled):  No problem, [name]. I've cancelled order #[number]. Your refund of [amount] goes back to your original payment method; how long it takes to show depends on your bank. Put these in your inbox as saved replies, not in a document people copy-paste from. In WhatFlow, saved replies live inside the  team inbox , so templates and conversations are in the same place. And agents should always edit before sending: a template is a starting point, not the reply.   Note the difference between saved replies and WhatsApp templates. Saved replies are text your team inserts into a live conversation. WhatsApp message templates are Meta-approved messages your store uses to start conversations outside the 24-hour customer service window. Your playbook needs both, and our list of  WhatsApp message templates for Shopify  is a good starting point for the second kind. 6. Decision limits This is the section that lets people act without asking. Be specific: Decision Agent can approve Needs lead / owner Replacement for damaged item Up to [amount] Above [amount] Refund outside return window No Yes Goodwill store credit Up to [amount] Above [amount] Free shipping on exchange Yes  Cancel unfulfilled order Yes  Cancel after shipping No Yes Match this to what people can actually do in Shopify. Shopify's  staff permissions  let you limit who can edit orders or issue refunds, so your written limits and your admin settings agree. 7. Escalation Who takes what, and how fast. Keep it to a table: Situation Escalate to How fast Product safety (reaction, injury) Owner Within the hour Legal threats, chargebacks Owner Same day Abuse or harassment Shift lead Immediately Above-limit refund Ops lead Same day Suspected scam or impersonation Owner Same day Escalation in practice means reassigning the conversation (in WhatFlow, changing who it's assigned to in the inbox) plus a one-line handover summary, for example in the Shopify order note: "Customer reports rash after using serum, photos attached, wants refund. Haven't promised anything." Never escalate by forwarding screenshots to someone's personal WhatsApp. Our guides on  handling angry customers on WhatsApp  and on  scams that impersonate your store  cover those two escalation paths in more depth. 8. Ownership and review Name an owner for the playbook as a whole and for each area (returns, shipping, COD, product questions). Put a "last updated" date on every page. Then set a monthly 30-minute review: Any question that came up three or more times without a procedure gets one. Any template that agents kept rewriting gets rewritten. Any policy change (new return window, new courier) gets reflected everywhere: playbook, saved replies, website, away message. A few rules that belong on page one Some things are worth putting at the very top, in bold: Never ask for card numbers, CVVs or one-time passwords in chat.  The  WhatsApp Business Messaging Policy  tells businesses not to ask for full payment card numbers. Never promise a date you can't see in the system. Every conversation has one owner until it's closed. If you're not sure, say "let me check" and check. Where to keep it Somewhere everyone can open on their phone: a shared doc is fine. What matters more is that the procedures point to the tools. Reply templates go into the inbox as saved replies. Shopify permissions match the decision limits. Order-based automations, like a COD confirmation workflow in Shopify Flow, are documented in the playbook so people know what customers have already received.  Start smaller than you think Don't try to write all eight sections this weekend. Start with the five procedures that cover most of your messages, attach a reply to each, and write the decision-limit table. That alone will cut the "hey, what do we do about…" questions dramatically. Add the rest as your team grows, and if you're about to bring someone on, our guide to  hiring your first support person  pairs well with this one.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[operations]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Run a quick customer survey on WhatsApp (CSAT and NPS examples)]]></title>
      <link>https://whatflow.io/blog/customer-survey-whatsapp-csat-nps</link>
      <guid isPermaLink="true">https://whatflow.io/blog/customer-survey-whatsapp-csat-nps</guid>
      <description><![CDATA[How to run a short customer survey on WhatsApp: CSAT and NPS question examples, reply-button designs, timing, and what to do with the answers.]]></description>
      <content:encoded><![CDATA[To run a customer survey on WhatsApp, ask one question with tappable reply buttons, send it at the right moment (straight after a support chat, or a few days after delivery), and follow up on every answer with one short message. Use CSAT to rate a specific experience and NPS to measure overall loyalty. Keep it to one question, because a form in a chat feels like homework. WhatsApp surveys work because the customer is already in the conversation. One tap and they're done. Here's how to design them so the answers are actually useful. CSAT vs NPS: which one should you use? CSAT (customer satisfaction score)  measures how satisfied someone was with a specific thing: a support chat, a delivery, a product. You ask right after the experience. NPS (Net Promoter Score)  measures loyalty. It asks how likely someone is to recommend you on a 0 to 10 scale. According to  Bain & Company , who created it, 9s and 10s are promoters, 7s and 8s are passives, and 0 to 6 are detractors. Your score is the percentage of promoters minus the percentage of detractors.  CSAT NPS Measures One interaction Overall relationship When Right after the experience After they've used the product Scale Usually 1 to 3 or 1 to 5 0 to 10 Best for Spotting support or delivery problems Tracking loyalty over time Fits reply buttons? Yes (3 options) Not neatly For most small Shopify stores I'd start with CSAT on support chats and deliveries. It's actionable, and the scale fits WhatsApp buttons. Add NPS once you have enough customers that a quarterly number means something. How to run a customer survey on WhatsApp within the reply-button limit On the WhatsApp Business API, Meta's  reply buttons  allow up to three buttons per message, each with a title of up to 20 characters. That shapes your survey design: A three-point CSAT fits perfectly. A five-point scale doesn't fit in one message of buttons. A 0 to 10 NPS scale definitely doesn't. That's not a bad thing. Three options are easier to answer on a phone, and you'll get more replies. Our guide to  designing WhatsApp quick reply buttons  covers button wording in more detail. CSAT survey examples After a support conversation Send it inside the open chat, once the issue's resolved. Wait an hour or so; asking the second you close it can feel abrupt. Thanks for chatting with us today, Leila. How did we do?
[Great] [Okay] [Not good] Short, human, one tap. After delivery This one goes out after the order's delivered, typically outside any open chat, so it needs to be a Meta-approved template. Meta decides the template category; a feedback request will often be treated as marketing, so check what category yours lands in. Hi {{1}}, your order {{2}} was delivered on {{3}}. How was the delivery?
[All good] [Some issues] [Bad experience] About the product, a week or two later Hi {{1}}, it's been about two weeks with your {{2}}. How are you finding it?
[Love it] [It's okay] [Not for me] Product CSAT overlaps with review requests. Don't send both in the same week. Give the product time to be used before you ask. NPS survey examples Since 0 to 10 doesn't fit buttons, ask customers to type a number. It works fine in WhatsApp, where people are used to typing. Hi {{1}}, quick question from the team at Nura Home. On a scale of 0 to 10, how likely are you to recommend us to a friend? Just reply with a number. Then follow up based on the score: 9 or 10 (promoter): That really made our day, thank you! What's the main thing you'd tell a friend about us? 7 or 8 (passive): Thank you! What's one thing we could do to make it a 10? 0 to 6 (detractor): Thanks for being honest. I'm sorry we haven't got it right. What went wrong? I'd like to fix it if I can. If you'd rather keep NPS button-friendly, some stores use a simplified version: "Would you recommend us to a friend?" with [Definitely] [Maybe] [Probably not]. It isn't a true NPS score and you shouldn't call it one, but it's a decent loyalty pulse. The follow-up is where the value is A score on its own tells you little. The follow-up question tells you what to fix. Map every answer to a next step: Answer Next message Who handles it Great / Love it "Thank you! Would you mind leaving a quick review?" + link Automated Okay / It's okay "Thanks! What would have made it better?" Automated question, human reads answers Not good / Bad experience "I'm sorry. What happened?" Human, same day Every negative answer should land with a person on the same day. Someone who tapped "Bad experience" and then got silence is now angrier than before you asked. If that conversation gets heated, our guide to  handling angry customers on WhatsApp  has the scripts. Only send the review link to happy customers as a natural next step, not as a filter that hides unhappy people from your review app. Ask everyone the same way when you do run review requests. Our  review request message examples  show how to word them. Automating it with WhatFlow and Shopify Flow With WhatFlow's WhatsApp Business API app, you can build the delivery survey in Shopify Flow:  Trigger on fulfilment or delivery in Shopify Flow. Add a wait if you want a delay of a day or two. Send your approved survey template with WhatFlow's template action, mapping the customer's name and order number. Use WhatFlow's button or reply triggers to branch on the answer: thank the happy customers, and tag the order or customer so your team can find the "Bad experience" replies. Our guide to  sending WhatsApp templates from Shopify Flow  walks through the template step, and  routing incoming WhatsApp messages with Flow  covers branching on replies. The unhappy answers then sit in WhatFlow's  team inbox , where you can assign them to whoever handles complaints.  Rules that keep surveys from backfiring Opt-in first.  Business-initiated messages need opt-in under the  WhatsApp Business Messaging Policy . A survey is still a message. One survey per customer per period.  Don't send a support CSAT, a delivery CSAT and an NPS in the same fortnight. Mind the cost.  Template messages are charged per delivered message by Meta, and since October 2026 even utility templates sent inside an open chat are charged. Check Meta's  pricing page  and our  cost-per-outcome guide  before surveying your whole list. Don't bribe for scores.  A discount for answering is fine if it's for any answer. A discount for a good score isn't. Close the loop.  If a customer told you the packaging leaked and you fixed it, tell them. Writing survey questions that get honest answers A few habits that make the answers more useful: Ask about one thing.  "How was the delivery and the product?" is two questions. Customers answer whichever they care about and you can't tell which. Use plain labels.  "Great / Okay / Not good" beats "Very satisfied / Neutral / Dissatisfied" on a phone screen. Don't lead.  "How much did you love your order?" isn't a question, it's a hint. Say who's asking.  A first name or the store name at the top makes it feel like a person cares about the answer. Make it optional.  No "please reply to continue". If they ignore it, that's an answer too. What to do with the results Once a month, look at: The share of each answer for support CSAT and delivery CSAT. The words in the "what went wrong" and "what would make it a 10" replies. Group them into themes. Which themes repeat. Three people mentioning the same courier is a pattern. Then make one change and see whether the next month's answers shift. Our post on  turning customer feedback into product improvements  covers that loop.  Start with one question Pick the moment that matters most to your store (for many, it's delivery), write one three-button question, and decide who reads the unhappy answers. Run it for a month before adding anything else. You'll learn more from 50 honest one-tap answers than from a long form nobody finishes.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[retention]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Your first Black Friday as a new Shopify store: trust first]]></title>
      <link>https://whatflow.io/blog/first-black-friday-new-shopify-store</link>
      <guid isPermaLink="true">https://whatflow.io/blog/first-black-friday-new-shopify-store</guid>
      <description><![CDATA[New store, first Black Friday? Fix the trust gaps, get support ready and pick an offer you can afford before you chase traffic.]]></description>
      <content:encoded><![CDATA[Your first Black Friday as a new store isn't won with the deepest discount. People who've never heard of you need a reason to trust you before they need a reason to buy. With Black Friday on November 27, 2026, spend the next three weeks closing trust gaps, getting support ready and choosing an offer you can afford and fulfil on time. If you already have an opted-in Shopify audience, start a WhatFlow broadcast from selected customers or a Shopify segment in Admin. For a scheduled campaign built from CSV, Excel or existing conversations, use Team Inbox. Map the template fields, send a test, and make sure someone owns the replies. The  campaign walkthrough  shows both routes. What does a new store actually need before its first Black Friday? Here's the honest list, in the order I'd work through it. None of it is glamorous. All of it matters more than your banner design. Trust signal What "done" looks like Time it takes Shipping policy Real delivery times per region, cost, cut-off dates 1 to 2 hours Returns policy Plain-language window, who pays return shipping, how to start 1 hour Contact channel A WhatsApp button or chat that a human answers 30 minutes to set up About page Who runs the store, where you ship from, a real photo 1 to 2 hours Product pages Honest photos, sizes, materials, delivery estimate Ongoing Reviews Only genuine ones, even if you have five Ongoing Payment options The methods your market expects (cards, wallets, COD where common) Depends on market Shopify can generate policy templates for you, and  Shopify's guide to adding store policies  shows where they live. Use the templates as a start, then rewrite them so they match what you actually do. A returns policy that says 30 days when you really mean 14 is a dispute waiting to happen. Fix the trust gaps shoppers check first Say a shopper lands on your candle store from an Instagram post. Before they look at the price, they'll do a quick scan: does this look real? Who's behind it? What if it arrives broken? The places they look: The product page.  Delivery estimate near the Add to Cart button, clear photos, size or scent details. Our  product-page trust checklist  goes item by item. The footer.  Policies, contact, a physical location or at least a country. Reviews.  Five real reviews beat fifty suspicious ones. If you have none yet,  collecting your first product reviews  is a weekend's work if you ask your early customers personally. Badges.  Resist the urge to cover the page with "100% secure" icons. Read  what to show instead of badge clutter  before adding any. Make it easy to ask a question before buying A new store's biggest advantage over a big brand is that a real person answers. Show that off. Put a WhatsApp chat button on your product pages and cart. WhatFlow's theme-matched WhatsApp buttons are free forever and fit your store's design (setup is covered in  adding a WhatsApp chat button to Shopify ). Then actually answer, quickly and like a human. Imagine someone messages at 9pm on Black Friday: Customer: Hi, if I order the gift set today will it reach Lahore before the 5th? You: Hi! Yes, if you order today we ship Monday and delivery to Lahore usually takes 3 to 4 working days, so you should have it by Thursday. I'll send you the tracking link as soon as it leaves. That reply does more for trust than any badge. It's specific, it's honest about "usually", and it promises a next step. If you can't answer late at night, say so with an away message that gives the real reply time. Pick a realistic Black Friday offer This is where new stores hurt themselves. They see 40% off everywhere and copy it without doing the maths. Here's a hypothetical worked example. Say you sell a $40 candle set: Product cost: $14 Packaging and shipping you cover: $7 Payment fees: roughly $1.50 Ad cost per order during Black Friday week: say $12 At full price you keep about $5.50. At 25% off ($30), you're losing about $4.50 on every order you paid ads for. That isn't a launch, it's a leak. Offers that usually work better for a new store: A bundle.  Three candles for the price of two and a half. Higher order value, cleaner margin. A gift with purchase.  A sample or matchbox that costs you little and feels generous. Free shipping over a threshold.  Easy to understand, and it nudges basket size. A modest sitewide discount (10 to 15%)  for your email and WhatsApp list only. Whatever you choose, write the exact terms down once: what's included, start and end time, whether it stacks with other codes. Your product pages, emails and support replies should all say the same thing. Get support ready before traffic arrives You might be a team of one. That's fine, but plan for it: Write saved replies for your top questions: delivery times, returns, sizes, whether the code works on sale items. Block time on Black Friday and Cyber Monday to sit in the inbox. Shopping on your own sale is not a strategy. Decide what you'll do if something sells out. Pause the product, don't take orders you can't ship. Keep a short list of what can go wrong (code not applying, payment failing, courier delays) and the first reply for each. The fuller version of this, for teams with a few people, is our guide to  preparing support for Black Friday . Should a new store spend on ads for Black Friday? My view: spend carefully, and spend on warm audiences first. Every big brand is bidding for the same attention that week. A new store with a small budget gets more from the people who already know it: your Instagram followers, past visitors, anyone who chatted with you or joined your list. That's also why I'd start collecting WhatsApp and email sign-ups today, with a simple promise: "Get early access to our first Black Friday sale." Remember that WhatsApp promotions need the customer's opt-in and a Meta-approved template, and approval isn't instant. If you want to run Black Friday on WhatsApp, read  the Black Friday WhatsApp playbook  and submit templates this week. Your first Black Friday countdown This week (by Nov 11):  finish policies, about page and delivery estimates. Decide the offer and write the terms. Nov 12 to 18:  add the WhatsApp button, set up saved replies, start collecting early-access sign-ups. Submit any WhatsApp templates if you haven't. Nov 19 to 23:  test checkout end to end, including discount codes and every payment method. Ask a friend to buy something. Nov 24 to 26:  send early access to your list. Nov 27 to 30:  be in the inbox. Ship fast. Fix problems in public, politely. Dec 1 onwards:  thank every customer, ship updates, and ask for reviews once orders have arrived. When something goes wrong on the day Something will. A discount code that doesn't apply, a product that oversells, a payment method that errors. New stores lose trust not because a problem happens, but because nobody says anything. Have these replies ready: Thanks for flagging this! You're right, the code isn't applying to the gift sets. I've fixed it now. If you'd already paid full price, reply with your order number and I'll refund the difference today. I'm sorry, we oversold the blue tote and your order is one we can't fill this week. You can wait for the next batch (ships Dec 10) or I can refund you in full right now. Which would you prefer? Fix the problem, tell the customer what you did, and offer a choice. That turns a mistake into the reason someone trusts you.  After the sale: turn first buyers into second orders The real prize from a first Black Friday is a few hundred people who now know your store. Treat them well: ship on time, send tracking without being asked, and follow up after delivery. If you're still setting up the basics, our  first 30 days on Shopify guide  covers the foundations that make next year's sale easier.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[shopify]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[How to handle an angry customer on WhatsApp (with reply examples)]]></title>
      <link>https://whatflow.io/blog/handle-angry-customer-whatsapp</link>
      <guid isPermaLink="true">https://whatflow.io/blog/handle-angry-customer-whatsapp</guid>
      <description><![CDATA[A calm, practical way to handle angry customers on WhatsApp: what to send first, scripts for common blow-ups, and when to switch to a call.]]></description>
      <content:encoded><![CDATA[To handle an angry customer on WhatsApp, reply fast with a short message that names their exact problem, tell them what you're checking and when you'll be back, then come back with a concrete fix and a choice. Don't argue facts in the first message. Don't paste a policy. Offer a call when the thread gets long or tone keeps getting misread. That's the whole method. The rest of this article is the detail: the five steps, scripts you can adapt for the blow-ups every Shopify store sees, and the few situations where the right move is to stop typing. Why angry messages feel worse on WhatsApp WhatsApp is personal. Your customer is reading your reply in the same app as their family group and their best friend's voice notes. That's exactly why it works so well for support, and it's also why a cold, ticket-style answer lands badly. "Your request has been received" reads like a wall when it sits under a message from mum. There's a second thing. On WhatsApp the customer can see the blue ticks. If they know you've read the message and nothing comes back for two hours, the silence becomes part of the complaint. I'd rather send a 12-word holding reply than leave a read receipt hanging. The five-step method for handling angry customers 1. Acknowledge the specific problem, fast The first reply has one job: prove a human read it. Name the order, the item, the thing that went wrong. Hi Priya, I've just read this. A damaged lid on the 500ml jar is not okay, and I'm sorry it arrived like that. I'm pulling up order #4821 now and I'll message you back within 30 minutes with a fix. Notice what's not there. No "we apologise for any inconvenience". No defence of the courier. No questions yet, unless you truly can't find the order. 2. Get the facts in one message, not five If you need photos, an order number or a delivery address, ask for all of it at once. Drip-feeding questions to an angry person is how a two-message issue becomes a twenty-message one. To sort this quickly, could you send me: a photo of the lid and the box it came in, and whether the product inside leaked? That's all I need. 3. Check before you answer Open the Shopify order. Check the fulfilment status, the tracking, the notes, any previous messages. A lot of angry threads get worse because the first "real" answer contradicts what the customer already knows ("It says delivered!" "I'm standing at my door and there's nothing here."). This is where a shared inbox helps. In the  WhatFlow team inbox , the conversation sits next to the customer's order context, so whoever picks it up isn't guessing. 4. Offer a fix, ideally as a choice People calm down when they get control back. Give two or three real options and let them pick. Thanks for the photos. That's clearly transit damage. I can either send a replacement jar today (it'd arrive Thursday), or refund the ₹649 to your original payment method. Which would you prefer? On the WhatsApp Business API you can send this as  reply buttons  ("Send replacement", "Refund me"). Meta allows up to three buttons per message, with short titles. Buttons stop the "what do you mean by option 2" back-and-forth. 5. Close the loop, then go quiet When it's done, confirm what happens next and stop. Don't upsell. Don't ask for a review in the same breath. Done. Your replacement is booked on order #4835 and the tracking link will come through on WhatsApp once it ships. Thanks for flagging it, Priya, and sorry again for the hassle. Reply scripts for the most common blow-ups These are starting points. Rewrite them in your own voice and save the good ones as canned replies (in WhatFlow they sit in the inbox, so anyone on the team can insert one and edit it before sending). If yours sound stiff, our guide to  saved replies that don't sound robotic  has a rewrite method. "Where is my order? It's been two weeks!" Hi Omar, I understand, two weeks is a long time to wait. I've checked order #1193: it left our warehouse on the 3rd and the courier last scanned it in Sharjah on the 9th. That's longer than it should be, so I've opened a trace with them now. I'll update you by 5pm today, even if the news is "still waiting". The promise of an update, even a non-update, is the part that does the work. For the full delay playbook, see  handling shipping delays on WhatsApp . "You sent the wrong item" Ugh, I'm sorry, that's our mistake, not yours. You ordered the navy one in M and we sent black. I'll send the navy M today. You can keep the black one or send it back, whichever is easier for you. No return label needed if you keep it. Own it plainly when it's your fault. "Our mistake" is three words that end a lot of arguments. "This product doesn't work / is rubbish" I'm sorry it's not doing what you expected. Can you tell me a bit about how you're using it, and send a short video if it's easy? Sometimes it's a setup issue we can fix in two minutes, and if it's a faulty unit I'll replace it. Don't assume user error. Do leave room for it. "I want a refund NOW" (outside your policy) I hear you. Our return window is 14 days from delivery, and this order was delivered 26 days ago, so I can't do a standard refund. What I can do is offer store credit for the full amount, or a 30% partial refund if you'd like to keep it. Would either of those work? State the policy once. Offer what you can. If they refuse both, escalate to the owner instead of repeating yourself. The  returns and exchanges guide  covers the standard flows.  "I'm going to leave a 1-star review" That's your call, and I'd understand it. Before you do, I'd really like the chance to fix this. Here's what I can do today: [option]. If that's still not good enough, tell me what would make it right. Never trade a refund for deleting a review. Fix the problem because it's a problem. If the review goes up anyway, our post on  responding to negative reviews  covers what to write publicly. COD customer who refuses to pay on delivery Hi, the courier says the parcel was returned at the door today. No problem at all, I just want to check: was something wrong with the order, or was the timing bad? If it's timing, I can arrange a new delivery slot. Curious, not accusing. Many COD refusals are someone who wasn't home or changed their mind about the size. When to switch from WhatsApp to a call Text is great for facts and terrible for feelings. Offer a call when: the customer has sent three or more long messages in a row and you're still not sure what they want the fix involves several decisions (exchange plus partial refund plus new address) you've been misread twice the customer is clearly upset about something bigger than the order (a gift for a funeral, a wedding outfit that won't arrive) Ask, don't just ring: I think this would be quicker to sort on a call so I can understand exactly what happened. Are you free for 5 minutes now, or would later today be better? After the call, summarise in WhatsApp. It's your written record and it stops "that's not what you said" later. Thanks for the chat, Leila. As agreed: we'll collect the sofa cushion on Saturday between 10 and 2, and send the replacement the same day. I'll message you Friday evening to confirm the slot. When to escalate inside your team On a small team, decide this before it happens: Situation Who takes it Refund or credit above your agent's limit Owner or ops lead Threats, legal language, chargeback mentions Owner Product safety (allergic reaction, injury, burns) Owner, same hour Third complaint from the same customer this month Whoever owns that customer, plus a note Escalation inside a shared inbox should be a reassignment plus a one-line summary (the Shopify order note works), not a forwarded screenshot. If you're setting this up, our guide to  running a shared team inbox  covers ownership. What not to do Don't match their energy.  Short and calm beats long and defensive. Don't send voice notes to an angry customer  unless they sent one first. They can't skim it, and tone carries more risk. Don't ask for card details or OTPs in chat , even to process a refund. The  WhatsApp Business Messaging Policy  says not to ask people to share full payment card numbers, and it's a habit that trains customers to fall for scammers. Don't go silent after a promise.  If you said "by 5pm", send something at 4:55 even if it's "still chasing". Don't copy the customer's caps lock or emoji.  One "🙏" from you is fine. A row of them isn't. When it's abuse, not anger Anger about a real problem deserves patience. Threats, slurs and harassment don't. Send one clear message, then stop: I want to help sort out your order, but I won't continue the conversation with this language. If you'd like to continue, I'm happy to help once we can keep it respectful. If it continues, WhatsApp lets you  block and report the contact  from the chat; reporting sends WhatsApp the last few messages from that sender. Before blocking, make sure any open order question is settled in writing, and add a note to the customer record so the next person on your team knows what happened.  The habit that prevents most angry messages Most angry WhatsApp messages are the second message. The first one was polite and got ignored, or got a vague answer. If you fix your first-reply speed and your "I'll update you by X" discipline, you'll handle far fewer furious customers in the first place. That's the real job. Our guide on  WhatsApp response times for small teams  is the natural next read.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[operations]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[How to sell high-ticket products online over WhatsApp]]></title>
      <link>https://whatflow.io/blog/high-ticket-products-whatsapp-sales</link>
      <guid isPermaLink="true">https://whatflow.io/blog/high-ticket-products-whatsapp-sales</guid>
      <description><![CDATA[Expensive products sell on conversations, not clicks. A practical WhatsApp playbook for consultations, photos and video, financing questions and follow-up.]]></description>
      <content:encoded><![CDATA[To sell high-ticket products online, replace the "add to cart and hope" funnel with a short consultation over WhatsApp. Find out what the buyer needs, show them real photos or a quick video of the exact item, answer payment and delivery questions with facts, then send a Shopify checkout link and follow up on a planned schedule. Big purchases close on trust, and trust is built in conversation. When someone is about to spend a month's rent on your product, they want to talk to a human first. That's not a conversion problem. It's an opportunity most stores fumble because they answer like a help desk instead of a good salesperson. Why do you need a conversation to sell high-ticket products online? Because the risk is bigger. A customer buying a $20 T-shirt shrugs off a bad fit. A customer buying a $1,800 espresso machine or a hand-knotted rug worries about everything: is it genuine, will it suit my space, what if it breaks, what if it arrives damaged, can I pay over time? A product page can't answer the specific version of those worries for each buyer. A WhatsApp conversation can. And because WhatsApp is where many of your customers already talk to friends and family, a reply there feels personal in a way email rarely does. The trade-off: consultative selling takes time. One person might handle 15 to 20 serious conversations a day, not 150. That's fine. The order values pay for it. For a shopper asking which size or variant fits, use WhatFlow's product picker to share the relevant catalog item from the conversation. With catalog cart follow-up configured, WhatFlow can send back a Shopify checkout link. Check Shopify before treating the WhatsApp cart as a paid order. The  catalog-to-checkout walkthrough  shows the test sequence. The high-ticket WhatsApp playbook, step by step Respond fast and personally.  Name, role, and a real answer in the first reply. Run a mini consultation.  Three to five questions about use, space, timeline and budget. Show, don't describe.  Real photos and short videos of the actual item. Recommend and explain.  One primary option, one alternative, with reasons. Answer the money questions plainly.  Price, payment options, delivery cost, warranty. Close with a link.  A product link or a draft-order checkout link. Follow up on a schedule.  Planned, useful, and stopping when the customer says stop. Let's go through the ones that trip people up. How do you run a consultation in chat? Think of it as the first ten minutes in a showroom. You're trying to learn enough to recommend confidently. Ask in batches of one or two questions so the customer isn't filling out a form. Say you sell premium watches and a customer sends a photo of a dive watch with "price?": Hi Omar, Sana here from Second Hand Time. That one is 285,000 PKR, fully serviced with a 12-month warranty from us. Before I send more details, is this for daily wear or more of a collection piece? It helps me suggest the right strap and tell you about water resistance. You answered the question first (always), then asked one thing that sharpens the recommendation. Next message, you might ask about wrist size or whether they'd consider a slightly older reference at a lower price. Questions worth asking for most big-ticket categories: What will you use it for, and how often? Where will it go or live? (Room size, wrist size, kitchen counter depth.) Do you need it by a specific date? Are you comparing it with anything else? (Tells you exactly what objection to address.) Would you like to see it on video before deciding? Photos and video: the trust shortcut Studio photos are great for the product page. In chat, customers want proof of the actual thing. For a used or one-of-a-kind item, send photos of that exact piece, including the flaws. For new stock, a 20-second video in natural light shows texture and scale better than any spec sheet. Here's a quick video of the walnut finish next to a white wall in daylight, so you can see the real tone. The grain on yours will differ slightly since it's solid wood. WhatFlow's inbox lets you send images and video in the conversation, and the same media actions are available in Shopify Flow if you want to send, say, a care video automatically after delivery. If customers ask for a live look, a quick video call from a staff phone works, but log the outcome back in the shared inbox so the next person knows what was promised. How should you handle financing and payment questions? Customers buying big will ask "can I pay in installments?" and "can I pay half now?". The worst answer is a confident guess. Be precise about what you actually offer: Installments.  Shopify offers  Shop Pay Installments  to eligible stores in a limited set of countries (as of November 2026, the Help Center lists the US, Canada and the UK, with Australia in early access), and only within listed order value ranges. If your store has it, say it's offered at checkout and that approval is decided by the provider. If you don't, say so. Cash on delivery.  For high-ticket items, many stores limit COD or ask for confirmation first. If you allow it, WhatFlow can send a COD confirmation template with reply buttons so the customer confirms before you dispatch an expensive parcel. Custom quotes.  For a bundle or a negotiated price, create a Shopify draft order and share its checkout link. Shopify's guide to  sharing draft-order checkout links  walks through it. A saved reply for the installments question saves your team from improvising: Good question. At checkout you'll see the payment options available for your order, including installments if your order qualifies. Approval is decided by the payment provider, not by us, so I can't promise it, but you'll see it before you pay. Payment happens on Shopify checkout, not inside WhatsApp. Keep it that way. It's where your fraud checks and receipts live. Trust signals that matter more than badges High-ticket buyers check that you're a real business. Make it easy for them: Send your physical address, return policy and warranty terms in plain words. Point to reviews on that specific product, especially ones with photos. Keep your WhatsApp business profile complete and consistent: logo, description, website, hours. Warn customers about impersonators. Scammers love expensive categories. Our guide on  protecting customers from WhatsApp scams that impersonate your store  has a message you can pin. Skip badge clutter on the product page;  trust badges rarely do what you hope . What does a good follow-up cadence look like? Big purchases take days or weeks. Your follow-up should be planned, not random. Here's a starting point: When What you send Why it works Same day, end of chat A recap: chosen option, price, delivery estimate, link The customer can forward it to a partner who's paying half 2 to 3 days later One new piece of information: a video, a comparison, an answer to their worry Gives them a reason to reopen the chat 7 to 10 days later A short check-in, plus an honest stock or price update if there is one Catches people who meant to come back After that Stop, unless they reply Respect beats persistence The recap message is the one most teams skip, and it's often the one that closes the sale: Quick summary so you have it in one place: Ravello 3-seater in Oat linen, 1,290 USD including delivery to Dubai Marina, about 3 weeks lead time, 2-year frame warranty. Checkout link: [link]. Happy to answer anything your partner wants to ask. The platform rule: your free-form replies are only allowed within 24 hours of the customer's last message. After that, follow-ups need an approved template, and promotional ones need the customer's opt-in under the  WhatsApp Business Messaging Policy . Our explainer on  the 24-hour customer service window  shows how to plan around it. Practically, that means asking during the chat: "Would you like me to message you here if the price changes or new stock arrives?" Who owns the deal? High-ticket sales fall apart when three people answer the same customer differently. Assign each serious lead to one person in your inbox and keep them on it until the order ships. WhatFlow's  shared team inbox  has assignment and filters, and no seat fees, so you can add a specialist for one product line without your bill growing. For more on keeping ownership clear, read  setting up a shared team inbox .  Pitfalls I see most often Discounting too early.  If the hesitation is about fit or trust, money off doesn't help. Answer the worry first. Disappearing after "I'll think about it".  Send the recap. Always. Promising delivery dates you don't control.  Give ranges and explain what affects them. Too many options.  Two is plenty. Five is a catalogue, and they already have your website.  Where to go from here Write three saved replies this week: your consultation opener, the installments answer and the recap. Then pick your top three expensive products and record a 20-second daylight video of each. That alone will change how your WhatsApp conversations feel. If you sell furniture specifically, the delivery side gets its own playbook in  WhatsApp for furniture and home stores , and the general habits are in  selling on WhatsApp .]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[conversion]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Hiring your first customer support person for a Shopify store]]></title>
      <link>https://whatflow.io/blog/hire-first-customer-support-shopify</link>
      <guid isPermaLink="true">https://whatflow.io/blog/hire-first-customer-support-shopify</guid>
      <description><![CDATA[When to hire your first support person, what to look for, a paid trial task that reveals real skill, and a two-week onboarding plan.]]></description>
      <content:encoded><![CDATA[Hire your first customer support person when support is regularly pushing out work only you can do, when replies keep missing your own targets, or when messages pile up at hours nobody covers. Look for clear writing, calm judgement and attention to detail over call-centre experience. Test with a paid trial using real customer messages, then onboard with a written playbook and limited Shopify permissions. That's the summary. Hiring customer support for an ecommerce store is one of the first real delegation decisions most founders make, and the mistakes are predictable. Here's how I'd approach it. When is it time to hire customer support? Don't hire on vibes. For three or four normal weeks, track: How many hours a week you spend in support conversations. How often you miss your own first-reply target. When messages arrive, by hour and day. What you're not doing because of support (product sourcing, ads, content, supplier calls). A few signals tend to mean it's time: You're answering WhatsApp at midnight because that's when the backlog finally clears. The same ten questions take up most of your day. A sale or launch is coming and you already feel behind. You've stopped doing the growth work that pays for everything else. If it's mostly the same ten questions, fix that first: better product pages, a tracking link in your  order and shipping updates , and saved replies. Sometimes that buys you three more months. If the volume is genuine, hire. In WhatFlow Team Inbox,  Needs reply  shows open conversations where the customer wrote last.  Closing soon  helps staff prioritize the service window. Claim a thread before replying, check the Shopify order if the phone number matches, and leave an internal note when the next shift needs to pick it up. The  agent walkthrough  shows how that handoff works. Full-time, part-time or freelance? For a first hire, part-time is often the sensible start. Look at when your messages arrive and schedule the shift over the busiest block. Many stores see an evening rush, and someone covering 4pm to 10pm can matter more than a 9-to-5 hire. Option Good when Watch out for Part-time Volume clusters at certain hours Clear handover at shift end Full-time Steady volume across the day Enough work beyond chats (see below) Freelancer / agency Short seasonal spike Brand knowledge, data access Family member or friend Very early stage Hard to give honest feedback Give the role more than "answer messages" if it's full-time. Writing product FAQs, checking reviews, chasing couriers and tagging customer feedback are natural fits, and they make the job more interesting. What profile should you look for? Support experience is nice. It's not the main thing. For a WhatsApp-heavy Shopify store, I'd rank: Clear, warm writing  in your customers' languages. Most of this job is short messages on a phone. Judgement.  Knowing when to just fix it, when to ask, and when to escalate. Attention to detail.  Wrong order number, wrong address, wrong size: small slips cost real money. Calm under pressure.  Angry messages shouldn't rattle them, or make them defensive. Product curiosity.  Someone who'll actually try the serum or read the size chart. Comfort with tools.  Shopify admin, an inbox, a spreadsheet. If your customers write in Arabic and English, or Hindi and English, or Portuguese, hire for that. Bilingual support is a real advantage, and our post on  multilingual customer messaging  covers how to keep details accurate across languages. Write the job post around real work Skip the generic "excellent communication skills" list. Describe the actual job: We're a small skincare brand selling across the UAE and Saudi Arabia. You'll answer customers on WhatsApp and email, mostly about orders, delivery and which product suits their skin. You'll use our Shopify admin and our team inbox, follow our written playbook, and make decisions within clear limits (for example, replacing a damaged item without asking). Shift: 2pm to 8pm, Sunday to Thursday. Arabic and English required. Real details attract people who want that job, and put off people who don't. The trial task (paid) Interviews tell you how someone talks about support. A trial task shows you how they do it. Pay for it; a couple of hours of real work deserves real money. How to set it up Give the candidate: A one-page summary of your policies (delivery times, returns window, COD rules). Five to eight real customer messages, anonymised. One or two of your existing replies as a tone reference. Ask them to write the reply they'd send for each, and to flag any they'd escalate and why. Messages to include Mix easy and tricky: Hi, where's my order? I ordered last Tuesday. I received the wrong shade. I ordered Sand and got Honey. I need it for a wedding on Saturday!! Can I change the address? I just realised I put my old flat. Your product gave me a rash. I want my money back and I'm reporting you. Do you have this in 50ml? Also can I pay cash on delivery in Riyadh? Hi I got a message saying I won a free gift card from your store, I just need to send the code? That last one is a scam-awareness check. A good candidate says it isn't from you and tells the customer not to share any code. If you want to brief them on this properly later, our guide to  WhatsApp scams that impersonate your store  covers it. How to score it Criterion What good looks like Accuracy Uses your policies correctly, doesn't invent dates Tone Warm, specific, not robotic or overly casual Judgement Escalates the rash complaint; fixes the wrong shade fast Clarity Short messages, clear next step Safety Never asks for card details or codes Then do a 20-minute conversation about their answers. Why they wrote what they wrote tells you more than the answers themselves. Set up access before day one Two things to sort before they start. Shopify staff account.  Create a staff account with only the permissions they need. Shopify's  permissions system  lets you control access by role. To change a shipping address on an order, Shopify notes staff need permissions such as Edit orders or Manage order information ( details here ). Hold back refunds above a set limit for the first month or two. Never share your owner login. Inbox access.  They need the shared WhatsApp inbox, not your phone. Moving support off a personal phone is the moment many stores move to the WhatsApp Business API; our comparison of a  shared WhatsApp inbox vs personal staff phones  explains why. WhatFlow's WhatsApp Business API app runs on Meta's official Cloud API, and its team inbox has no seat fees at any team size, so adding your first hire (and the second, and the weekend cover) doesn't add an inbox-seat cost. A two-week onboarding plan Week 1: learn, then shadow Day 1:  Read the  customer service playbook . Use the product. Place a test order. Day 2:  Read a month of past conversations. Note the top questions. Days 3 to 5:  Draft replies; you review before anything is sent. Talk through every edit. Week 2: own a slice Days 6 to 7:  They own one category (say, order status questions) while you watch. Days 8 to 10:  They own the inbox during their shift, with you available for escalations. End of week 2:  30-minute review. What was hard? Which saved replies need rewriting? What's missing from the playbook? Assignment helps here. In WhatFlow's  team inbox  you can assign conversations to them and filter to see what's theirs, so it's obvious what they own and what's still with you.  Mistakes I see founders make Hiring before writing anything down.  Your hire can only be as consistent as your documentation. Write the playbook first, even a rough one. Handing over everything at once.  Start with one category and widen it. No decision limits.  If they have to ask you about every £10 replacement, you haven't delegated anything. Overriding them in front of customers.  If you disagree with a reply, talk about it privately and update the playbook. Measuring only speed.  Look at accuracy and how often issues come back, too. Our  response time guide  covers what to review weekly.  The real goal Your first support hire isn't there to make messages disappear. They're there to make customers feel looked after while you get your time back for the work only you can do. Get the playbook, the access and the first two weeks right, and that's exactly what happens.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[operations]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Holiday shipping cut-off messages: what to send and when]]></title>
      <link>https://whatflow.io/blog/holiday-shipping-cutoff-messages</link>
      <guid isPermaLink="true">https://whatflow.io/blog/holiday-shipping-cutoff-messages</guid>
      <description><![CDATA[Work out your holiday shipping cutoff from carrier dates, then say it clearly on your site, at checkout, on WhatsApp and by email. Examples included.]]></description>
      <content:encoded><![CDATA[Your holiday shipping cutoff is the last day a customer can order and still receive the parcel before the holiday. Work it out backwards from your carrier's published date and your own packing time, then say it in four places: a site banner, the product page, the cart, and one WhatsApp or email reminder to opted-in customers a few days before the date. How do you work out your holiday shipping cutoff? The formula is boring, which is good: Your cutoff = carrier's last recommended ship date − your processing time − a buffer. Take the carrier date from the carrier. Every major carrier (national postal services, the big express couriers, regional couriers) publishes holiday shipping dates each season, and they change every year. Don't copy last year's numbers or someone else's blog post. Go to your carrier's site, find the date for the exact service you use, and screenshot it for your team. Here's a hypothetical example. Say your courier recommends shipping standard ground by December 17 for delivery by December 24 in your main region: You need 2 working days to pack orders during peak. You add 1 day of buffer, because peak season always surprises you. Your standard shipping cutoff is  December 14 . Then repeat for every method you offer. A table like this, kept in a shared doc, saves a lot of confused replies: Shipping method Carrier last-ship date (from carrier) Your processing Buffer Your customer cutoff Standard, domestic Your carrier's date 2 days 1 day Calculate Express, domestic Your carrier's date 1 day 1 day Calculate International Your carrier's date per region 2 days 2 days Calculate Local courier / same city Your courier's date 1 day 1 day Calculate Local pickup Your own last pickup day n/a n/a Your choice Gift cards No shipping n/a n/a Any time If you ship to several countries, keep it simple for customers: one cutoff per region, not per carrier. Where should holiday cut-off messages appear? Most "will it arrive in time?" chats happen because the cutoff was only mentioned in one place. Put it everywhere a customer makes a decision. Place When it goes up Example wording Site-wide banner 2 to 3 weeks before "Order by Dec 14 for delivery before Dec 24 (standard, US)." Product page, near Add to Cart Same time "Want it by Christmas? Order by Dec 14, or Dec 18 with express." Cart Same time "Your order qualifies for pre-holiday delivery if placed by Dec 14." Order confirmation Same time "Estimated delivery: Dec 19 to 22." WhatsApp reminder 3 to 5 days before cutoff See below Email reminder Same day as WhatsApp, or the day after Same message, longer format FAQ / shipping page Same time Full table by region and method The product page line is the one I'd never skip. That's where the customer is deciding. Example holiday cut-off messages you can adapt WhatsApp reminder to opted-in customers (marketing template): Hi Priya, a quick heads-up from Juniper Tea Co. To get your order before Dec 24, please order by  Sunday, Dec 14  (standard shipping) or  Thursday, Dec 18  (express). Shop gifts: junipertea.co/gifts Reply STOP to opt out. Last-day nudge (send only to people who engaged with the first one, or skip it): Last day for standard holiday delivery: order by midnight tonight and it ships tomorrow. After that, express is still available until Thursday. After the cutoff, on the banner: Standard delivery may now arrive after Dec 24. Need it sooner? Choose express (order by Dec 18), pick up in store until Dec 23, or send a digital gift card instantly. Order update for someone who ordered after the cutoff (utility template): Hi Marco, thanks for your order #4821. Because it was placed after our holiday cutoff, delivery is expected between Dec 27 and 30. If you need it sooner, reply here and we'll see what we can do. Notice the pattern: a date, a method, an alternative. No "while supplies last" pressure, no exclamation marks. When to send the WhatsApp cut-off reminder Once, three to five days before your main cutoff. That gives people time to decide without feeling chased. WhatsApp business-initiated messages need the customer's opt-in and a Meta-approved template, so submit the template at least a week ahead in case it's rejected. A general "order before Sunday" reminder is promotional, so expect Meta to treat it as marketing. If you're unsure which category your message falls under, our explainer on  marketing vs utility templates  helps. If you're also sending email and SMS, coordinate them so a customer doesn't get the same reminder three times in an hour.  Coordinating email, SMS and WhatsApp  covers how to split the jobs. If you're in the middle of Black Friday planning right now, the cut-off reminder is the natural follow-up to the sale. It's the last step in  our Black Friday WhatsApp playbook . What to say after the cutoff passes Change the banner the same day. Then shift the message from "order by" to "here's what still works": Express shipping , with its own later cutoff. Local pickup , if you have a shop or warehouse. Digital gift cards , which arrive instantly and solve the last-minute gift problem. Honest delivery estimates  for standard shipping, even if they fall after the holiday. Some customers will buy anyway, knowing it'll be late. That's fine. What's not fine is a customer who didn't know. Answer "will it arrive in time?" on WhatsApp You'll get this question dozens of times in December. Write a saved reply that asks for what you need and doesn't overpromise: Hi! Happy to check. Where are we shipping to, and which shipping option did you pick (or are you thinking of)? I'll tell you the realistic delivery window.  Then reply with a window, not a promise. "Usually 3 to 4 working days, so most likely by Friday" is honest. "Definitely by Friday" is a bet on a carrier you don't control. When parcels do run late, our guide to  handling shipping delays on WhatsApp  has the follow-up messages, and  writing saved replies that don't sound robotic  helps keep the tone human when you're answering the same thing for the fortieth time. Automate the post-cutoff order message with Shopify Flow If you use WhatFlow, you can automate the order update for late orders with Shopify Flow: When a customer replies about an order, a WhatFlow agent can see matching Shopify orders, fulfillment status and available tracking links beside the conversation. Confirm which order the customer means, then use a private note and assignment to give the follow-up an owner. Any refund or order edit still happens in Shopify. See the  support queue walkthrough .  Trigger:  Order created. Condition:  the order was created after your cutoff date and uses standard shipping. Action:  WhatFlow's send-template action, using an approved utility template like the "order #4821" example above, mapped to the customer's name, order number and expected window. Test it on a dummy order first, and turn it off on December 26. You can also use Flow's Scheduled time trigger to remind your team to swap banners on the cutoff date. International customers and different holidays If you sell across borders, "before the holidays" means different dates to different people. Christmas, Hanukkah, New Year and Lunar New Year all pull orders into different windows, and international shipping times stretch in peak season. Keep separate cut-offs by region, name the holiday or date explicitly in each message, and never send a cut-off reminder to customers it doesn't apply to. A Christmas cut-off sent to a customer in a country where the big gifting moment is in February just looks careless. A quick holiday cut-off checklist Carrier dates screenshotted from carrier sites, for every service you offer. Your cut-off calculated per method and region, with a buffer. Banner, product page, cart and FAQ updated with the same dates. WhatsApp reminder template approved, scheduled once, three to five days before. Saved reply for "will it arrive in time?" written and shared with the team. Post-cut-off banner and gift card or pickup alternatives ready to go. A calendar reminder to change everything back after the holiday.  The short version Get the date from your carrier. Subtract your packing time and a buffer. Say it on the product page, in the cart and once on WhatsApp. When the date passes, tell people what still works.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[operations]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Can you offer incentives for reviews? The rules and safer options]]></title>
      <link>https://whatflow.io/blog/incentivized-reviews-rules</link>
      <guid isPermaLink="true">https://whatflow.io/blog/incentivized-reviews-rules</guid>
      <description><![CDATA[What the FTC's review rule, Google and EU law actually say about incentivized reviews, plus wording that stays on the right side of them.]]></description>
      <content:encoded><![CDATA[Yes, you can offer incentivized reviews in the US, as long as the reward doesn't depend on what the review says. The FTC's review rule bans incentives conditioned, openly or by hint, on sentiment, and the FTC expects the incentive to be disclosed. Google is stricter: incentivized reviews aren't allowed on Google Maps at all. In the EU, you must explain how you verify reviews. That's the short version. The long version matters because the difference between a legal incentive and an illegal one is often a single word in your review request. "Leave an honest review and get 10% off" can be fine. "Tell us why you love it and get 10% off" isn't. Let's go through what each set of rules says, then I'll show you wording I'd actually send on WhatsApp. This isn't legal advice. If you're running anything unusual, like paying for video testimonials or using reviews in paid ads, talk to a lawyer where you sell. What is an incentivized review? An  incentivized review  is a review written after the business offered the customer something of value for writing it: a discount code, loyalty points, a free sample, entry into a prize draw, or cash. The incentive is the issue, not the review. A genuine customer can write a genuinely honest review and it's still "incentivized" if you paid them something for it. What does the FTC's 2024 review rule say? The FTC announced its final rule on fake reviews and testimonials on  August 14, 2024 , and it came into force in October 2024. It applies to businesses, not to the customers who write reviews. In plain terms, it prohibits: Fake reviews and testimonials , including AI-generated ones, and buying or spreading reviews you knew or should have known were fake. Incentives conditioned on sentiment.  You can't offer compensation that depends on the review being positive, or negative about a competitor. Undisclosed insider reviews.  Reviews by staff, managers or their relatives need a clear disclosure of the connection. Company-controlled "independent" review sites  that claim to be neutral while reviewing your own products. Review suppression  through baseless legal threats, intimidation or false accusations, or claiming your displayed reviews are all of them when you've filtered out the negative ones. Fake social media indicators , like bought followers or views used to misrepresent influence. The FTC's  questions and answers page  is where the useful detail lives. Three points every store owner should know: Incentives aren't banned by the rule.  What's banned is an "express or implied requirement" that the review express a particular sentiment. The FTC's own example of an implied condition is a coupon offered to customers who tell you how much they loved their visit. A disclosure doesn't rescue a sentiment-based incentive.  Paying for 5-star reviews is a violation even if the reviewer discloses the payment. Undisclosed incentives can still be a problem  under the FTC Act and the Endorsement Guides, even when they're not conditioned on sentiment. This isn't theoretical. In December 2025 the FTC  sent warning letters to 10 companies  about possible violations, and the same release puts civil penalties at up to $53,088 per violation. Is review gating allowed? Review gating  means asking customers how their experience was first, and only sending the review link to the happy ones. It's common, and lots of tools make it easy. The FTC's rule doesn't contain a specific ban on it. But the FTC's Q&A says the practice could still violate the FTC Act, and its  guide for marketers  says plainly not to ask for reviews only from customers you think will leave positive ones. Google goes further and prohibits selectively soliciting positive reviews. My view: don't gate. Ask everyone the same way. You can (and should) still follow up with unhappy customers to fix their problem, and the FTC says contacting customers to resolve issues isn't prohibited. Just don't make the review link conditional on the answer.  A clear review moderation policy  helps you apply the same rules to good and bad reviews once they're in. What do Google and other platforms allow? Platforms set their own rules, and they're often stricter than the law. Google.  Google's  Maps content policy  says reviews posted because a business offered an incentive aren't allowed and will be removed. That covers payments, discounts and free goods or services. Businesses also can't discourage negative reviews or selectively ask for positive ones. Asking for genuine reviews is fine as long as there's no incentive and no attempt to influence the rating. So the same 10%-off offer might be acceptable for a review on your own Shopify product page (with a disclosure) and banned for a Google review of your store. Never send one incentive message with both links in it. Marketplaces.  If you also sell on Amazon, Etsy or similar, read their review policies before you offer anything. Many marketplaces restrict incentives far more than the FTC does. What about EU rules on reviews? EU consumer law, updated by Directive (EU) 2019/2161 (often called the Omnibus Directive), requires traders who publish consumer reviews to tell people whether and how they make sure those reviews come from real customers. The EU's  Your Europe  summary puts it simply: traders publishing reviews must disclose how they ensure reviews were submitted by real consumers who bought the product, and they can't pay for fake reviews or alter customer reviews. Regulators check this. A Commission-coordinated  sweep of 223 websites  found that in 144 cases, authorities couldn't confirm the traders were doing enough to make sure reviews were authentic. For a Shopify store selling into the EU, that means a short, honest note near your reviews (or on a linked page): reviews are collected from verified buyers via your review app, whether you publish negative ones, and whether any were written in exchange for an incentive. Safe vs risky incentive wording Wording Verdict Why "Leave an honest review, good or bad, and get 10% off your next order." OK on your own site, with disclosure Not conditioned on sentiment "Every review enters our monthly draw for a $50 gift card." OK on your own site, with disclosure Same reward whatever the rating "Tell us what you love about it and get 10% off." Not OK Implies the review must be positive "Leave a 5-star review and we'll send a free gift." Not OK Explicitly conditioned on rating "Review us on Google and get free shipping." Not OK on Google Google bans incentivized reviews "Happy with your order? Leave a review! Not happy? Reply here." Risky Routes only satisfied customers to the review link And the disclosure itself can be a single line shown with the review, which most review apps can display: "This reviewer received a 10% discount code for leaving an honest review." WhatsApp review-request messages that stay compliant Here's what I'd send through a review-request workflow. These go out as templates because they're sent days after delivery, outside the 24-hour customer service window, and only to customers who've opted in. No incentive (my default): Hi {{1}}, your Linen Throw arrived a week ago. Would you share an honest review? Good or bad, it helps other shoppers and it helps us improve. It takes about a minute: {{2}} With an incentive, unconditional and disclosed: Hi {{1}}, how's the Linen Throw? If you leave an honest review, whatever your rating, we'll send you a 10% code for your next order as a thank-you. Reviews that received this code are marked on our site. Leave yours here: {{2}} Following up on a problem (separate from the review request): Hi {{1}}, sorry to hear the throw arrived with a pulled thread. Could you send a photo? We'll send a replacement or refund, your choice. Notice what's missing from all three: no "if you loved it", no stars in the copy, no Google link with a reward attached. More examples are in  review request messages for WhatsApp and email , and  when to ask after delivery  covers timing. Safer ways to get more reviews without incentives Honestly, incentives are rarely the thing holding a small store back. These usually matter more: Ask every buyer, once, at the right time.  After they've used the product, not the day it ships. Make the form short and mobile-first.  A WhatsApp link straight to the product's review form beats an email with three buttons. Ask for something specific.  "How did the size compare to what you expected?" gets better reviews than "Leave us a review!" Reply to every negative review.  It shows future shoppers the reviews aren't curated.  Responding to negative reviews  has examples. Invite photos with clear permission.  Customer photos persuade, but you need the right to reuse them. See  collecting customer photos and UGC through WhatsApp . If you're starting from zero,  collecting your first product reviews  walks through the first 20. How WhatFlow handles review requests WhatFlow's review-request workflow sends a WhatsApp message with a link to your review app's form. It doesn't decide who's happy, and I'd keep it that way: trigger it from Shopify Flow for every fulfilled order after a set delay, with the same message for every customer. If a customer replies with a complaint instead, it lands in the shared team inbox where someone can fix it.  You can build the template in WhatFlow's template editor, and the whole thing is available on every plan, including Free. Meta's per-message template charges are separate.  The one-line rule If the reward would change depending on what the customer writes, don't offer it. If it wouldn't, disclose it, keep it off Google, and ask everyone the same way.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[reviews]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Change a Shopify shipping address after an order (WhatsApp guide)]]></title>
      <link>https://whatflow.io/blog/order-edits-address-changes-whatsapp</link>
      <guid isPermaLink="true">https://whatflow.io/blog/order-edits-address-changes-whatsapp</guid>
      <description><![CDATA[How to handle address changes and order edits that arrive on WhatsApp: verify the customer, check fulfilment, edit in Shopify, and reply clearly.]]></description>
      <content:encoded><![CDATA[To change a shipping address after an order on Shopify, open the order in Shopify admin, use the menu in the Customer section and choose  Edit shipping address . Do it before the order is fulfilled. When the request comes in on WhatsApp, first confirm it's really the buyer, then check fulfilment status, make the change, and confirm the new address back to the customer in writing. Address changes are the most time-sensitive request in most stores' inboxes. A "can I change my address?" at 10am is a two-minute fix. The same message answered at 4pm, after the courier collected, becomes a redirect request, a delay and possibly a lost parcel. So treat them as urgent. How to change a shipping address after an order: four steps 1. Confirm it's the buyer On WhatsApp, the easy case is when the number messaging you matches the phone number on the order. The harder case is when it doesn't: the customer used a work number at checkout, or someone else placed the order for them. My rule: never change an address based only on someone typing an order number. Order numbers show up on screenshots, forwarded confirmations and parcels. Ask for one more detail. Happy to help with that. So I can find the right order, could you confirm the order number and the email address you used at checkout? If the number matches the order and the details line up, go ahead. If something feels off (a different number, a new address in a different city, urgency about a high-value order), slow down and contact the customer through the details on the order. Changing a delivery address is one of the ways fraudsters redirect parcels, and it's one reason we tell merchants to watch out for  WhatsApp scams impersonating their store  from both sides. 2. Check fulfilment status Open the order in Shopify. What you can do depends on where it is: Status What you can do Unfulfilled, no label Edit the shipping address in Shopify. Easy. Label bought, not collected Edit the address, then void and rebuy the label (or update it with your shipping provider). Handed to courier You can't edit it in Shopify in a way the courier will see. Ask the courier about a redirect. Delivered Not an address change any more. It's a "wrong address" case. If you use a third-party fulfilment app or 3PL, check whether it picked up the order already. Shopify notes that some apps, especially fulfilment apps, may not recognise order edits, so update the 3PL directly too.  3. Make the change in Shopify According to Shopify's help page on  editing customer details on an order , the steps are: In Shopify admin, go to  Orders  and open the order. In the  Customer  section, open the menu and click  Edit shipping address . Update the address fields and fix any validation warning. If a tax adjustment shows up, review the  Summary  card. You can send an invoice for the difference or refund it after saving. Click  Save . A few limits from Shopify's docs worth knowing: The billing address can't be edited  after the order is placed. Taxes are only recalculated for unfulfilled orders. Some orders can't be edited this way, such as imported orders, Shop Pay Installments orders, and local delivery orders. Staff need the right permission (Manage order information, Edit orders, or Fulfill and ship orders). If the new address is in a different country, it's usually cleaner to cancel and have the customer reorder, because duties, shipping rates and markets settings all change. 4. Confirm back in writing Always repeat the new address in full. Customers catch typos when they see them. Done, Fatima. I've updated the delivery address on order #4417 to:
Flat 12, Al Noor Building, Al Barsha 1, Dubai
It hasn't shipped yet, so it'll go straight there. You'll get tracking here on WhatsApp once it leaves. Reply scripts for every case Unfulfilled, changed: All sorted, Rahul. Order #2290 will now go to: 14 MG Road, Indiranagar, Bengaluru 560038. Can you double-check that's exactly right, including the flat number? Label bought, still changeable: Caught it just in time. The label was already printed, so I've cancelled it and created a new one with your updated address: [address]. It goes out with today's collection. Already with the courier: Thanks for letting me know. Order #2290 left with BlueDart this morning, so I can't change the address on our side any more. I've asked them to redirect it to your new address and will update you as soon as they reply. If they can't redirect, the parcel will come back to us and I'll reship it to the right place at no cost to you. Be careful with that last promise. Decide in advance whether you'll cover reshipping when the customer made the mistake. Some stores do it every time as goodwill; others split the cost. Put the decision in your  customer service playbook  so everyone gives the same answer. Number doesn't match, need verification: Happy to help. This number isn't the one on the order, so before I change anything, could you confirm the email address used at checkout? It's just to make sure nobody else can redirect your parcel. Other order edits that arrive on WhatsApp Address changes aren't the only edits customers ask for. Shopify's  order editing  lets you add or remove products, change quantities, adjust shipping fees and apply discounts after an order is placed. The  considerations page  lists the limits. The ones that matter most day to day: you can't remove fulfilled items or change their quantity, and when an edit increases the total, you'll need to collect the difference (Shopify lets you send an updated invoice). Size or colour swap before shipping Of course. I've swapped the black M for the navy M on order #3381. Same price, so nothing to pay. It ships tomorrow. Adding an item I can add the matching belt to your order. It's AED 89. I'll send a Shopify invoice for the difference to the email on your order, and once it's paid, both items ship together. Collect the difference through Shopify's invoice. Never ask for card details in WhatsApp; the  WhatsApp Business Messaging Policy  tells businesses not to ask people to share full card numbers, and customers should learn that your store never does. Cancel instead of edit Sometimes the cleanest fix is cancelling and reordering, especially for COD orders. If you run COD confirmations through WhatsApp, a "change address" reply to the confirmation message is a good moment to catch it. Our guide to  turning WhatsApp order replies into Shopify actions  shows how WhatFlow and Shopify Flow handle confirm and cancel buttons, and you can route address-change requests to a person from there. What if the order was already delivered to the old address? Then it's no longer an edit. It's a recovery job, and the options depend on where the parcel ended up: Old address the customer can reach  (their previous flat, their office): ask if they can collect it. Often the quickest fix. Old address they can't reach : ask the courier whether it can be returned, and decide whether you'll reship once it's back. Clearly lost : treat it like any other lost parcel under your policy. Decide in advance who pays when the customer entered the wrong address. A consistent answer matters more than which answer you choose. I'm sorry, Daniel, the parcel was delivered to the Elm Street address on the order yesterday. Are you able to collect it from there? If not, I'll ask the courier about a return and we'll work out the reshipment from there. Make it easy to catch mistakes early The best address change is the one that happens before you pack. A few habits help: Show the address in the order confirmation message.  A WhatsApp confirmation that repeats the delivery address gives the customer a natural moment to say "wait, that's my old flat". WhatFlow can send that confirmation automatically as a  WhatsApp template from Shopify Flow . Add a "need to change something?" line  with a cut-off: "Reply here before 2pm to change your address or size." Prioritise these messages.  If your team triages chats, address changes go to the top. Our guide to  WhatsApp response times for small teams  covers triage. Thanks for your order, Aisha! We'll deliver to: Villa 7, Street 22, Al Khobar. Need to change the address or size? Reply here before 2pm today.  Write it down once Every store gets these requests weekly. Write the four steps and the scripts into your playbook, save the replies in your inbox (WhatFlow's  team inbox  keeps saved replies next to the conversation), and give everyone answering WhatsApp the Shopify permission to make the edit. Then an address change stays a two-minute job.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[operations]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Shopify pre-order updates: keep customers happy on WhatsApp]]></title>
      <link>https://whatflow.io/blog/pre-order-updates-whatsapp-shopify</link>
      <guid isPermaLink="true">https://whatflow.io/blog/pre-order-updates-whatsapp-shopify</guid>
      <description><![CDATA[Pre-order customers get anxious in silence. The four WhatsApp updates to send, how to explain charge timing, and how to handle delays and cancellations.]]></description>
      <content:encoded><![CDATA[Pre-order customers get anxious in the silence, not in the wait. Send Shopify pre-order updates at four moments: straight after the order (with a realistic ship window and exactly when they'll be charged), at regular check-ins, the moment a date slips, and when it ships. WhatsApp suits this well because customers can reply with a question instead of opening a dispute. How Shopify pre-orders work (the parts that affect your messages) A  pre-order  is an order for a product that isn't in stock yet, either because it hasn't launched or because you're waiting on a restock. Shopify doesn't run pre-orders on its own; per  Shopify's pre-order documentation , you install a pre-order app, and pre-orders work with Shopify Payments or PayPal Express. The detail that matters most for your messages is payment. Shopify lets you collect  full payment, partial payment or no payment  at checkout, store the customer's payment method, and collect the rest later. Your pre-order app decides when "later" is. Before you write a single message, open your app's settings and write down: How much is collected at checkout. When the remaining balance is charged, and what triggers it. What happens if that later charge fails. How a cancellation and refund work. Customers forgive a wait. They don't forgive a surprise charge. The four pre-order messages every customer should get Moment Purpose Template type (Meta decides) Right after checkout Confirm the order, ship window and charge timing Utility, usually Every 3 to 4 weeks (long waits) Prove you haven't forgotten them Utility if it's about their order When the date changes Explain, give a new date, offer choices Utility When it ships Tracking and delivery estimate Utility Keep promotional content out of order updates. If you slip "and 10% off your next order!" into a pre-order update, Meta may recategorise it as marketing. Our explainer on  marketing vs utility templates  has more on where the line sits. Tell customers exactly when they'll be charged The confirmation is where most of the trust is won. Be blunt about money. Full payment upfront: Hi Leila, your pre-order for the Moss Linen Duvet (Queen) is confirmed, order #3107. You've paid in full today. We expect to ship between  March 2 and March 9 , and we'll message you here if that changes. Questions? Just reply. Deposit now, balance later: Hi Tom, your pre-order #3108 is confirmed. Today we took a  $40 deposit . The remaining  $120  will be charged to the same card when your order ships, expected  late March . We'll message you a few days before we charge. Want to cancel before then? Reply CANCEL and we'll refund your deposit in full. (Only promise a pre-charge reminder or a full deposit refund if your setup actually does that. Write what's true for your store.) How often should you send pre-order updates? For a wait under three weeks, the confirmation and the shipping message are usually enough. For longer waits, check in roughly every three to four weeks, even if nothing has changed: Quick update on your pre-order #3107: production is on track and we still expect to ship in the first week of March. Nothing you need to do. We'll be in touch when it's on its way. Short, specific, no fluff. That message stops a lot of "is this a scam?" chats before they start. How to write a pre-order delay message When the date slips, tell people the same day you know, not the day before the old date. A good delay message has three parts: what happened, the new date, and their options. Hi Leila, I'm sorry, your Moss Linen Duvet is running late. Our mill had a dye batch fail quality checks, so we're re-dyeing. New expected ship date:  March 23 to 30 . What would you like to do? [Keep my order] [Swap to in-stock item] [Cancel and refund] Reply buttons make the choice easy to act on. WhatsApp template buttons are covered in  designing quick replies that make the next step clearer . Don't hide the cancel option. People who feel trapped file chargebacks; people who feel respected usually wait. If the delay is because of a carrier rather than production, our guide to  handling Shopify shipping delays on WhatsApp  covers that version. Handling cancellations without a fight Make cancellations boring. Confirm the request, say when the refund will be processed, and thank them. Done. Your pre-order #3108 is cancelled and we've started a full refund of your $40 deposit. Depending on your bank, it usually shows within 5 to 10 business days. Sorry it didn't work out this time. (That 5 to 10 day window is a common bank timeline, not a guarantee. Use your own payment provider's guidance.) The refund itself happens in Shopify or your pre-order app. WhatFlow doesn't process refunds; it handles the conversation. Automating pre-order updates with Shopify Flow and WhatFlow WhatFlow adds WhatsApp triggers and actions to Shopify Flow, so you can build most of this without code:  Confirmation.  Trigger: Order created. Condition: the order contains a pre-order item (most pre-order apps add an order tag or a line-item property; check what yours adds). Action: WhatFlow's send-template action with your pre-order confirmation template. Delay update.  When a batch slips, send one approved delay template to every affected order. Flow's Get data actions can pull orders by tag, but they return results in limited batches (Get customer data, for example, returns up to 100 per run), so check counts on big launches. Customer replies.  WhatFlow's order-reply trigger fires when someone taps a reply button. Use it to tag the order ("preorder-cancel-request", "preorder-swap") and notify your team, who then process the change. I'd keep a human on cancellations of paid pre-orders rather than auto-cancelling from a button tap. A misread tap shouldn't trigger a refund. The full setup for templates in Flow is in  sending WhatsApp templates from Shopify Flow . Saved replies for the questions pre-order customers ask You'll answer the same five questions all through a pre-order window. Write them once, with your real dates and payment rules, and keep them in your saved replies so anyone on the team gives the same answer. "When will mine ship?" Hi! Your order #3107 is in our first batch, which we expect to ship between March 2 and 9. We'll message you here the day it leaves, with tracking. "Have I been charged yet?" You paid a $40 deposit at checkout. The remaining $120 is charged when your order ships. Nothing else has been taken. "Can I change my size or colour?" Yes, as long as we haven't shipped. Which size would you like instead? I'll update the order and confirm here. "Can I add something to the same parcel?" We can't merge in-stock items into a pre-order without delaying them, so I'd suggest a separate order for anything you'd like now. If you'd rather wait and get everything together, tell me and I'll add a note. "Is this a real store?"  (You'll get this one more than you'd like.) Fair question! We're Moss & Thread, based in Porto. Your order #3107 is confirmed in our system and your deposit shows as paid. You can also see it any time in your account at mossandthread.co/account. When you have to cancel a pre-order yourself Sometimes the product doesn't happen: a supplier folds, a batch fails, a launch gets shelved. Tell customers quickly and personally, refund in full, and don't bury it in a newsletter. Hi Leila, I'm really sorry: we've had to cancel the Moss Linen Duvet. Our mill can't produce the quality we promised, and I'd rather refund you than send something we're not proud of. Your full payment of $160 is being refunded today. If you'd like, I can suggest an in-stock alternative. That message costs you a sale. Handled well, it doesn't cost you the customer.  Where pre-orders fit with launches and restocks Pre-orders are one of three ways to sell something you don't have on the shelf yet. If you're building hype for something brand new, a  product launch waitlist  might suit you better. If customers just want to know when a sold-out item returns, set up  back-in-stock alerts  instead. Pre-orders take money now, so they deserve the most communication of the three.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[operations]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Product launch waitlist on WhatsApp: early access to launch day]]></title>
      <link>https://whatflow.io/blog/product-launch-whatsapp-waitlist</link>
      <guid isPermaLink="true">https://whatflow.io/blog/product-launch-whatsapp-waitlist</guid>
      <description><![CDATA[Build a product launch waitlist on WhatsApp, send a short sequence, give real early access and run launch day without chaos. Examples included.]]></description>
      <content:encoded><![CDATA[A product launch waitlist on WhatsApp is a list of people who've explicitly asked to hear when something new goes on sale. Build it three to six weeks before launch with clear opt-in wording, send no more than four messages, and give the list a real advantage: first access, not just first notice. Then staff the inbox on launch day, because people will reply. Why run a product launch waitlist on WhatsApp? Email waitlists work, and you should probably run one too. But WhatsApp has two things going for it on launch day. First, people see it. A launch email lands in a promotions tab at the same time as forty others. A WhatsApp message lands on the lock screen. Second, people reply. "Does it come in black?" "Will it fit a 14-inch laptop?" "Can I order two?" Those questions are buying signals, and you can answer them while the customer still has the product page open. The trade-off: WhatsApp is personal, so a sloppy launch sequence gets you blocked faster than a sloppy email. Keep it short. How do you collect waitlist sign-ups? Every sign-up needs to be an explicit opt-in to WhatsApp messages about the launch. WhatsApp's Business Messaging Policy requires opt-in for business-initiated messages, and honestly, a waitlist only works if people want to be on it. Places to collect them: A coming-soon page on your Shopify store  with a phone field and a checkbox: "Message me on WhatsApp when the Trailpack launches, plus early access 24 hours before everyone else." Tag sign-ups in Shopify (for example,  waitlist-trailpack ) so you can find them later. A click-to-chat link  that opens WhatsApp with a pre-filled message like "Add me to the Trailpack waitlist". Put it in your Instagram bio, stories and emails. Our guide to  WhatsApp links and QR codes  shows how to build one. Click-to-WhatsApp ads  that send people straight into a chat. Setup and follow-up are in  click-to-WhatsApp ads for Shopify . Inserts in current orders.  A QR code on a packing slip reaches people who already like you. When someone messages "Add me to the waitlist", confirm what they're agreeing to: Thanks! You're on the Trailpack waitlist. We'll message you here up to four times before launch: once with a sneak peek, once with your early access link, and once on launch day. Reply STOP any time to leave. Then record that consent against their Shopify customer. More on doing this properly in  collecting WhatsApp opt-ins on Shopify . The waitlist message sequence When Message Goal At sign-up Confirmation (inside the 24-hour chat window if they messaged you) Set expectations 1 to 2 weeks before Behind the scenes: one photo, one detail Keep interest without selling 24 hours before public launch Early access link The perk they signed up for Launch day "Now open to everyone" note, only to non-buyers Last nudge Each business-initiated message in that sequence needs a Meta-approved template, and marketing templates can't go out until they show as approved. Submit them at least a week before your first send, and use the template editor to preview them with real product names. Behind the scenes: A sneak peek for the waitlist: here's the Trailpack in sand, the colour we nearly didn't make. 28 litres, fits a 16-inch laptop, and the side pocket takes a full-size bottle. Early access opens Thursday at 10am. Early access: Your early access is open. The Trailpack is live for the waitlist only until 10am tomorrow, before we announce it anywhere else. Order here: trailco.shop/trailpack We made 300 in the first batch. Launch day (non-buyers only): The Trailpack is now open to everyone. If you were waiting to decide, the first batch is still available in sand and charcoal: trailco.shop/trailpack What does early access actually mean? Early access has to be real, or the list stops trusting you. The simplest honest version on Shopify: keep the product unpublished from your public collections and navigation until launch, and send the waitlist the direct link 24 hours early. Some stores use a code that only works for the waitlist. Some use a password-protected page. Pick whatever your theme and apps support, and test it from a phone in a private browser window. What doesn't count as early access: sending the waitlist the link three minutes before your Instagram post. Limited drops: tell the truth about quantities If it's a limited run, say the number. "We made 300" is honest scarcity. "Selling fast!" when you have 2,000 units is the kind of thing customers remember. When it sells out, tell the waitlist quickly: The first Trailpack batch has sold out. Thank you. A second batch is due in early April. Want a message when it's back? Reply YES and we'll let you know. That reply turns into a restock list, which our  back-in-stock alerts guide  covers. If you'd rather take orders for the second batch now, read  keeping pre-order customers happy  first. Launch day: be in the inbox Launch day is a support day disguised as a marketing day. Before you hit send: Check your messaging limit. Meta caps how many unique people you can message outside the service window in 24 hours. If your waitlist is bigger than your limit, split the early-access send. Write saved replies for the questions you'll get: sizes, colours, shipping dates, returns. Put someone on WhatsApp for the first three hours, with nothing else to do. Assign conversations so two people don't answer the same customer. A  shared team inbox  helps here, and WhatFlow's inbox has no seat fees, so the whole team can jump in for the day, whether that's three people or thirty. Don't forget to answer the people who reply but don't buy. Someone asking "will it fit a 17-inch laptop?" is a customer you can still win with an honest answer. If you already have an opted-in Shopify audience, start a WhatFlow broadcast from selected customers or a Shopify segment in Admin. For a scheduled campaign built from CSV, Excel or existing conversations, use Team Inbox. Map the template fields, send a test, and make sure someone owns the replies. The  campaign walkthrough  shows both routes. The  WhatFlow launch reply playbook  shows how to split sizing, stock and order questions between agents and share the right catalog product from the conversation. Picking the launch day and time A few practical rules for choosing when the early access and launch messages go out: Pick a time your team is awake and online.  A 6am launch means 6am questions. Avoid days your customers are busy elsewhere.  Big holidays, local festivals, end-of-month paydays (or the days just before them, depending on your market). Give early access a real head start.  Twenty-four hours is a good default. Long enough to feel like a perk, short enough that the public launch still has stock to sell. Don't launch the same week as a sitewide sale.  Your list can only pay attention to so much, and a new product deserves its own moment. If your waitlist is spread across time zones, pick the zone where most of your customers are and say the time explicitly in the message ("Thursday, 10am Dubai time"). How to tell if the waitlist worked You don't need a fancy dashboard. After launch, look at four things in Shopify and your WhatsApp inbox: How many waitlist sign-ups bought , during early access and in the first week. Use the waitlist tag to filter customers and their orders. How many replied with a question , and what they asked. Those questions belong on the product page. How many opted out  after each message. A spike after one message tells you which one to cut next time. How fast stock went , compared with what you expected. Write the numbers down next to what you sent. Next launch, change one thing (timing, wording, length of early access) and compare. Our guide to  WhatsApp marketing metrics for Shopify  goes deeper on what to track.  After launch A day or two later, send nothing. Seriously. Let buyers get their order confirmation and shipping updates, and let non-buyers be. Once orders arrive, a review request is the natural next message, and your waitlist confirmation becomes a template you'll reuse for every launch after this one.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[conversion]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[How to raise prices without losing your best customers]]></title>
      <link>https://whatflow.io/blog/raise-prices-tell-customers</link>
      <guid isPermaLink="true">https://whatflow.io/blog/raise-prices-tell-customers</guid>
      <description><![CDATA[A price rise doesn't have to cost you your regulars. Who to tell, how much notice to give, when to grandfather, and the exact messages to send.]]></description>
      <content:encoded><![CDATA[The way to raise prices without losing your best customers is simple: raise once by a clear amount, tell your regulars and subscribers personally before it happens, give them two to four weeks of notice and a fair way to buy at the old price, and explain the reason in one honest sentence. Don't apologise, don't hide it, and don't trickle out small increases every month. Most small stores raise prices too late and too quietly. Costs go up for a year, the founder eats the margin, and then one day the price jumps 25% with no warning. The regulars notice. A few of them message to ask what happened, and the answer is a shrug. That's how you lose people. Not the increase itself, but the surprise. Do you need to tell customers when you raise prices? Not everyone. A first-time visitor sees one price, the current one. Telling them prices used to be lower helps no one. The people who deserve a heads-up are the ones the change actually lands on: Repeat buyers of the product.  They know the old price by heart. They'll spot it the moment they reorder. Subscribers.  Their next charge will be different. They need notice, and depending on where they live and what your subscription terms say, you may be required to give it. Wholesale and B2B accounts.  They've built your price into their own margins. Give them the longest notice of anyone. If you handle these on chat,  wholesale enquiries on WhatsApp  covers how to keep those accounts organised. Anyone with an open quote, deposit or pre-order.  Honour what you quoted. Full stop. How much notice should you give? My defaults for a small Shopify store: Who Notice Why Repeat buyers 2–4 weeks Enough time to stock up once, not so long it feels like a countdown Subscribers At least one full billing cycle, and whatever your terms require They didn't actively choose the next charge Wholesale accounts 30–60 days They need to reprice their own shelves New shoppers None They only ever see the current price Avoid timing it right before a big sale. Raising prices two weeks before Black Friday and then "discounting" makes the whole thing look like a trick, and your regulars will notice. Right after a quiet period is better. So is the start of a new season or a new batch of stock, when there's a natural reason the product changed. Should you grandfather existing customers? Grandfathering  means letting existing customers keep the old price for some time, or forever, while new customers pay the new one. It's generous, and it's a tool, not a rule. Here are the options I'd consider: Option How it works Good for Downside Hard switch New price for everyone on a set date Small increases, one-off products Feels abrupt if you skip the notice Buy-before window Old price until a date, then new price Consumables people stock up on Creates a spike, then a dip Grandfather subscribers for a few cycles Current subscribers keep the old price for, say, three months Subscription products You run two prices for a while Grandfather forever for a small group Your top customers keep the old price permanently Tiny loyal base, high lifetime value Hard to track as you grow My usual pick: a buy-before window for one-off buyers, plus a few cycles of grandfathering for subscribers. It rewards loyalty without running two price lists forever. If you want the subscription side done properly,  reducing subscription churn on WhatsApp  covers skips and swaps, which are a far better answer than a discount when someone balks at the new price. How much can you raise prices before you lose money? Do this sum before you pick a number. It's the most calming bit of maths in ecommerce. Say a candle sells for $40 and costs you $24 to make and ship. Your gross profit is $16 a candle. Now raise the price 10%, to $44. Profit per candle becomes $20. At $16 a candle, 100 sales make $1,600. At $20 a candle, you only need 80 sales to make the same $1,600. So you could lose up to a fifth of your unit sales and still make the same gross profit, with less work and less stock. That's a hypothetical, and your numbers will be different. But run yours. Most founders are shocked at how much room they have. How do you explain a price increase? One or two sentences. The real reason. Here are reasons that work because they're true and specific: "Our glass supplier raised prices twice this year." "We've switched to a heavier, recycled box that doesn't crush in transit." "We held our price for two years while costs went up. We can't anymore." Reasons that backfire: vague "market conditions", anything that sounds like a corporate statement, and anything you can't back up if a customer asks a follow-up question. Example messages for a price increase These are for customers who've opted in to WhatsApp messages from you. Outside the 24-hour customer service window, WhatsApp only lets you send a pre-approved template, so build these in your template editor. A "buy before the price goes up" message reads as promotional, so expect Meta to treat it as a marketing template. Meta charges per delivered template message, and you can check current rates on its  pricing page . The  template categories guide  explains how Meta decides. To repeat buyers, with a buy-before window: Hi {{1}}, a heads-up before it happens: on 1 March our Cedar & Smoke candle goes from $40 to $44. Wax and glass costs have gone up twice this year and we'd rather tell you straight than shrink the candle. If you'd like to stock up at $40, the current price holds until 28 February. Thanks for being a regular. Reply STOP to opt out. To subscribers, with grandfathering: Hi {{1}}, quick note about your coffee subscription. From April, our 1kg bag goes from $32 to $35. Because you're already subscribed, you'll keep paying $32 for your next three deliveries. Nothing for you to do. If you'd like to change, pause or skip, just reply here and we'll sort it. To wholesale accounts: Hi {{1}}, I wanted you to hear this from me first. Our wholesale price for the 250ml serum moves from $14 to $15.50 per unit from 1 June. Any order placed before then is at the current price, and your open quote stays as agreed. Happy to talk through it on a call if useful. When a customer replies "why so expensive now?": Inside the 24-hour window you can reply with a normal free-form message, no template needed. Keep a saved reply for this so nobody improvises a defensive answer at 11pm: Totally fair question. Our costs for wax and glass went up a lot this year and we held the old price as long as we could. If it helps, the $40 price is still live until the 28th, so you can grab a couple now. And if the new price doesn't work for you, no hard feelings at all. Saved replies are only good if they still sound human. If yours read like a policy page,  writing saved replies without a robotic tone  will help. And if someone is genuinely upset, slow down and use the approach in  handling angry customers on WhatsApp  rather than a template. How to roll out the increase on Shopify Pick the date and the new prices.  Write them down in one place. Segment who gets told.  Repeat buyers of the affected products, subscribers, wholesale. Not your whole list.  Segmenting WhatsApp campaigns  shows how to keep it tight. Send the notice.  Wholesale first, then subscribers, then repeat buyers. Prepare saved replies  for "why?", "can I still get the old price?" and "can I cancel?". Change the prices on the date  in Shopify's  product pricing  settings. Do not put the old price in the compare-at field. A compare-at price tells shoppers they're getting a discount from a higher price, and your old lower price isn't that. Watch for a month.  Count price-related questions in your inbox, repeat orders on the affected products and subscription cancellations. Compare against the month before. In WhatFlow, which runs on the official Meta WhatsApp Cloud API, steps 3, 4 and 6 live in one place: the template goes out as a broadcast, the replies land in a shared team inbox (no seat fees, so wholesale and support can both see the thread), and inbox filters let you pull up every conversation that came back from the campaign. That's all on every plan, including Free.  What not to do Don't raise prices in tiny steps every few weeks.  Customers forgive one clear increase more easily than a slow creep they feel cheated by. Don't shrink the product and keep the price.  Someone will weigh it. Don't discount your way out.  If you raise prices and then run a 20% off code the same month, you've trained people to wait.  Repeat purchases without constant discounts  is the better long game. A fair price rise, told early and plainly, is rarely what makes a good customer leave. Being surprised is.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[operations]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Ramadan, Eid and Diwali WhatsApp campaigns: a planning guide]]></title>
      <link>https://whatflow.io/blog/ramadan-eid-diwali-whatsapp-campaigns</link>
      <guid isPermaLink="true">https://whatflow.io/blog/ramadan-eid-diwali-whatsapp-campaigns</guid>
      <description><![CDATA[How to plan respectful WhatsApp campaigns for Ramadan, Eid and Diwali: timing, tone, gifting, delivery cut-offs and COD, with approximate 2027 dates.]]></description>
      <content:encoded><![CDATA[Good Ramadan WhatsApp marketing respects the rhythm of the month: fewer messages, timed around iftar and family evenings rather than through the fasting day, with Eid gifting and delivery deadlines made very clear. Diwali works similarly, built around gifting and cut-offs. Plan both backwards from the delivery date, and get Meta template approval weeks before you need to send. A note on timing as I write this (November 5, 2026): Diwali is this Sunday, November 8. If you sell in India, this year's campaign window has mostly passed, so your job this week is delivery updates, COD confirmations and fast replies. Use this guide to plan Ramadan 2027, which starts in about three months, and Diwali 2027. Key dates for 2026 and 2027 (approximate) Islamic dates follow the lunar calendar and are confirmed by moon sighting, so they can shift by a day and differ between countries. Diwali follows the Hindu lunisolar calendar, and regional observances vary. Treat these as planning windows, and confirm locally. Occasion Expected date Plan campaigns from Diwali 2026 Sunday, Nov 8, 2026 (festival roughly Nov 6 to 10) Now: delivery updates only Ramadan 2027 begins Around Feb 7 or 8, 2027 Early January 2027 Eid al-Fitr 2027 Around Mar 9 or 10, 2027 Mid-February 2027 Eid al-Adha 2027 Around May 16 or 17, 2027 Mid-April 2027 Diwali 2027 Around Friday, Oct 29, 2027 Late September 2027 Sources for these estimates are listed at the end of the article. For Eid, I'd plan for both possible dates and set your delivery cut-off against the earlier one. How Ramadan changes when people shop and read messages During Ramadan, many households reorganise their day around suhoor (the meal before dawn) and iftar (the meal at sunset that breaks the fast). Evenings get busier and more social. Plenty of your customers won't be fasting, and those who are won't all follow the same routine, so avoid assumptions. What that means for WhatsApp: Don't send around iftar.  That hour belongs to family. A promotional ping as people sit down to eat is the fastest way to look careless. Look at your own data.  Pull last Ramadan's Shopify orders by hour of day. That tells you more than any general advice, including mine. Send less, not more.  Ramadan is a month of reflection for many people. Two or three well-timed messages beat a daily deal. Staff the evenings.  If customers browse late, questions arrive late. Make sure someone can answer. What respectful Ramadan and Eid messages sound like A sincere greeting is welcome. "Ramadan Mubarak" and "Ramadan Kareem" are both widely used; "Eid Mubarak" for Eid. Use the greeting your customers use. If your audience spans Arabic, Urdu, Malay or Indonesian speakers, the greeting and language may differ, and our guide to  multilingual customer messaging  helps with the practical side.  Things I'd avoid: Turning religious practice into a gimmick ("Fast-ing deals!", countdowns to iftar as a sales device). Religious imagery used decoratively without care. Sending Ramadan promotions to your whole list on the assumption that everyone observes it. Segment by people who've bought Eid gifts before, or who opted in to Ramadan and Eid updates.  Segmenting WhatsApp campaigns around customer needs  explains how to think about this. A good first-week message: Ramadan Mubarak from all of us at Noor Home. Our Eid gift edit is now live, with gift wrapping included on every order. We'll share delivery cut-offs for Eid closer to the time, so you can plan ahead. Browse: noorhome.store/eid Warm, useful, no pressure. A Ramadan and Eid WhatsApp calendar Here's the shape I'd use for 2027, working backwards from Eid al-Fitr: Early January:  decide your Eid gift range, check stock, and talk to your courier about Ramadan and Eid capacity. Write your templates. Mid-January:  submit templates to Meta. Review can take up to 24 hours, but leave room for rejections and edits. Ramadan week 1:  one greeting with your gift edit (example above). Mid-Ramadan:  one message about gifting, with delivery cut-offs by city or region. Last ten days:  the delivery cut-off reminder. This is the message customers actually thank you for. The night before Eid:  if you offer local pickup or same-day delivery, one short note. In parts of South Asia, Chaand Raat is a big shopping night. After Eid:  a short "Eid Mubarak, thank you" with no offer, and order updates for anyone still waiting. Eid al-Adha is a separate occasion with its own rhythm. Don't just reuse your Eid al-Fitr campaign two months later. Diwali campaigns: gifting, hampers and corporate orders Diwali shopping often starts well before the main day. Dhanteras, at the start of the five-day festival, is traditionally associated with buying gold, silver and new utensils. Gifting runs through the whole season: dry fruits, sweets, clothing, home decor, hampers. For WhatsApp, three things work well: A gift guide by budget.  "Under ₹1,000", "₹1,000 to ₹2,500" and so on. Easy to scan on a phone. Corporate and bulk orders.  Companies order Diwali hampers for staff and clients, and they love being able to ask questions on WhatsApp. Have a saved reply that asks for quantity, budget, delivery addresses and invoice details. Our guide to  wholesale and B2B enquiries on WhatsApp  covers the full flow. Clear delivery cut-offs  per city, because courier networks are stretched in the run-up. Happy Diwali from Saffron & Co. Order your hampers by  Oct 23  for delivery in Mumbai, Delhi and Bengaluru before Diwali. Ordering 20 or more for your team? Reply here and we'll put together a quote. (That date is illustrative. Set yours from your courier's actual timelines.) If you already have an opted-in Shopify audience, start a WhatFlow broadcast from selected customers or a Shopify segment in Admin. For a scheduled campaign built from CSV, Excel or existing conversations, use Team Inbox. Map the template fields, send a test, and make sure someone owns the replies. The  campaign walkthrough  shows both routes. Delivery cut-offs and courier capacity Festival season stretches couriers. Ask yours early what their peak cut-offs and pickup schedules will be, then publish your own customer cut-off with a buffer. The method is the same as for any holiday: carrier date, minus your packing time, minus a buffer. Our  holiday shipping cut-off guide  walks through it and has wording for banners and WhatsApp. COD during festival season In markets where cash on delivery is common (India, Pakistan, much of the Gulf), festival peaks also bring more unconfirmed COD orders: duplicate orders, wrong addresses, people who changed their mind. Every one that gets refused at the door costs you shipping both ways. A  COD confirmation  is a message sent right after a cash-on-delivery order asking the customer to confirm before you ship. With WhatFlow, that confirmation goes out as a WhatsApp template with reply buttons, and the customer's tap can tag or cancel the order through Shopify Flow. During Ramadan or Diwali, I'd make sure it's running before the rush, not during it.  Turning WhatsApp order replies into Shopify actions  shows the setup. Assalamu alaikum Fatima, thanks for your order #2291 (Rs 6,450, cash on delivery). Please confirm so we can ship it before Eid. [Confirm order] [Change address] [Cancel] Opt-in still applies during the holidays Seasonal goodwill doesn't change WhatsApp's rules. Business-initiated messages need the customer's opt-in, opt-outs must be honoured, and every promotional message outside the 24-hour service window needs an approved template. If a template gets rejected, our guide on  why Meta rejects WhatsApp templates  covers the usual reasons. If you're running festival season with a bigger team For larger brands, Ramadan, Eid and Diwali often mean temporary staff, multiple languages and several cities. WhatFlow's WhatsApp Business API runs on the official Meta WhatsApp Cloud API, and its shared inbox has no seat fees, so adding seasonal agents for six weeks doesn't add seat costs. Use inbox assignment and filters to route Arabic or Urdu conversations, corporate gifting enquiries and COD issues to the right people, and give everyone the same saved replies with this season's cut-offs.  One last thought The stores that do well in these seasons don't send the most messages. They send the greeting that feels sincere, the cut-off that saves someone's Eid gift from arriving late, and a quick reply at 10pm when a customer has a question. Plan the dates now, and the rest is good manners.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[whatsapp]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Schema markup for Shopify stores: a beginner's guide]]></title>
      <link>https://whatflow.io/blog/schema-markup-shopify-beginners</link>
      <guid isPermaLink="true">https://whatflow.io/blog/schema-markup-shopify-beginners</guid>
      <description><![CDATA[What schema markup is, what your Shopify theme already outputs, what's usually missing, and how to check it without touching code you don't understand.]]></description>
      <content:encoded><![CDATA[Schema markup on Shopify is a block of code, usually JSON-LD, that tells search engines exactly what's on a page: this is a product, it costs AED 240, it's in stock, it has 38 reviews. Most Shopify themes already output Product and Article markup for you. Your job is to check it's accurate, fill the gaps (Organization, breadcrumbs, return policy), and avoid apps that add duplicate data. You don't need to write code to get this right. You need to know what's there and what good looks like. What is schema markup, in plain English? Schema markup (also called structured data) is a standard vocabulary, maintained at  schema.org , for labelling things on a web page so machines can read them without guessing. Instead of Google working out that "AED 240" near a "Add to cart" button is probably a price, the markup says  "price": "240"  and  "priceCurrency": "AED" . Google  recommends JSON-LD , a small script block in the page's HTML that shoppers never see. It's the format Shopify themes use. What schema can do for a store: Make pages eligible for rich results , such as price, availability, shipping and review stars in Google's results. Help Google understand your business : name, logo, social profiles, contact details, return policy. Reduce ambiguity  for any system that reads your pages, including AI search. What it can't do: force Google to show anything. Google says clearly that valid markup makes you eligible, not guaranteed. What schema does my Shopify theme already output? Probably more than you think. Shopify provides a Liquid filter called  structured_data  that turns a product or article into JSON-LD. According to Shopify's developer docs: A product  with no variants  becomes a schema.org  Product . A product  with variants  becomes a  ProductGroup  (the parent, with each variant described inside). A  blog article  becomes an  Article . Most current themes, including Shopify's free ones, use this or their own equivalent. Older or heavily customised themes might not. Here's what you'll typically find, and what you won't: Schema type What it describes Usually in a current Shopify theme? Product / ProductGroup + Offer Product name, images, price, currency, availability, SKU Yes Article Blog post headline, author, dates, image Yes Organization Your business name, logo, social profiles, contact Varies by theme WebSite Site name (and sometimes search box) Often on the home page BreadcrumbList The path Home > Collection > Product Varies by theme AggregateRating / Review Star rating and review count Comes from your review app MerchantReturnPolicy / shipping details Return window, shipping cost and time Rarely, unless you add it How do I check my Shopify store's schema markup? Takes five minutes: Open Google's  Rich Results Test . Paste the URL of one product page.  Run it. Look at "Detected items".  You want to see something like "Merchant listings" and "Product snippets", with no red errors. Expand each item  and check the values match the page: right price, right currency, right availability. Repeat for a blog post, your home page and a collection page. In Google Search Console , check the Shopping and enhancement reports once your store has some traffic. They show errors across all pages, not just the one you tested. Two things to look for specifically: Duplicates.  If you see two separate Product items on one page, your theme and an app (often an SEO or review app) are both outputting markup. Google may cope, but conflicting prices or ratings are a problem. Pick one source. Mismatches.  Markup that says "InStock" on a sold-out product, or a price that doesn't include your current sale. Google's guidelines require markup to match what's visible. Product markup: what matters for a store Google splits product results into two features, explained on its  Product structured data intro : Merchant listings  are for pages where people can buy the product from you. That's every Shopify product page. Product snippets  are for pages about a product where you can't buy it directly, like a review article. For merchant listings, Google's  requirements  are short: the product needs a  name , an  image , and an  offers  block with a  price  (above zero) and a three-letter  priceCurrency . Your theme almost certainly covers these. The recommended extras are where most stores have gaps: shippingDetails : shipping cost, destination and delivery time. hasMerchantReturnPolicy : return window and which country it applies to. gtin  (barcode),  brand ,  color ,  size  where they apply. aggregateRating  and  review  from a real review app. Google suggests defining return and shipping policies once at the Organization level, and only adding them to individual offers when a product is an exception. That's much easier to maintain than editing every product. If you also manage a Google Merchant Center feed, Google can take shipping and returns from there too. Pick whichever is easier to keep accurate. What about review stars? Review stars come from  AggregateRating  and  Review  markup, which your review app normally outputs, not your theme. Whether stars actually appear is Google's decision. I've written a full explainer on  product review schema and search stars , so I won't repeat it here. One extra tip: if your products have variants, make sure reviews are attached to the right product, which I cover in  keeping review context clear across variants . Organization markup: tell Google who you are Organization markup  has no required properties, but the recommended ones are useful for any store: name  and  url logo  (at least 112×112 pixels, looks right on white) sameAs : links to your Instagram, Facebook, TikTok, YouTube, marketplace profiles contactPoint : customer service email and phone address hasMerchantReturnPolicy : your store-wide return policy Put it on the home page. Many themes output a basic version with name, logo and social links taken from theme settings, so fill in those settings first. If the theme doesn't output it at all, a developer can add a small JSON-LD block to  theme.liquid  in under an hour, or you can use an app that does only this. One thing Organization markup won't do: earn stars for your store as a whole. Google's  review snippet guidelines  treat reviews of a business shown on that business's own site, including through an embedded widget, as self-serving, so Organization and LocalBusiness pages aren't eligible for star results. Product review stars are a separate matter. This is also one of the cleaner ways to give AI search systems consistent facts about your business. I go into that in  getting your store mentioned in AI answers . BreadcrumbList: show the path Breadcrumb markup  describes where a page sits: Home > Dresses > Linen Dresses > Sage Wrap Dress. Google can use it to show a cleaner path in results instead of a raw URL. Google's documentation notes the feature is available on desktop. If your theme shows visible breadcrumbs, it often outputs the markup too. If it doesn't, adding visible breadcrumbs is worth doing for shoppers anyway, especially on deep collection structures. It also strengthens internal links back up to your collections, which I talk about in  Shopify collection pages that rank . FAQ schema: what changed in 2026 This one has changed for good. According to the  Search Central changelog , Google stopped showing FAQ rich results in Search from May 7, 2026, and removed the FAQPage documentation in June 2026. They're gone for every site. So for a Shopify store, as of November 2026: FAQPage markup won't earn an expanded FAQ result in Google.  Don't buy an app for it. Visible FAQs on product and collection pages are still worth having.  They answer buying questions, reduce support messages and give search engines and AI tools clear text to read. Here's how to  write product FAQs that answer real buying questions . Existing FAQPage markup is harmless.  You don't need to rip it out, but don't spend time adding more. A good source for those questions, by the way, is your support inbox. In WhatFlow, for example, the questions customers send on WhatsApp sit in one shared inbox, so it's easy to spot the ones that come up every week and put the answer on the page instead. Article markup for your blog Article markup  has no required properties. Google recommends  headline ,  image ,  datePublished ,  dateModified  and  author  with a name and URL. Shopify's  structured_data  filter covers the basics for blog posts. Two easy wins: make sure each post shows a real author name, and update  dateModified  honestly by actually updating the post, not by changing the date. Should I use a Shopify schema app? My rule: check first, then fill specific gaps. Situation What I'd do Theme outputs clean Product and Article markup, no errors Leave it. Add Organization if missing. Theme is old and outputs nothing or broken markup Update the theme, or use one schema app as the only source Review app and theme both output Product markup Turn off one source so there's one Product per page You want return policy and shipping markup Add at Organization level, or via Merchant Center An app promises "FAQ rich snippets" Skip it Every app you add loads code and costs money. Schema is a case where one careful fix beats three overlapping apps.  A ten-minute schema check for this week Run one product, one collection, one blog post and your home page through the Rich Results Test. Fix duplicates and wrong prices first, add Organization markup if it's missing, and forget about FAQ rich results. Then get back to the work that actually moves rankings, which is in my  Shopify SEO checklist .]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[seo]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Selling on WhatsApp: shop-floor sales habits that work in chat]]></title>
      <link>https://whatflow.io/blog/selling-over-chat-sales-techniques</link>
      <guid isPermaLink="true">https://whatflow.io/blog/selling-over-chat-sales-techniques</guid>
      <description><![CDATA[The habits of a good shop assistant translate almost perfectly to WhatsApp. Here's how to greet, ask, recommend and close in chat, with scripts.]]></description>
      <content:encoded><![CDATA[Selling on WhatsApp works best when you run it like a good shop floor, not like a support queue. Greet the customer quickly, ask one or two questions about what they need, recommend a specific product with a reason, answer the objection behind the hesitation, then send a clear link to Shopify checkout. The habits are old. The medium is new. I talk to merchants every week who get dozens of WhatsApp messages a day and still treat them as tickets to close. "Price?" gets answered with a price. "Available in blue?" gets "yes". The customer goes quiet, and the store calls it a lost lead. A decent shop assistant would never sell like that, and you shouldn't either. Why does selling on WhatsApp feel different from a product page? A product page talks to everyone. A WhatsApp chat talks to one person who has already raised their hand. That's the whole advantage, and most stores waste it by replying with what the product page already says. Think about what happens when someone walks into a shop. The assistant notices them, says hello, asks what brings them in, listens, points them to two options instead of twelve, deals with the "hmm, it's a bit expensive" moment, and walks them to the till. Every one of those steps has a chat equivalent. For a shopper asking which size or variant fits, use WhatFlow's product picker to share the relevant catalog item from the conversation. With catalog cart follow-up configured, WhatFlow can send back a Shopify checkout link. Check Shopify before treating the WhatsApp cart as a paid order. The  catalog-to-checkout walkthrough  shows the test sequence. On the shop floor In WhatsApp Greeting at the door First reply within minutes, with your name "What are you looking for?" One or two qualifying questions Watching what they pick up Reading the product link or photo they sent "Try this one" One recommendation, with a reason, plus a product link or catalog item Handling "it's a bit much" Answering the real objection: price, fit, delivery, trust Walking them to the till A checkout link and a clear next step "Come back and tell me how it went" A post-delivery check-in or review request Habit 1: Greet like a person, fast The first reply sets the tone. Customers on WhatsApp expect speed, and a reply 6 hours later often lands after they've bought somewhere else. If you can't staff evenings, say so honestly with an away message rather than leaving people in silence. Our guide on  how fast to reply on WhatsApp  has realistic targets for small teams. Keep the greeting short and do something useful in the same message: Hi Aisha, Bilal here from Loom & Thread. Thanks for the photo of the linen shirt. Are you shopping for yourself, or is it a gift? Compare that with "Welcome to Loom & Thread! How may I assist you today?" which tells the customer nothing and asks them to repeat themselves. Habit 2: Ask before you recommend In a shop, you'd never hand someone a jacket before knowing whether they want it for winter or for a wedding. In chat, people skip this because typing feels slow. Ask anyway, but ask little. One or two questions, ideally ones the customer can answer in a word or two. Good qualifying questions by situation: Size or fit:  "What size do you usually take in jeans, and do you like them loose or fitted?" Use case:  "Is this for daily use or for travel?" Timeline:  "Do you need it by a certain date?" Budget (gently):  "Do you have a price range in mind, or should I show you the full range?" Notice what's missing: "Can I have your email?" Don't collect data the sale doesn't need. Habit 3: Listen for the real question Customers rarely ask what they mean. "Is this cotton?" often means "will it be hot in July?" "How long is delivery?" often means "will it arrive before Saturday?" Answer the literal question, then the one underneath it. Yes, it's 100% cotton. It's a heavier 280gsm weave, so it's great for autumn but warm in peak summer. If you want something for July, the lighter poplin version is the one I'd pick. This is also where your chat inbox becomes market research. If five people a week ask whether the serum smells strong, your product page is missing a line. I wrote more about that loop in  using pre-purchase WhatsApp questions to improve product pages . Habit 4: Recommend one thing, with a reason Choice paralysis is real in chat. Ten links in a row feels like homework. Recommend one product, maybe two, and say why it fits what they told you. Based on what you said (size 10, loose fit, mostly for work), I'd go with the Ava wide-leg in navy. It runs true to size and the fabric doesn't crease on the commute. Here it is: [product link] If you've connected your Meta product catalog, you can share the product straight from the inbox so the customer sees the photo, price and name in the chat. We built live catalog sharing into WhatFlow for exactly this moment;  this guide to WhatsApp catalog sharing  covers the setup.  Add-ons work the same way. Suggest the thing that makes the main purchase work better (the case for the phone, the refill for the diffuser), not whatever has the highest margin. More on that in  cross-sell recommendations that actually help . Habit 5: Handle objections without arguing Hesitation is normal. In a shop, you'd see it on someone's face. In chat, it shows up as "ok let me think" or silence. Name the most likely objection and answer it once, plainly. "It's a bit expensive" Don't jump to a discount. Explain what the price buys, or offer a cheaper option honestly. Fair question. The difference is the full-grain leather, which softens instead of cracking. If you'd rather keep it under 5,000, the Mira bag in coated canvas is a solid choice and looks very similar. "Will it arrive in time?" Give a real range from your shipping settings, not a hopeful guess. If you order before 3pm today, it ships tomorrow. Delivery to Lahore is usually 2 to 4 working days, so Saturday is likely but not guaranteed. Want me to check if express is available for your area? "What if it doesn't fit?" Explain the exchange process in one message. The confidence of a simple answer sells more than a long policy link. If it doesn't fit, message us here within 14 days and we'll arrange an exchange. You just send it back unworn with the tags on. "Is this store legit?" Common in markets where COD is the norm, and fair given how many fake stores exist. Offer proof, not adjectives: your reviews page, your business address, the option to pay on delivery if you offer it. Habit 6: Close with a clear next step This is where most chat sales fall over. The customer is convinced, and the conversation just ends. Always finish with a single, specific action. Great choice. Here's the direct link with the navy in size 10 already selected: [link]. If you'd rather pay cash on delivery, choose COD at checkout and we'll send you a WhatsApp message to confirm before it ships. For custom bundles or special pricing, create a draft order in Shopify and share its checkout link. Shopify's Help Center explains  how to copy a draft-order checkout link  and paste it into a messaging app. The customer still pays on Shopify checkout. WhatFlow doesn't take payments inside WhatsApp, and honestly you don't want it to: Shopify checkout is where your payment methods, taxes and fraud checks already live. What happens if the customer goes quiet? Here's the platform rule you need to know. On the WhatsApp Business API, the  customer service window  is the 24 hours after a customer's last message. Inside it, you can reply with any free-form message. Outside it, Meta only lets you send a pre-approved  template message , and you need the customer's opt-in for anything promotional. Our explainer on  the WhatsApp 24-hour window  covers the details, and Meta's  pricing page  shows how each message type is billed as of November 2026. So the follow-up has to come inside the window, and it has to add something. One good follow-up: Hi Aisha, quick update: the navy Ava is down to the last two in size 10. No pressure at all, just didn't want you to miss it if you were still deciding. Only send that if it's true. Invented scarcity is the fastest way to lose trust in a channel where people know you personally. If they started checkout and dropped off, that's a different conversation. See  recovering an abandoned checkout on WhatsApp . How do you set up a team to sell on WhatsApp? One person on one phone doesn't scale past a few dozen chats a day. You need three things. A shared inbox.  Everyone sees the same conversations, and each chat has an owner. WhatFlow's team inbox has no seat fees, so adding your weekend helper doesn't add a monthly charge. Saved replies for the boring parts.  Shipping times, exchange policy, COD steps. Write them once so your team spends their energy on the personal bits. Keep them editable, not robotic:  this guide to saved replies  shows how. Clear handoffs.  If a chat needs the owner (a bulk order, a complaint), assign it rather than shouting across the room. A quick daily habit: at closing time, filter the inbox for unanswered chats and conversations where a link was sent but nothing came back. Those are your warmest leads.  Start with one habit this week You don't need a sales course. Pick the habit your team skips most (usually asking a question before recommending, or forgetting to close with a link) and write two saved replies for it today. Then read ten chats on Friday and see if the conversations changed. If you sell bigger-ticket items, the same habits stretch over a longer timeline;  selling high-ticket products over WhatsApp  picks it up from there.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[conversion]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[The lean Shopify app stack: what a small store actually needs]]></title>
      <link>https://whatflow.io/blog/shopify-app-stack-audit</link>
      <guid isPermaLink="true">https://whatflow.io/blog/shopify-app-stack-audit</guid>
      <description><![CDATA[Most small Shopify stores run too many apps. Here's the short list a store actually needs, what Shopify already does for free, and how to audit the rest.]]></description>
      <content:encoded><![CDATA[A lean Shopify app stack for a small store is usually four to eight apps: one for reviews, one for customer messaging (WhatsApp, in most of the markets I work with), one for email marketing, and a few that fill specific gaps your store really has. Before adding anything, use what Shopify already includes for free, like Flow, Search & Discovery filters and automated policies. I build a Shopify app, so I'm aware of the irony of telling you to install fewer of them. But I see the cost of bloated stacks every week: slow mobile pages, three apps sending the same customer two review requests, and monthly bills nobody can explain. This guide is about  what  to keep. If you want the money side, how to compare seat fees, usage pricing and feature gates, I covered that in  auditing Shopify app costs beyond the headline price . Why does a lean Shopify app stack matter? Three reasons, in order of how often they bite: I'd evaluate WhatFlow Business API across a whole sales journey: run a  Shopify WhatsApp campaign , work the replies in the  shared inbox , then  share the right product and link to checkout . Those jobs sit alongside recovery and order notifications. If you only test the first order message, you miss much of what the app replaces. Speed.  Apps that add scripts, widgets or trackers to your storefront add weight to every page. On a mid-range phone on mobile data, that's the difference between a page that feels instant and one that feels broken. Google's  Core Web Vitals  guidance puts a "good" Largest Contentful Paint at 2.5 seconds or less, and a pile of third-party scripts makes that harder. Overlap.  Two apps doing the same job means duplicate messages, conflicting popups and data split across dashboards. Cost and attention.  Every app is a bill, a settings page, an update to watch, and something to check when things break. Which Shopify features should I use before installing apps? Shopify includes more than most merchants realise. Check these first: Job Built into Shopify When you'd still add an app Automation between apps Shopify Flow , free on Basic and up Rarely; most apps plug into Flow Collection and search filters Search & Discovery , up to 25 filters Very large catalogues with special search needs Store policies Automated policies  generated from settings Almost never Product copy, image edits, data questions Sidekick and Shopify's AI tools Specialised needs only Sitemap, robots.txt, title tags, alt text Built in Bulk editing across hundreds of products Discounts Built-in discount types Complex tiered or bundle logic If an app's only job is something on that list, you probably don't need it. The core stack: what most small stores actually need 1. Reviews (one app) New stores have no reputation. Reviews are how you borrow one from your customers. One review app that collects, displays and outputs review markup. Not two. 2. Customer messaging (one app) This is where shoppers ask questions before buying and come back when something goes wrong. In India, Pakistan, the Gulf, Brazil, Indonesia and much of Europe, that's WhatsApp. A good messaging app covers several jobs that stores often spread across three or four apps: a chat button, a shared inbox, order and shipping updates, COD confirmation, abandoned checkout messages and review request messages. That's what we designed WhatFlow's WhatsApp Business API app to consolidate. It runs on Meta's official WhatsApp Cloud API and includes a theme-matched chat button that's free forever, a shared team inbox with no seat fees, message templates, broadcasts, abandoned checkout recovery, COD confirmation with reply buttons, order and shipping updates, review-request workflows that send a link to your review app's form, catalog sharing and native Shopify Flow triggers and actions. Every feature is on every plan, including the Free plan, so there's no "upgrade to get COD confirmation" moment. It scales the same way: adding your tenth or fiftieth agent doesn't add a seat fee. What it doesn't replace: your review app (it sends people to it) and your email tool. 3. Email marketing (one tool) Email is still where receipts, newsletters and longer content live. Pick one. If you also use WhatsApp, decide which channel sends what, so customers don't get the same message twice. 4. Gap-fillers (only if you have the gap) These are legitimate, but only when the need is real: Subscriptions , if you sell consumables on a schedule. Translation and currency , if you sell in several languages. Shipping labels and tracking , if your volume makes manual fulfilment painful. Bundles or product options , if your catalogue genuinely needs them. Loyalty , once you have enough repeat customers for it to matter. What a lean stack might look like Say you run a small fashion store in the UAE with about 300 orders a month, 30% of them COD: Job App Reviews One review app WhatsApp support, COD confirmation, order updates, cart recovery, chat button WhatFlow WhatsApp Business API Email newsletters and receipts One email tool Automation between them Shopify Flow (built in) Filters Search & Discovery (built in) Size guide A size chart app, or a page template with a metafield Five or six apps, several of them free. That's a store I'd be happy to run. Where do Shopify app stacks usually overlap? These are the overlaps I see most often: Two chat widgets.  A live chat widget plus a WhatsApp button, both floating in the corner, both loading scripts. Pick the channel your customers actually use. I compared the options in  a free WhatsApp button vs a paid chat widget . Review requests from two places.  The review app emails a request, and the messaging app sends one on WhatsApp the same day. Choose one channel per customer, or stagger them. More on dividing jobs between these two in  choosing review and messaging apps for the jobs they actually do . Cart recovery in three places.  Email, SMS and WhatsApp all firing within the hour. Set an order of channels and timing, and stop once the customer buys. Stacked popups.  A newsletter popup, a spin-to-win wheel and a cookie banner, all on the first page view. On mobile that's the whole screen. Several analytics and tracking pixels  from apps you no longer use. Page builders  on top of an Online Store 2.0 theme that already has sections. How do I audit my Shopify app stack in an hour? Do this once a quarter. Open Settings > Apps and a spreadsheet. List every installed app.  Name, monthly cost, who installed it, when. Write the one job it does.  If you can't name the job, that's your answer. Mark whether it touches the storefront.  Widgets, popups, badges, pixels. These affect speed. Check the last time it did something useful.  Look at the app's dashboard. "Sent 0 messages in 60 days" is a removal. Find overlaps.  Sort by job. Two apps with the same job: keep the better one. Check if Shopify does it now.  Compare against the built-in table above. Decide: keep, replace or remove. App Job Storefront? Last useful Overlaps with Decision Example: Countdown timer Urgency banner Yes Last year's sale – Remove Example: Live chat widget Pre-sale chat Yes Daily WhatsApp button Replace with WhatsApp Example: Review app Reviews Yes Daily – Keep How to remove an app without leaving a mess Shopify's  uninstalling apps  page flags two things worth knowing: Leftover theme code.  Some apps add code to your theme, and it isn't automatically removed when you uninstall. Check the app's listing or ask the developer for cleanup steps  before  you uninstall. Duplicate your theme first so you can roll back. Billing.  Uninstalling stops future recurring charges billed through Shopify, but you may still be charged for the current cycle. Some apps bill outside Shopify; cancel those separately. After removing an app, check the storefront on your phone: product page, cart and checkout. Leftover snippets sometimes leave empty boxes or broken layouts. Rules I'd follow when adding a new app One job, clearly named.  "Sends COD confirmation and lets the reply cancel the order" is a job. "Boosts conversions" isn't. Plugs into Shopify Flow  if it touches orders or customers, so you're not copying data by hand. I wrote about  evaluating app connectors before building a workflow . Doesn't gate the feature you need behind a higher plan you'll hit in three months.  I explain why that matters in  all-features plans vs feature-gated upgrades . Light on the storefront.  Ask what scripts it loads and on which pages. Easy to leave.  Can you export your data?  Start with the apps you've forgotten Open your app list today and find the ones you can't remember installing. Remove them properly, clean up the theme code, and check your mobile speed afterwards. For most stores, that ten minutes is the easiest performance win available.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[operations]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Shopify collection pages that rank: copy, filters and internal links]]></title>
      <link>https://whatflow.io/blog/shopify-collection-page-seo</link>
      <guid isPermaLink="true">https://whatflow.io/blog/shopify-collection-page-seo</guid>
      <description><![CDATA[How to turn a bare Shopify collection grid into a page that ranks: one keyword per collection, useful copy, sane filters and deliberate internal links.]]></description>
      <content:encoded><![CDATA[Shopify collection page SEO comes down to four things: give each collection one clear search to win, write useful copy above and below the product grid, keep filter URLs out of the index unless they deserve their own page, and link to the collection from everywhere it makes sense. Do that on your top five collections and you'll usually see more movement than from any amount of product-page tinkering. Here's why, and exactly how I'd do it. Why do collection pages matter so much for Shopify SEO? Because they match how people shop. Someone searching "linen dresses" or "vitamin C serum" or "oak dining table" wants to compare options, not land on one specific product. Google knows that, so for category searches it tends to rank pages that show a range: collection pages, category pages, marketplace listings. Collection searches are also where most of the volume is. Few people search for "Sage Linen Wrap Dress by Noor Studio" until they already know you. Many more search for "linen wrap dress". And yet the typical Shopify collection is a heading, a grid, and nothing else. There's nothing for Google to read that explains why this page is a better answer than the next store's. That's the gap. Step 1: Give every collection one keyword Before writing anything, map each important collection to one search phrase. Use Google Search Console (Performance > Queries, filtered by page) to see what each collection already shows up for, then pick the phrase that best matches what's in it. Rules I follow: One collection, one primary phrase.  "Linen dresses" and "Summer linen dresses" shouldn't be two separate pages fighting each other. Match the phrase to the products.  Don't target "wedding guest dresses" if half the collection is beachwear. Merge thin overlaps.  If you have "New In", "Latest", and "Just Dropped" collections with the same products, keep one and  redirect  the others. Keep the handle simple.   /collections/linen-dresses  beats  /collections/ss26-linen-drop-final . A small mapping table keeps you honest: Collection Primary keyword Handle Notes Linen Dresses linen dresses /collections/linen-dresses Main money page Linen Wrap Dresses linen wrap dress /collections/linen-wrap-dresses Sub-collection Modest Linen Dresses modest linen dresses /collections/modest-linen-dresses Real search in the Gulf Summer Sale (none) /collections/sale Not an SEO page; fine to leave thin Not every collection needs to rank. Sale and seasonal collections can stay as plain grids. Step 2: Set the title tag, H1 and meta description In Shopify admin, open the collection and scroll to "Search engine listing". Set: Page title (title tag):  primary keyword first, a qualifier, then the brand. "Linen Dresses for Women: Breathable & Modest · Noor Studio". Shopify suggests 60 characters or fewer. Meta description:  what's in the collection and why it's worth clicking. "Breathable linen dresses in wrap, shirt and maxi styles, sizes XS–3XL. Free delivery across the UAE, cash on delivery available." H1:  this is the collection's title field. Keep it close to the keyword: "Linen Dresses", not "The Breathe Edit ✨". Clever names are fine as a subheading. Step 3: Write copy above and below the grid This is the part that moves rankings. You need two pieces of copy. The intro (above the grid, 40–80 words) Short. It tells shoppers they're in the right place and tells Google what the page is about. Don't push the products below the fold on mobile. Our linen dresses are cut from 100% European flax linen, pre-washed so they're soft from day one and won't shrink. Wrap, shirt and maxi styles in sizes XS–3XL, with modest-length options in every cut. Made for 40°C summers. The buying guide (below the grid, 200–500 words) This is where you answer the questions people ask before choosing. Look at your support inbox and your reviews for what comes up repeatedly. For a linen dress collection that might be: How does the sizing run?  (Most linen is cut roomy; size down if between sizes.) Will it wrinkle?  (Yes, it's linen. Here's how to steam it in two minutes.) Is it see-through?  (Which colours need a slip.) How do I wash it? How long is delivery to my country? Can I pay on delivery? Use  ###  subheadings for each question so people can skim. The same rules apply as for  product FAQs that answer real buying questions : short, specific, and in the customer's words. Link to the two or three most relevant products by name, and to a deeper guide if you have one. Theme detail: in many Online Store 2.0 themes, the collection description shows above the grid only. To put content below, add a rich text section to the collection template, or use a collection metafield connected to a section so each collection gets its own text. A developer can set this up once in an hour or two. Where do these questions come from? Mine come straight from customer chats. If your team answers WhatsApp in a shared inbox like WhatFlow's, the same handful of pre-purchase questions will jump out within a week. When a buyer messages "is the white one see-through?" on WhatsApp, that's a line for your collection guide. I've written a whole process for  mining your WhatsApp chats for content ideas , and a related piece on  using pre-purchase WhatsApp questions to improve your pages . Step 4: How should Shopify collection filters be handled for SEO? Filters are great for shoppers and messy for search engines. Each combination of colour, size, price and availability can create a new URL. Multiply that across collections and you've got thousands of near-duplicate pages. Google's  guidance on filter (faceted) URLs  is straightforward: if you don't need filtered URLs in Search, block them in robots.txt, and keep the unfiltered listing and individual product pages crawlable. Canonical tags pointing to the less-filtered page also help, but Google calls them less effective than robots.txt for controlling crawling. The good news: Shopify's  default robots.txt  already blocks duplicate filtered and sorted collection URLs. For most stores, that means: Use filters freely for shoppers.  Shopify's  Search & Discovery app  supports availability, category, price, product type, tags, vendor, product options and metafields, up to 25 filters. Don't try to make filter URLs rank.  They're blocked by default for good reason. Turn real searches into real collections.  If people search "black linen dresses", create a "Black Linen Dresses" collection (a smart collection with a colour condition works) with its own title, intro and guide. Now it's a proper page, not a filter state. Don't edit robots.txt to "unblock" filters  unless you know exactly why. Shopify warns that a bad edit can cost you all your traffic. Step 5: Build internal links to and from each collection Internal links tell Google which pages are important and how they fit together. Collections should be the hubs. Links  to  a collection: Main menu  for top-level collections. Breadcrumbs  on product pages (Home > Linen Dresses > Sage Wrap Dress). Product descriptions : "See all our [linen wrap dresses]" with descriptive anchor text. Blog posts and guides  that mention the category. The home page , for your three to six most important collections. Links  from  a collection: Sibling collections  ("Also see: Linen Shirts, Linen Trousers"). Child collections  ("Shop by style: Wrap, Shirt, Maxi"). One or two guides  ("How to choose a linen dress for hot weather"). Google's  SEO Starter Guide  asks for descriptive anchor text. "Click here" tells nobody anything. "Our modest linen dresses" tells both shoppers and Google where they're going. A quick audit: for each of your top five collections, count the pages that link to it other than the menu. If it's zero or one, that's your next job. Step 6: Sort, size and keep it fresh A few smaller things that add up: Default sort order.  Put best sellers or best-reviewed products first. Shoppers who land from search should see your strongest products, not whatever you uploaded last. Out-of-stock items.  Push them to the end, or hide them from the grid if they won't be back soon. A first page full of "Sold out" looks dead. Products per page.  Enough to browse, not so many that the page drags on mobile. Most themes default to something sensible. Collection image alt text.  Describe the image ("Three women in sage, white and sand linen dresses on a beach"). Review the copy every few months.  New products, new questions, new delivery options. A stale buying guide that mentions a product you no longer sell looks careless. A collection page SEO checklist Task Done? One primary keyword per collection, no overlaps  Clean handle, redirects for any changes  Title tag and meta description written by hand  H1 matches the keyword  40–80 word intro above the grid  200–500 word buying guide below the grid  Filters set up for shoppers; filter URLs left blocked  Real searches turned into dedicated collections  Linked from menu, breadcrumbs, products and at least one guide  Links out to sibling collections and a guide  Best sellers sorted first, sold-out items not dominating   Where this fits Collections are one part of the bigger picture. For the full order of work, from Search Console setup to speed and reviews, see my  Shopify SEO checklist . And if you want to check whether your theme outputs breadcrumb markup for these pages, the  schema markup guide for Shopify  shows how.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[seo]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[How to improve SEO on Shopify: a practical checklist for 2026]]></title>
      <link>https://whatflow.io/blog/shopify-seo-checklist-merchants</link>
      <guid isPermaLink="true">https://whatflow.io/blog/shopify-seo-checklist-merchants</guid>
      <description><![CDATA[A working Shopify SEO checklist: crawl basics, collections, product pages, images, speed, reviews, content and internal links, in the order I'd do them.]]></description>
      <content:encoded><![CDATA[To improve SEO on Shopify, fix things in this order: confirm Google can crawl and index the store, make every collection and product page answer a specific search with unique copy, clean up images and speed, add genuine reviews, then publish a small number of guides built from real customer questions and link them all together. Shopify already handles most technical plumbing. Your job is mostly content and structure. I run a Shopify app company, and I spend a lot of time inside other people's stores. The pattern is almost always the same. The theme is fine. The sitemap is fine. And the collection pages are a grid of products with a heading and nothing else, the product descriptions are the supplier's copy pasted in, and nothing links to anything. Those are fixable in a few weekends. This checklist is the order I'd work through on a store with a few dozen to a few thousand products. Tick it off top to bottom. Is Shopify good for SEO out of the box? Yes, mostly. Shopify does the boring technical work for you, which is one of the better reasons to be on it: Sitemap.  Shopify generates  sitemap.xml  at the root of your domain and updates it when you add products, collections, pages, images or blog posts ( Shopify Help Center ). robots.txt.  Every store gets a default robots.txt that Shopify describes as optimal for SEO. It blocks cart, checkout, account and duplicate sorted or filtered collection URLs ( Shopify Help Center ). Editable titles, meta descriptions, handles and alt text  on products, collections, pages and blog posts. Structured data.  Most modern themes output Product and Article markup through Liquid. I cover what that means in  schema markup for Shopify stores . What Shopify can't do is write your pages. That's where most stores lose. Step 1: Make sure Google can find and index the store Do this before anything else. It takes an hour and it tells you where you actually stand. Remove the password page.  A store in private mode can't be crawled. If you're still building, that's fine, but don't expect any SEO progress until it's public. Verify your domain in Google Search Console.  Use your primary domain, not the  myshopify.com  address. Google's  Search Console getting-started guide  walks through it. Submit your sitemap.  In Search Console go to Indexing > Sitemaps, type  sitemap.xml  and submit. Check the Pages report.  Look for important URLs marked "Discovered, currently not indexed" or "Crawled, currently not indexed". A handful is normal. If half your products are there, the usual cause is thin or duplicate content, not a technical block. Leave robots.txt alone  unless you have a specific reason. Shopify's own help page warns that a bad edit "can result in loss of all traffic". I've never seen a small store's rankings fixed by editing it. Set one primary domain  and let Shopify redirect the others to it. Step 2: How should I write titles and meta descriptions on Shopify? The title tag is the blue link in Google. Shopify recommends keeping it to 60 characters or fewer, and Google's  title link documentation  asks for titles that are unique, brief and accurate. A pattern that works for most stores: Page type Title pattern Example Collection Primary keyword + qualifier + brand Linen Summer Dresses for Women · Noor Studio Product Product name + key attribute Vitamin C Serum 15% with Ferulic Acid, 30ml Blog post The question or promise How to Store Natural Soap So It Lasts Longer Home Brand + what you sell Noor Studio · Handmade Linen Clothing For meta descriptions, Shopify suggests around 160 characters of natural, readable text. Write it like a shop window sign: what's here, why it's worth the click. Google will sometimes swap in text from the page instead, which is fine. A good description still gets used often enough to be worth ten minutes. The most common mistake I see: every product title tag is just the product name, identical to the H1, with "– Store Name" appended by the theme. That's acceptable for products. It's a waste on collections, which is where your best rankings come from. Step 3: Turn collection pages into landing pages Collection pages are the most underrated SEO asset on Shopify. "Linen dresses", "vitamin C serum", "oak dining tables": these are category searches with buying intent, and Google tends to rank category pages for them. A collection page that ranks usually has: A clear H1  that matches the search ("Linen Dresses", not "Summer Vibes ☀️"). A short intro above the grid  (40–80 words) that tells the shopper what's in the collection and who it's for. A longer section below the grid  (200–500 words) with buying guidance: how to choose, sizing, materials, care, delivery notes. Links to sibling and child collections , and to one or two guides. Filters that help shoppers  without spawning thousands of indexable URLs. I wrote a full walkthrough of this in  Shopify collection pages that rank , including what to do about filter URLs. Step 4: Fix product pages, starting with your best sellers Don't try to rewrite 800 product descriptions. Pull your top 20 products by revenue and your top 20 by Search Console impressions, and start there. For each one, check: The description is yours.  Supplier copy appears on dozens of other sites. Rewrite it in your own words with details only you know: how it fits, what it smells like, what customers ask about it. The answers to buying questions are on the page.  Sizing, materials, what's in the box, delivery time to the customer's country, returns. If your support inbox gets the same question about a product three times a week, that answer belongs on the product page. Here's how to  write product FAQs that answer real buying questions . Variants are handled sensibly.  One product with colour and size variants beats twelve near-identical products competing with each other. The URL handle is short and descriptive.   /products/linen-wrap-dress  beats  /products/ldw-2291-v3-new . If you change a handle on an existing product, create a  URL redirect  from the old address straight away. Out-of-stock products stay live  if they'll come back. Show the status clearly. Only delete and redirect products that are gone for good. A useful exercise: read your reviews for a product and note the words customers use. If twelve people say "runs small", your size guide should say it first. I go deeper on this in  using review themes to improve product copy . Step 5: Clean up images Images matter twice: for Google Images, and for page speed. Alt text.  Describe what's in the image, in context. "Woman wearing sage linen wrap dress, side view" is good. "linen dress best linen dress buy linen dress" is keyword stuffing, and Google's  image SEO guide  calls that out directly. In Shopify, click the image on the product page and choose "Edit alt text". File names.  Rename before uploading:  sage-linen-wrap-dress-side.jpg , not  IMG_4471.jpg . Size.  Upload at a sensible resolution. Shopify's CDN serves resized versions, but a 9MB original still slows things down in some themes and apps. Formats.  Google supports JPEG, PNG, WebP and AVIF among others. Shopify converts to modern formats where the browser supports them, so you mostly don't need to worry about this.  Step 6: How do I speed up my Shopify store? Speed is part of page experience. Google's  Core Web Vitals page  sets "good" thresholds at Largest Contentful Paint within 2.5 seconds, Interaction to Next Paint under 200 milliseconds, and Cumulative Layout Shift below 0.1. Google doesn't publish how much weight these carry, and a fast page with weak content won't outrank a slower page that answers the question better. But a slow mobile store loses shoppers regardless of rankings. On Shopify, speed problems almost always come from three places: Too many apps injecting scripts.  Every popup, widget and tracker adds weight. Uninstalling an app doesn't always remove its theme code, either. My  lean Shopify app stack guide  covers how to audit this. Heavy hero media.  Autoplay video and giant image sliders on the home page are the classic LCP killers. Old or heavily customised themes.  If your theme is several years old, moving to a current Online Store 2.0 theme often fixes more than any tweak. Check your Core Web Vitals report in Search Console, which uses real-user data, rather than chasing a perfect lab score. A note on chat widgets, since that's my world: a heavy third-party chat widget that loads on every page has a cost. A lightweight link-style WhatsApp button costs very little. That's one reason we made WhatFlow's theme-matched WhatsApp chat buttons free forever and kept them simple. Step 7: Collect real reviews and show them properly Reviews help SEO in two indirect ways. They add fresh, specific, customer-written text to product pages, and they can make a product eligible for review stars in search results if the markup is right. Google decides whether to show stars; valid markup only makes you eligible. What to do: Install one review app  and make sure it outputs review markup that matches what's visible on the page. Ask every customer after delivery , not just the happy ones. Email works. WhatsApp often gets a faster response in markets where customers live in WhatsApp. Don't fake, filter or incentivise  reviews in ways that break platform rules. If you want the detail on stars, eligibility and markup, read  product review schema and search stars explained . Here's a simple review request that a WhatsApp app like WhatFlow can send a few days after delivery, using an approved template:  Hi Aisha, it's Noor Studio. Your linen wrap dress was delivered on Tuesday. How's the fit? If you have a minute, a quick review helps other shoppers choose the right size: [review link]. Reply here if anything isn't right and we'll sort it. Step 8: Publish content that answers real questions Most Shopify blogs are a graveyard of "5 Summer Trends" posts. They don't rank and nobody reads them. Content that works for a store is narrower and more useful: Buying guides  for each main collection ("How to choose a linen dress for hot climates"). Comparison pages  for products customers confuse ("Vitamin C serum vs niacinamide: which first?"). Care and use guides  that support the purchase ("How to wash linen without shrinking it"). Policy explainers  written for humans ("How COD orders work with us"). Google's  helpful content guidance  leans hard on first-hand experience. You have that. You've packed the orders, answered the complaints, and know which products get returned and why. Write from that. The best source of topics is your own inbox. Every repeated customer question is a search query someone else is typing into Google. I've written a process for  mining your WhatsApp chats for content ideas . Once you have a library going, review it every quarter and update or merge anything that's gone stale. Step 9: Build internal links on purpose Internal links tell Google which pages matter and how they relate. They also keep shoppers moving. A simple structure for most stores: Main menu  links to top-level collections. Collections  link to sub-collections, sibling collections and one or two buying guides. Products  link back to their main collection (breadcrumbs do this) and to a care or sizing guide. Blog posts  link to the collections and products they discuss, using descriptive anchor text ("our linen wrap dresses", not "click here"). The footer  carries policies, contact, and your most important collections, not 60 links. A quick audit: open your five most important collections and count how many other pages on your site link to each. If the answer is "only the menu", add links from related guides and products. Step 10: Get your store and policies straight for AI answers too More shoppers now ask ChatGPT, Gemini or Google's AI Mode what to buy. Google says there are no extra requirements to appear in its AI features beyond normal SEO: pages must be indexed and eligible to show a snippet. In practice that means everything above, plus clear "About", shipping, returns and contact pages so any system describing your store gets the facts right. I cover this properly, including what llms.txt is and isn't, in  how to get your Shopify store mentioned in AI answers . The Shopify SEO checklist in one table Print this or paste it into a spreadsheet. Area Task Done? Crawl Store is public (no password page)  Crawl Search Console verified on primary domain  Crawl sitemap.xml submitted  Crawl Pages report checked for unindexed key URLs  Titles Unique title tag on every collection  Titles Meta descriptions on top 20 products and all collections  Collections Intro copy above the grid  Collections Buying guidance below the grid  Collections Links to sibling collections and guides  Products Original descriptions on top 20 products  Products Sizing, materials, delivery and returns answered on page  Products Short descriptive URL handles, with redirects for any changes  Images Descriptive alt text on product images  Images Descriptive file names on new uploads  Speed Unused apps removed, leftover theme code cleaned  Speed Core Web Vitals report checked on mobile  Reviews Review app installed, requests sent after delivery  Content 3–5 guides written from real customer questions  Links Each key collection linked from at least three other pages  Trust About, contact, shipping and returns pages complete  How do I know if Shopify SEO is working? Use Google Search Console, not your gut and not an SEO app's "score". Check monthly: Impressions and clicks per page  in the Performance report. Impressions rising first is the normal pattern; clicks follow. Queries per collection.  If your "linen dresses" collection is getting impressions for "linen dresses for women", you're on the right track. If it's showing for nothing, the page probably needs more substance. Indexing.  Are new products getting indexed within a reasonable time? Keep a simple log of what you changed and when. SEO results lag by weeks or months, and without a log you'll never know which change helped.  Where to start this week If you only have one afternoon: verify Search Console, submit the sitemap, and rewrite the copy on your three most important collections. That's the highest-return hour in Shopify SEO for most small stores. Then come back to product pages and content once you've seen what Google is already showing you for.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[seo]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Shopify vs Wix for selling online in 2026]]></title>
      <link>https://whatflow.io/blog/shopify-vs-wix-ecommerce</link>
      <guid isPermaLink="true">https://whatflow.io/blog/shopify-vs-wix-ecommerce</guid>
      <description><![CDATA[Shopify vs Wix for an online store: pricing, ecommerce features, apps, automation and WhatsApp support, from each company's own pages.]]></description>
      <content:encoded><![CDATA[Shopify vs Wix comes down to what the website is for. If selling products is the main job, Shopify is usually the better fit, because its admin, apps and automation are built around orders, including WhatsApp order updates. If the site is mainly a website (a studio, a service business, a portfolio) with a small shop attached, Wix is a perfectly good choice and often simpler to design. I've tried to keep this fair. Every fact about pricing and features comes from Shopify's and Wix's own pages, checked in November 2026. Where I have an opinion, I'll say so. What's the main difference between Shopify and Wix? Shopify  is an ecommerce platform first. Everything in the admin starts from products, orders, customers and checkout. Content pages and a blog exist, but they're secondary. Wix  is a website builder first, with ecommerce as one of many things it does. Wix's drag-and-drop editor gives you a lot of design freedom, and the same site can take bookings, sell event tickets, run a restaurant menu or sell products. That difference shows up everywhere: in how each one handles orders, which apps are available, and how much of your day-to-day work happens inside the platform. Shopify vs Wix pricing in 2026 Shopify As of November 2026,  Shopify's pricing page  lists: Plan Billed monthly Billed yearly (per month) Basic $25 $19 Grow $65 $49 Advanced $399 $299 Plus From $2,300 n/a There's a 3-day free trial, then $1 a month for the first three months on most plans. Using a payment provider other than Shopify Payments can add a Shopify transaction fee depending on your plan. Wix Wix's plans page  lists three plans that can accept payments:  Core  ("Basic eCommerce"),  Business  ("Standard eCommerce") and  Business Elite  ("Advanced eCommerce"). The cheaper Light plan doesn't include ecommerce features. A few things to know about reading Wix's prices: Displayed prices are for yearly subscriptions , paid in full upfront, shown as a monthly figure. Prices and currency vary by location.  Wix says US-dollar prices are shown for reference only. On the page I saw, the selling plans ranged from roughly $29 a month (Core) to roughly $159 a month (Business Elite). There's a 14-day money-back guarantee  on the first upgrade to a premium plan, rather than a free trial of the paid plan. Check both pages in your own country before deciding. Local pricing can change the comparison. What it adds up to At the entry level, the two are in a similar range. The real cost difference shows up later: which features you need that require a higher plan or a paid app, what your payment processing costs, and how much time you spend running things. Ecommerce features: what does each one do? Both platforms cover the basics well: product pages, variants, inventory, discounts, abandoned cart emails, shipping rates and taxes. Wix's  eCommerce page  highlights: Selling on your site, in person (Wix POS) and on marketplaces and social channels including Google, eBay, Etsy, Amazon, Facebook, Instagram and TikTok. Wix Payments plus PayPal, Stripe and dozens of other providers depending on location. Abandoned cart emails and other triggered actions. Discounted shipping labels from several carriers. Automated sales tax and VAT calculation. Physical products with up to 1,000 variants each, dropshipping, print-on-demand, digital products and subscriptions. AI tools for product descriptions and images. Shopify covers the same ground, and its strength is depth: a very large app store built only for commerce, Shopify Flow for automation, and a checkout used by a huge number of stores. Shopify Payments, though, is only available in  supported countries , so check yours. My take: for a store with a handful of products, either will do. As your catalogue, order volume and team grow, Shopify's ecosystem matters more. Design and ease of use Wix wins on design freedom. You can drag anything anywhere. If you've got a strong visual identity and want the site to look like nobody else's, Wix makes that easy without code. Shopify themes are more structured. You work with sections and blocks inside a theme's layout. That's less freedom, but it's also harder to break, and it's built around what converts for product pages. For most stores, a clean Shopify theme is enough. Both are easy for a beginner to get started on. Neither requires you to manage hosting or security. Apps and automation This is where the platforms diverge most for a growing store. Shopify  has the Shopify App Store, where apps are built specifically for commerce, and  Shopify Flow , a free automation app on Basic and higher plans. Flow lets you connect events across apps: "when an order is tagged high-risk, send a WhatsApp message and hold fulfilment", for example, if your apps support those steps. Wix  has the Wix App Market and its own built-in automations. They cover many common needs, especially for service businesses, and Wix bundles a lot of functionality natively, so you may need fewer apps. The question to ask isn't "how many apps exist?" It's "can the specific workflow I need run without me copying data by hand?" For order-heavy work like COD confirmation, shipping updates and review requests, Shopify's commerce-only app ecosystem plus Flow is usually the easier route. WhatsApp and customer support: Shopify vs Wix This is my area, so I'll be specific. On Wix Wix lets you connect a WhatsApp Business number to Wix Inbox. According to  Wix's own help article : You  can't start a conversation  with a contact who hasn't messaged you first. After a customer messages, you have  24 hours to reply , and each new message resets that window. Once connected, the number  can only be used through Wix Inbox or Wix Smart Chat , not the regular WhatsApp app. That works well for answering inbound questions. It's a limitation if you want to send order confirmations, COD confirmations or shipping updates, which are all business-initiated messages. On WhatsApp, those need pre-approved template messages under Meta's  messaging policy , and the Wix article doesn't cover templates. You may find third-party apps on the Wix App Market that do more; check what each one supports. On Shopify Shopify itself doesn't include WhatsApp messaging, but WhatsApp apps on the Shopify App Store can send templates, run a shared inbox and hook into orders. That's what WhatFlow does. WhatFlow's WhatsApp Business API app runs on Meta's official WhatsApp Cloud API and connects from inside Shopify admin. It handles both directions: a shared team inbox with no seat fees for inbound questions, and approved templates for order updates, COD confirmation with reply buttons, abandoned checkout messages and review requests. Because it has native Shopify Flow triggers and actions, a customer tapping "Cancel" on a COD confirmation can tag or cancel the Shopify order automatically. Every feature is on every plan, including the Free plan, and the same setup scales from a solo founder to a large support team.  If COD is a big part of your business, I'd look closely at this, and at how  WhatsApp COD confirmation compares with calling every customer . I explain the full flow in  turning WhatsApp order replies into Shopify actions . Shopify vs Wix side by side  Shopify Wix Built for Selling products Building websites, with ecommerce as one option Entry selling plan (Nov 2026) Basic: $25/mo monthly, $19/mo yearly Core: from roughly $29/mo on yearly billing (varies by location) Trial 3-day free trial, then $1/mo for 3 months on most plans 14-day money-back on first premium upgrade Design Theme sections and blocks Free-form drag and drop App ecosystem Shopify App Store, commerce-only Wix App Market, broad Automation Shopify Flow, free on Basic and up Wix's built-in automations Native WhatsApp Via apps Wix Inbox connection; inbound replies within 24 hours, can't start conversations Order-based WhatsApp (COD, shipping updates) Yes, via apps like WhatFlow with Flow Not covered by Wix's native connection Best for Product-focused stores, growing teams Service businesses, portfolios, design-led small shops So which should you choose? Choose  Wix  if: Your business is mainly services, bookings or content, and selling products is a side line. Design freedom matters more to you than commerce depth. You want one tool for a website that does many different things. Choose  Shopify  if: Selling products is the main point of the site. You expect to grow your catalogue, order volume or team. You want to run customer conversations, COD confirmations and order updates on WhatsApp without copying data by hand. My opinion, plainly: for a store whose business is selling products and talking to customers on WhatsApp, Shopify is the better fit. Not because Wix is bad, but because Shopify's whole ecosystem is pointed at that job.  Next steps If you're leaning towards Shopify, my guide to  your first 30 days on Shopify  walks through setup week by week. If you're also considering WordPress, read  Shopify vs WooCommerce . And for the bigger decision framework,  choose an ecommerce platform around the customer workflows you need .]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[shopify]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Shopify vs WooCommerce in 2026: which is easier to run and support?]]></title>
      <link>https://whatflow.io/blog/shopify-vs-woocommerce-customer-messaging</link>
      <guid isPermaLink="true">https://whatflow.io/blog/shopify-vs-woocommerce-customer-messaging</guid>
      <description><![CDATA[Shopify vs WooCommerce from the operations side: real costs, who fixes things when they break, and how easy it is to run WhatsApp support on each.]]></description>
      <content:encoded><![CDATA[Shopify vs WooCommerce comes down to who does the maintenance. Shopify is a hosted platform: you pay a monthly fee and Shopify runs the servers, security, updates and checkout. WooCommerce is a free, open-source WordPress plugin: you get more control and no platform fee, but you (or your developer) handle hosting, updates, backups and plugin conflicts. For most product sellers, Shopify is easier to run. That's the short answer. Here's the longer one, written from the operations side: what it costs in practice, what breaks, and how hard it is to answer customers quickly on each. All prices and facts below come from Shopify's and WooCommerce's own pages, checked in November 2026. What's the actual difference between Shopify and WooCommerce? Shopify  is software you rent. You sign up, pick a theme, add products and start selling. Shopify hosts the store, runs checkout, applies security updates and keeps everything compatible. You extend it with apps from the Shopify App Store. WooCommerce  is software you own and run. It's a free plugin for WordPress, made by Automattic, with over 7 million active installations listed on  WordPress.org . You install it on WordPress, on hosting you choose and pay for, and extend it with extensions and plugins. Neither is "better" in the abstract. They suit different people. Shopify vs WooCommerce: how much does each cost? Shopify As of November 2026,  Shopify's pricing page  lists: Plan Billed monthly Billed yearly (per month) Basic $25 $19 Grow $65 $49 Advanced $399 $299 Plus From $2,300 n/a There's a 3-day free trial, then $1 a month for the first three months on most plans. Hosting, SSL, checkout and security are included. On top of that you pay for any paid apps and themes, plus payment processing. If you use a payment provider other than Shopify Payments, Shopify can charge an extra transaction fee depending on your plan. WooCommerce WooCommerce's pricing page  describes the core plugin as free, with no monthly subscription and a $0 platform fee. It then lists the costs you'll actually pay: Hosting:  "$25 – $350/month for most stores", depending on traffic and performance. Extensions:  "$29 – $299/year per extension", optional. Payments:  WooPayments at roughly 2.50–2.90% + 30¢ per transaction, or your chosen processor's rates. Add a premium theme if you want one, and, the cost most people forget, the time or developer fees to keep it all updated. What it adds up to Say you're a small store and you need decent hosting, a few paid extensions (subscriptions, a better shipping calculator, a WhatsApp or SMS plugin) and occasional developer help. On WooCommerce's own numbers you're looking at hosting from $25 a month plus a few hundred dollars a year in extensions, before any developer time. On Shopify Basic you're at $19–25 a month plus whatever apps you add. For a tiny store, they're closer than "free vs paid" suggests. For a large store with high traffic, WooCommerce hosting gets more expensive, and so does Shopify at higher plans. The real difference isn't the invoice. It's the hours. Who fixes it when something breaks? This is the question I'd ask first, and it's where the two platforms differ most. WooCommerce is clear about responsibilities in its  self-service guide : You  update WordPress, WooCommerce, your theme and every plugin. You  make full backups before updating (with your host's help or a backup service). Core WooCommerce support runs through the  WordPress.org community forums . WooCommerce  doesn't support third-party plugins and themes ; you go to each developer. On Shopify, the platform itself is Shopify's job. There's no WordPress to update, no PHP version to check, no server to scale for a sale. Apps can still conflict or slow down your theme, and that's on you to manage, but the core store doesn't go down because a plugin update clashed with a host's PHP version. Picture the night before a big sale. On WooCommerce, a plugin auto-update breaks the checkout page at 11pm. Someone needs to spot it, roll back, and work out which plugin did it. On Shopify, checkout is Shopify's code, and a third-party app can't break it in the same way. If you have a developer on retainer, WooCommerce's flexibility is a real advantage. If you're a team of two who'd rather be answering customers, it's a real cost. How easy is it to run customer support on each? This is my world, so I'll be specific. Most stores I talk to in India, Pakistan, the Gulf, Brazil and Indonesia run support mainly on WhatsApp. So the question becomes: how easy is it to answer WhatsApp messages with order context, send order updates and confirm COD orders on each platform? On WooCommerce There are WhatsApp plugins and third-party services that connect to WooCommerce. Many work well. But the setup usually looks like this: A WhatsApp plugin or external service, which needs to stay compatible with your WordPress and WooCommerce versions. Often a separate dashboard outside WordPress for the actual inbox. Automation through the plugin's own rules, or through a connector service like Zapier for anything custom. Your hosting needs to handle webhooks reliably. None of that is hard for a developer. All of it is one more thing to maintain. On Shopify Shopify apps install into the Shopify admin, use Shopify's order and customer data directly, and can plug into  Shopify Flow , Shopify's automation app. Flow is free on the Basic, Grow, Advanced and Plus plans. That's what we built WhatFlow around. The WhatFlow WhatsApp Business API app runs on Meta's official WhatsApp Cloud API, connects through Meta's Embedded Signup from inside Shopify admin, and adds native Flow triggers and actions. So an order reply on WhatsApp can tag or cancel a Shopify order, and an incoming message can kick off a workflow, without a third-party connector in between. Your team works from one shared inbox with no seat fees, and every feature is on every plan, including the Free plan. It's the same setup for a two-person shop and a fifty-person support team.  If you want to see how that compares with stitching tools together, I wrote up  Shopify Flow WhatsApp automation vs a Zapier messaging chain  and  Shopify-native WhatsApp vs an external dashboard . Shopify vs WooCommerce side by side  Shopify WooCommerce What it is Hosted ecommerce platform Free open-source WordPress plugin Platform fee Monthly plan, from $25 ($19 yearly) as of Nov 2026 $0 Hosting Included You choose and pay; Woo estimates $25–$350/month for most stores Updates and security Handled by Shopify You update WordPress, Woo, theme and plugins Backups No servers to back up; export your own data if you want copies You make them, per Woo's own guide Extensions Shopify App Store apps Woo extensions ($29–$299/year each) and WordPress plugins Built-in automation Shopify Flow, free on Basic and up Via extensions or external connectors Payments Shopify Payments where available; extra fee for third-party providers on some plans WooPayments or any supported processor Code access Theme code, apps, APIs Everything, including server Content and blogging Good basic blog WordPress, the strongest blogging platform around Best for Sellers who want to spend time on products and customers WordPress users, content-heavy sites, teams with developers When is WooCommerce the better choice? I don't think WooCommerce is the wrong answer for everyone. It's a better fit when: You already run a big WordPress site  with years of content and traffic, and adding a store is a smaller job than migrating. Content is your main business  and products are secondary. You need deep customisation  of checkout or data that Shopify doesn't allow. You have a developer  (or are one) and enjoy owning the stack. You want full control over hosting and data location  for your own reasons. When is Shopify the better choice? For most people selling physical products, especially small teams: You don't want to maintain servers, plugins and backups. You want support and automation to plug into your store directly , through apps and Shopify Flow. You expect sales spikes  and don't want to think about hosting capacity. You're adding staff  and want them working in the same admin. My honest opinion, as someone who builds on Shopify: if your plan is to sell products and talk to customers on WhatsApp, Shopify gets you there with less to look after. That's not because WooCommerce can't do it. It's because on Shopify, far fewer of the moving parts are your problem.  How to decide this week Write down the five things your store has to do every day: take orders, confirm COD, send shipping updates, answer pre-sale questions, handle returns. Then for each platform, ask who's responsible when that thing breaks. I go through that exercise in more detail in  choosing an ecommerce platform around your customer workflows . If you're still weighing up other options, my  Shopify vs Wix comparison  uses the same approach, and if you've picked Shopify,  your first 30 days on Shopify  is the next read.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[shopify]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Starting a Shopify store: your first 30 days, step by step]]></title>
      <link>https://whatflow.io/blog/start-shopify-store-first-30-days</link>
      <guid isPermaLink="true">https://whatflow.io/blog/start-shopify-store-first-30-days</guid>
      <description><![CDATA[A week-by-week plan for starting a Shopify store: setup, products, policies, payments, shipping, a support channel, test orders and launch.]]></description>
      <content:encoded><![CDATA[Starting a Shopify store takes about 30 days of part-time work if you do it properly. Spend week one on your plan, plan choice and theme; week two on products, pages and policies; week three on payments, shipping and a customer support channel; and week four on test orders, basic SEO and launch. Don't install a pile of apps on day one. I talk to new Shopify merchants every week, and the stores that struggle in month two almost never failed because of the theme. They failed because nobody could get an answer to "do you deliver to my city?", the returns policy was a template nobody read, or COD orders were shipping to people who never meant to buy. This is the plan I'd follow if I were starting a Shopify store today. It assumes you're selling physical products, you're doing it mostly yourself, and you might be in a market where customers expect WhatsApp and cash on delivery. Before day one: what do you need ready? You don't need much, but have these to hand: Five to ten products  you can actually ship, with photos. A business name , and ideally a matching domain you can register. Your business address and tax details  for your country. A bank account  for payouts. A rough idea of who you're selling to.  If that's fuzzy, read  defining your store audience and brand promise  first. If you haven't sold anything yet, it's worth  validating your niche by talking to customers  before you spend a month building. Week 1 (days 1–7): plan, account and theme Day 1: Sign up and pick a plan As of November 2026,  Shopify's pricing page  lists a 3-day free trial, followed on most plans by $1 a month for the first three months. After that, the plans are: Plan Billed monthly Billed yearly (per month) Basic $25 $19 Grow $65 $49 Advanced $399 $299 Plus From $2,300 n/a Start on Basic. You can upgrade when you need lower card rates or more staff accounts, and you'll know more about your business in three months than you do today. Prices are in USD and Shopify shows local pricing in some regions, so check the page yourself before you commit. Days 2–3: Store details and domain In Settings, fill in: Store name, contact email and business address.  Your address appears on invoices and some policies. Store currency.  Pick the currency you'll be paid in. Changing it after your first orders is a pain. Order ID format.  Small thing, but a prefix like  NS-1001  makes support conversations easier. Then connect a domain. Buy it through Shopify or connect one you own. Use a short, brandable name rather than stuffing keywords in. Days 4–7: Choose a theme and set up the basics Pick a free Shopify theme. Seriously. Shopify's free themes are fast, maintained and good enough for most new stores. A paid theme won't fix weak product photos. Set up: Logo, colours and fonts.  Keep it simple and readable on a phone. Header menu:  Home, your two to four main collections, About, Contact. Footer:  policies, contact details, social links. Mobile first.  Check every change on your phone. Most of your traffic will be mobile, especially if it comes from Instagram, TikTok or WhatsApp. Week 2 (days 8–14): products, pages and policies Days 8–11: Add products properly This is where to spend real time. For each product: Title:  what it is, clearly. "Sage Linen Wrap Dress", not "Summer Vibes Dress 🌿". Photos:  at least four. Front, back, detail, and one in use or on a person. Natural light beats a bad studio. Description in your own words.  Never paste supplier copy. Cover what it is, who it's for, materials, size and fit, care, and what's in the box. Variants  for size and colour, not separate products. Price, compare-at price only if it's a genuine previous price, cost per item  (so Shopify can show your margins),  SKU and inventory. Product category  from Shopify's list, plus product type and a few tags. Search engine listing:  a short title tag and meta description. Then group products into  collections . Start with two to four. "Linen Dresses", "Linen Shirts", "Best Sellers" is plenty for a small store. Days 12–13: Write your pages You need four pages before launch: About:  who you are, where you're based, why you started. Real names and a real photo build trust far more than a stock image. Contact:  email, WhatsApp number, hours, and how fast you reply. Shipping:  where you ship, how long it takes, what it costs, whether COD is available. FAQ:  the ten questions you'd expect. You'll rewrite this after a month of real questions. Day 14: Set up your policies In Settings > Policies, Shopify lets you add a return and refund policy, privacy policy, terms of service, shipping policy and contact information, plus a legal notice and subscription policy if you need them. According to the  Shopify Help Center , the return and refund policy, terms of service, shipping policy and contact information can be generated automatically from your store settings, and the privacy policy has its own automated settings. Use the automation as a starting point, then read every line. Your returns policy in particular should say, in plain words: How many days customers have to return. What condition items must be in. Who pays return shipping. How refunds work for COD orders (bank transfer? store credit?). How to start a return. ("Message us on WhatsApp with your order number" is a perfectly good answer.) Week 3 (days 15–21): payments, shipping and a support channel Days 15–16: Payments The simplest option is Shopify Payments, but it's  only available in supported countries . The list includes the US, Canada, Australia, much of Europe, Japan and the UAE, among others. India and Pakistan, for example, aren't on it as of November 2026. If you can't use Shopify Payments, add a third-party payment provider that works in your country. Shopify's pricing page notes that using a provider other than Shopify Payments can mean an extra Shopify transaction fee depending on your plan, so factor that in. In many markets you'll also want  cash on delivery . Add it as a manual payment method in your payment settings. COD increases orders and also increases fake, impulse and unreachable orders. Plan for that now (see day 19). Days 17–18: Shipping Shopify supports  three types of shipping rates : flat rates, free shipping and carrier-calculated rates. For a new store, I'd do this: Set up shipping zones  only for places you can actually deliver to reliably. Use simple flat rates.  "AED 15 standard, free over AED 200" is easy to understand and easy to promise. Weigh your products  and enter weights, even if you use flat rates now. Write delivery times on the shipping page and product pages.  "2–4 business days in the UAE" answers the most common pre-purchase question before anyone has to ask. Taxes depend entirely on where you and your customers are. Check your local rules or ask an accountant. Shopify's tax settings can calculate a lot for you once you've told it what to collect. Days 19–21: Set up a support channel (don't skip this) This is the step most first-time store owners leave for "later", and it's the one I'd argue hardest for. New stores have no reviews and no reputation. The fastest way to build trust is to be easy to reach and quick to answer. If your customers use WhatsApp, which is most of them in South Asia, the Gulf, Latin America, Indonesia and much of Europe, make WhatsApp your main support channel. Here's the minimum setup: A WhatsApp button on your store , on product pages and the contact page. I wrote a full guide to  adding a WhatsApp chat button to Shopify . A business number  that isn't your personal phone, so you can hand it to a team member later. Five saved replies  for the questions you know are coming: delivery time, COD, sizing, returns, order status. A COD confirmation message  if you take cash on delivery. An away message  with your hours. With WhatFlow, you've got two ways to do this: WhatFlow Chat Automation  connects as a linked device, so you don't need a Meta Business account. It's built for small and startup stores that want to get going fast. WhatFlow WhatsApp Business API  uses the official Meta WhatsApp Cloud API, connected through Meta's Embedded Signup from your Shopify admin. You get a shared team inbox with no seat fees, message templates, COD confirmation with reply buttons, order and shipping updates, abandoned checkout messages, saved replies and native Shopify Flow triggers and actions. Every feature is on every plan, including the Free plan, and because it's built on Meta's official API with no per-seat pricing, the same setup still works when you're a 30-person team sending thousands of order updates a day. Meta's own WhatsApp message charges are billed separately from the app. I've laid out the differences in  WhatFlow Chat Automation vs Business API . If you plan to send order updates or COD confirmations at any volume, I'd start on the Business API's Free plan.  Here's a COD confirmation that works well. On the Business API it goes out as an approved utility template with two reply buttons: Hi Bilal, thanks for your order #NS-1004 from Noor Studio: 1 × Sage Linen Wrap Dress (M), total PKR 6,500, cash on delivery to Gulberg, Lahore. Please confirm so we can ship it today.
[Confirm order] [Cancel] And a saved reply for the most common pre-purchase question: Hi! Yes, we deliver across Lahore in 1–2 working days and across Pakistan in 3–5. Cash on delivery is available everywhere. Want me to help you pick a size? One rule to remember: on WhatsApp, customers need to have opted in before you message them first, and outside the 24-hour window after a customer's last message you can only send pre-approved templates. Meta's  WhatsApp Business Messaging Policy  has the details. Week 4 (days 22–30): test, tidy and launch Days 22–24: Place test orders Place at least three test orders before launch: A card or online payment order , using your payment provider's test mode or a real low-value product you then refund. A COD order , from your own phone, so you see exactly what the customer sees, including your WhatsApp confirmation. An order to a far-away shipping zone , to check rates and delivery estimates. For each one, check the order confirmation email, the WhatsApp message (if you set one up), the order in admin, and how you'd fulfil it. Then try to return one. If your own returns process confuses you, it'll confuse customers. Days 25–26: Basic SEO and analytics You don't need to be an SEO expert at launch. Do the basics: Verify Google Search Console  and  submit your sitemap . Shopify generates it at  yourdomain.com/sitemap.xml . Write title tags and meta descriptions  for your home page and collections. Add alt text  to product images. Write two or three sentences of intro copy  on each collection. When you're ready for more, my  Shopify SEO checklist  goes step by step. Day 27: Audit your apps Look at every app you've installed during setup. For each one: do I need this before my first ten orders? If not, uninstall it, and check whether it left code in your theme. I've written about  building a lean Shopify app stack . A brand-new store usually needs a WhatsApp or chat app, a review app, and maybe one email tool. That's it. Days 28–29: Final checks on your phone Go through the store on your phone like a stranger would: Can you find the delivery time without searching? Is the returns policy one tap away? Does the WhatsApp button work and open the right number? Do product photos load quickly on mobile data? Does checkout show the right shipping options and COD? Ask two friends to do the same and tell you where they hesitated. Day 30: Launch Remove the password. In Shopify admin, go to Online Store, switch from private to public, and choose  Launch store , as described in  Shopify's help page . On the mobile app you may be asked to pick a paid plan or add a business address first. Then tell people. Your first customers are almost always people who already know you: friends, followers, your WhatsApp contacts who've agreed to hear from you. Don't blast your whole phonebook. Message people individually, ask for honest feedback, and make it easy to reply. The 30-day checklist Week Task Done? 1 Plan chosen, store details and address filled in  1 Domain connected  1 Free theme set up, checked on mobile  2 5–10 products with photos, original descriptions, variants, categories  2 2–4 collections  2 About, Contact, Shipping, FAQ pages  2 Policies set and read line by line  3 Payment provider connected; COD added if needed  3 Shipping zones and simple rates  3 WhatsApp button, business number, saved replies  3 COD confirmation message (if you take COD)  4 Three test orders, including one return  4 Search Console verified, sitemap submitted  4 Unneeded apps removed  4 Store launched and first customers contacted  What happens after day 30? The first month after launch is mostly about listening. Every question a customer asks on WhatsApp tells you something your store didn't. Fix the product page, update the FAQ, tweak the saved reply. Two things I'd start straight away: Ask for reviews from your first customers.  A new store with zero reviews looks risky. Here's how to  collect your first product reviews . Track a handful of numbers weekly:  orders, conversion rate, COD confirmation rate, return rate, and how long customers wait for a WhatsApp reply. And if your launch lands close to November, read  your first Black Friday as a new Shopify store  before you plan a big sale. Trust comes before traffic.  One last thing Most people overthink the theme and underthink the conversation. A plain store that answers every WhatsApp message within the hour will outsell a beautiful one that takes two days to reply. Get the basics in place, launch, and keep talking to your customers.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[shopify]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Reduce subscription churn on WhatsApp: skips, swaps, payments]]></title>
      <link>https://whatflow.io/blog/subscription-churn-whatsapp-shopify</link>
      <guid isPermaLink="true">https://whatflow.io/blog/subscription-churn-whatsapp-shopify</guid>
      <description><![CDATA[Use WhatsApp to reduce subscription churn on Shopify: pre-renewal reminders with skip, swap and pause options, plus fast failed-payment nudges.]]></description>
      <content:encoded><![CDATA[To reduce subscription churn, catch subscribers before they cancel: send a WhatsApp reminder a few days before each renewal with clear options to skip, swap or pause, and follow up quickly when a payment fails. The two cancellation reasons merchants tell me about most often, "I've got too much product" and "my card changed", can both be fixed in a two-line chat. Why do subscribers churn? Subscription churn  is the share of subscribers who stop in a given period. It comes in two kinds, and they need different fixes. Voluntary churn:  the customer decides to cancel. Too much product stacked up, they're travelling, they want to try a different flavour, money's tight this month, or they simply forgot they'd subscribed and got a surprise charge. Involuntary churn:  the subscription ends because a payment failed. Expired card, new card after fraud, insufficient funds on the renewal day. The customer often didn't want to leave at all. WhatsApp helps with both, because it's fast, it's read, and the customer can reply. For a one-off retention send, start with the eligible repeat buyers you can actually identify in Shopify, or upload an opted-in spreadsheet to WhatFlow Team Inbox. Personalize an approved template and test the product link before scheduling. If someone replies with a question, pick up that conversation in the same inbox instead of sending another automatic reminder. See the  broadcast setup and checks . What Shopify gives you to work with Shopify subscriptions run through an app: either Shopify's own free Shopify Subscriptions app or a third-party subscription app from the Shopify App Store, according to  Shopify's subscriptions documentation . With Shopify Subscriptions, merchants can skip and pause subscriptions, and customers can manage some of this from their customer account. On the automation side, Shopify Flow includes subscription triggers such as: Subscription billing attempt failure Subscription billing attempt success Subscription contract created  and  Subscription contract updated WhatFlow adds WhatsApp actions to Shopify Flow, so any of those triggers can send an approved WhatsApp template. I'll be clear about the boundary: WhatFlow doesn't integrate directly with specific subscription apps. It works through Shopify Flow, so what you can automate depends on the events your subscription setup sends to Flow. Check your app's Flow triggers before you plan anything. Our guide to  connecting WhatsApp to your Shopify app workflows  explains how to check. Send a pre-renewal reminder with skip, swap and pause Most voluntary churn is a customer who'd have stayed if they'd been asked "do you need this one?" a few days before the charge. Hi Nadia, your next Morning Ritual box ships on  Thursday, Nov 12  and we'll charge  $34  on Tuesday. Need a change? [Ship as usual] [Skip this month] [Swap flavour] Why it works: It names the date and the amount, so there's no surprise charge. "Skip" is one tap, which beats cancelling just to avoid one box. "Swap" handles the "I'm bored of this" reason. How to time it.  Shopify Flow's trigger list doesn't include a generic "renewal in three days" event, so check what your subscription app exposes. Some apps add an upcoming-order or upcoming-billing trigger to Flow. If yours does, connect it to WhatFlow's send-template action. If it doesn't, your app's own reminder notifications may be the better source for this message, and WhatsApp can handle the replies. What happens when they tap.  The tap comes back to your WhatsApp inbox, and WhatFlow's incoming-message trigger in Flow can route it: tag the customer, notify the person who handles subscriptions, or post it to a team channel. The skip or swap itself happens in your subscription app or the customer's account, so either your team makes the change or you reply with a link to the customer's account page.  Routing incoming WhatsApp messages with Shopify Flow  shows the pattern, and  designing quick reply buttons  helps you choose button wording. Failed payment nudges that actually get cards updated Involuntary churn is the most frustrating kind, because the customer didn't choose it. A WhatsApp message usually gets read faster than an email that lands next to the bank's own fraud alerts. Set it up with Shopify Flow: Trigger:  Subscription billing attempt failure. Action:  WhatFlow's send-template action, with an approved template like the one below. Optional:  tag the customer so your team can see who's in a failed-payment state. Hi Nadia, we couldn't process the payment for your Morning Ritual subscription. It's usually an expired or replaced card. You can update it securely here: morningritual.co/account Your next box is on hold until then. Questions? Reply here. Three rules: Never ask for card details in chat.  Always link to the secure account or update page. Scammers impersonate stores on WhatsApp with exactly this kind of message, so make yours easy to trust: same sender, your store name, your domain. Our guide to  protecting customers from WhatsApp scams that impersonate your store  covers how to tell customers what you'll never ask for. Know your retry schedule.  Your subscription app decides how often it retries a failed payment and what happens after the last attempt. Line your messages up with it: one after the first failure, one before the final retry. Stop when it's fixed.  If you have a billing attempt success trigger, use it to remove the failed-payment tag so nobody gets chased after they've paid. Offer a pause before a cancel When someone says "cancel", ask one question, once: Totally fine, I can cancel that for you now. Before I do: would a pause help instead? We can hold your subscription for one, two or three months and pick up where you left off. If not, just say "cancel" and it's done. That's it. If they say cancel, cancel it and confirm. Don't send a second save attempt, and don't make them email somewhere else to finish. A pause works because many cancellations are about timing, not the product. Someone moving house or travelling for a month doesn't hate your coffee. Swaps keep subscriptions interesting "I'm bored of it" is a common reason to leave anything on repeat. If your products have variety (flavours, scents, colours, sizes), make swaps easy and mention them before boredom sets in. Hi Nadia, you've had Hazelnut for four months running. This month we've got a small batch of Cardamom, if you'd like to swap just this box. Reply SWAP and we'll change it. The same thinking applies to one-off consumables; our guide to  replenishment reminders  covers the non-subscription version. Measure churn simply You don't need a dashboard. Once a month: Monthly churn rate = subscriptions cancelled during the month ÷ active subscriptions at the start of the month. Track voluntary and involuntary separately, and note which messages you changed. If skips go up and cancellations go down, the pre-renewal reminder is doing its job. Say you start the month with 400 subscribers and 24 cancel: that's 6%. If next month 30 skip and 16 cancel, you've kept people who would have left. A subscription message calendar Put together, a lean WhatsApp plan for subscribers looks like this: When Message Trigger Subscription starts Welcome: what arrives when, how to skip or pause Subscription contract created A few days before each renewal Reminder with skip, swap and keep options Your subscription app's upcoming-order trigger, if it has one Payment fails Secure link to update the card Subscription billing attempt failure Before the final retry Second, shorter nudge Your retry schedule Payment succeeds after a failure Short thank-you, tag removed Subscription billing attempt success Cancellation request One pause offer, then cancel Customer message in the chat Every business-initiated message in that table needs a Meta-approved template and the customer's opt-in. Keep the renewal reminder strictly about the order (date, amount, options) so it stays clearly transactional.  When someone does leave Thank them, confirm the cancellation, and leave the door open: Cancelled, no further charges. Thanks for being a subscriber, Nadia. If you ever want to come back, message here and we'll set it up in a minute. A few months later, a single, useful win-back message is fair game if they've opted in.  Building a customer win-back campaign  covers how to make it about a reason to return rather than a discount.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[retention]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Do trust badges work on Shopify? What to show instead of badge clutter]]></title>
      <link>https://whatflow.io/blog/trust-badges-shopify-what-works</link>
      <guid isPermaLink="true">https://whatflow.io/blog/trust-badges-shopify-what-works</guid>
      <description><![CDATA[Generic 'secure checkout' badges say little. Here's what shoppers actually check before buying, and how to show it near your Add to cart button.]]></description>
      <content:encoded><![CDATA[Trust badges on Shopify work only when they say something specific and true that the shopper was actually worried about. A wall of "100% Secure" and "Guaranteed Safe Checkout" icons doesn't. Instead, put four things near Add to cart: when it'll arrive, how returns work, real reviews, and a real way to ask a question before buying, like a WhatsApp chat button. I'm not going to quote you a conversion lift. I've seen the numbers that float around ("badges boost sales by X%") and I've never been able to trace one back to a study I'd bet a store on. What I can tell you is what shoppers ask us, every day, in WhatsApp chats on the stores we work with. Not one of those questions is "is your SSL certificate valid?" What is a trust badge? A  trust badge  is a small icon or label on a store, usually near the price or checkout, meant to reassure a shopper that buying is safe. They come in a few flavours: Payment logos:  Visa, Mastercard, PayPal, Apple Pay, cash on delivery. Security seals:  "SSL secured", antivirus brand seals, padlocks. Guarantee badges:  "30-day money back", "free returns", "lifetime warranty". Third-party certifications:  organic, cruelty-free, B Corp, safety standards. Review and rating badges:  star ratings from your review app or a third-party review site. Some of these carry real information. Some are decoration. The trick is telling which is which. Do trust badges actually work? The honest answer: the badge itself rarely does the work. The information behind it does. Think about what a shopper is really unsure about on a product page from a store they've never heard of: Is this a real business, or will my money disappear? When will it actually arrive? What if it doesn't fit, or it's broken? Is the product as good as the photos? Can I ask someone a question before I pay? A "Guaranteed Safe Checkout" graphic answers none of those. A line that says "Delivered in 2–4 days in the UAE, free returns within 14 days" answers two of them in one sentence. If you want proof for your own store, test it.  Testing social proof on a product page  explains how to run a simple before/after without fooling yourself with small numbers. Which trust badges can backfire? "SSL secure" and "secure checkout" badges.  Every Shopify store runs on HTTPS, and Shopify says it is  certified Level 1 PCI DSS compliant , with that compliance extending by default to all stores on the platform. A badge repeating this is like a restaurant sign saying "We have plates." It's not harmful, but it takes space you could use for something useful. Seals from services you don't pay for.  Some themes and apps ship with antivirus or "verified" seals as decoration. If you don't actually hold that certification or subscription, take it down. Showing a seal you haven't earned misleads shoppers, and it can land you in trouble under consumer protection law. Guarantees your policy doesn't match.  A "30-day money back guarantee" badge next to a returns policy that says 14 days, store credit only, is worse than no badge. A customer will screenshot both and send them to you. Payment logos you don't accept.  If you show Apple Pay and it isn't enabled, the shopper finds out at the worst possible moment. Fake urgency and fake counts.  "27 people are viewing this" when they aren't. Shoppers have learned to spot these, and it undoes the trust everything else built. What to show instead: the signals shoppers actually check Here's the replacement. Each one answers a real question. Signal What it answers Where to put it Delivery estimate by region "When will it arrive?" Directly under the price Returns summary in one line, linked to the full policy "What if it's wrong?" Under Add to cart Real reviews, including some critical ones "Is it actually good?" Star rating near the title, full reviews below A WhatsApp chat button with a reply-time promise "Can I ask someone?" Near Add to cart, not floating over it Payment methods you really accept, including COD "Can I pay how I want?" Under Add to cart Business name, location and contact details "Is this a real company?" Footer and a proper About page Real certifications with a link to verify "Is the claim true?" Near the specific claim Clear policies Shopify lets you  add store policies  for returns and refunds, privacy, terms of service, shipping and contact information, and links them in the footer of your checkout pages. Most stores stop there. Don't. Pull a one-line summary of the returns and shipping policy onto the product page itself, in plain words: Free delivery over AED 150. Arrives in 2–4 days. Changed your mind? Return within 14 days for a full refund. A real contact option This is the one I'd add first. A visible way to ask a human a question, before buying, is a stronger trust signal than any seal, because a fake store can't fake a fast, knowledgeable reply. WhatFlow's WhatsApp chat buttons are matched to your theme and free forever, so they look like part of your store rather than a bolted-on widget. Pair the button with a pre-filled message and an honest expectation: Questions about sizing or delivery? Chat with us on WhatsApp. We usually reply within an hour, 9am–9pm. Then actually reply within an hour. If you're setting one up,  adding a WhatsApp chat button to Shopify  covers placement, and you can see the free buttons on the  chat button page .  Real reviews (including the bad ones) A product with 4.6 stars from 80 reviews, including a few honest three-star complaints, looks more believable than a perfect 5.0 from 12. Shoppers read the low ones on purpose. Show them, and show your replies.  Product reviews vs store reviews  explains which kind belongs where on the page. Delivery information that's specific "Fast shipping" is a badge. "Order by 2pm, ships today, arrives Thursday in Riyadh" is information. If you offer cash on delivery, say so near the price, because in many markets that alone settles the "is this a scam?" question. How to lay this out on mobile Most of your shoppers are on a phone, and that's where badge clutter does the most damage. Six icons in a row become a grey smear that pushes the Add to cart button down the screen. A layout I like for mobile, top to bottom: Title and star rating (tappable, jumps to reviews) Price and delivery estimate Variant picker Add to cart One line: returns summary and accepted payment methods "Questions? Chat on WhatsApp" link or button Description, then reviews Make sure the chat button and review widget don't fight for the same corner.  Making review widgets and WhatsApp buttons work together on mobile  covers the common clashes. A quick badge audit for your store Open your best-selling product page on your phone and go through this: Every badge on the page is something I can prove if a customer asks. Payment icons match what's actually enabled at checkout. Any guarantee badge matches my written returns policy exactly. Delivery time is stated in days, not "fast". There's a way to ask a question that a human answers. Reviews are real and include some critical ones. The Add to cart button is visible without scrolling. Anything that fails, fix or remove. The broader  product-page trust checklist  goes further, and  reducing cart uncertainty with clear information  covers the checkout side.  The badge that matters most If I could only keep one thing from this list, it'd be the WhatsApp button with a real person behind it. A badge says "trust us". A quick, helpful answer to "will this fit a queen bed?" shows it.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[reviews]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[How to use AI in a small Shopify business (and where not to)]]></title>
      <link>https://whatflow.io/blog/use-ai-small-shopify-business</link>
      <guid isPermaLink="true">https://whatflow.io/blog/use-ai-small-shopify-business</guid>
      <description><![CDATA[Where AI genuinely saves a small Shopify team time (drafts, data questions, images, workflows) and where it quietly costs you customers.]]></description>
      <content:encoded><![CDATA[The best way to use AI in a small Shopify business is as a fast first-draft writer and data assistant, never as the final word. Use it to draft product copy, edit images, query your sales data and sketch Shopify Flow workflows. Don't let it invent product facts, reply to customers unsupervised, write your policies alone, or fill your blog. A person checks everything that reaches a customer. That's my position after a couple of years of watching merchants use these tools. AI saves real hours on the boring parts of running a store. It also creates a new, quiet kind of mistake: the confident wrong answer that nobody checked. What AI tools does Shopify already include? Before you pay for anything, look at what's in your admin. According to Shopify's  AI-powered tools page , Shopify includes: Sidekick , an AI assistant in the admin that can give guidance, generate content, complete tasks and build custom apps. Text generation  in the editors for product descriptions, pages, blog posts, Shopify Messaging emails and theme content. Image editing  in the file editor, such as changing an image from a text prompt or replacing a background with a colour. Smaller assists  like product category suggestions, suggested replies in Shopify Inbox, customer segment descriptions and analytics projections. Tinker , a free mobile app with AI tools for images, video and brand assets. Shopify says many of these come at no extra cost, but availability varies by plan, device and language. Sidekick  has grown into the most useful of these. It can handle multi-step tasks, build  Shopify Flow  workflows, write and run code to forecast or summarise your store data, and follow instructions you save as skills. Importantly, Shopify says it presents changes for your review before applying them. Keep it that way. How to use AI for Shopify: where it genuinely helps Here's where I've seen AI pay for itself, roughly in order of value. 1. Asking questions about your own data This is underrated. Instead of building reports, ask Sidekick things like: "Which products had the most refunds last quarter, and what reasons were given?" "What share of last month's orders were cash on delivery, by city?" "Compare repeat purchase rate for customers who bought the serum vs the cleanser first." You still need to sanity-check the numbers against a report you trust, but it gets you to the right question in minutes instead of an afternoon with spreadsheets. 2. First drafts of product descriptions Say you sell skincare and you're adding a new vitamin C serum. Give the AI the facts: ingredients list, concentration, size, skin types, how to use, what customers asked about your last serum. Ask for a draft in your brand voice. Then edit. Add the detail only you know ("the dropper gives about 4 drops per pump, which is all you need"). Remove anything it made up. Unedited AI descriptions sound like every other store's, and they occasionally include specifications that don't exist. 3. Image clean-up Background removal, colour backgrounds, cropping variations for different placements. For a small store without a photographer, this is a real time saver. Don't use AI to change what the product looks like. If the photo doesn't match what arrives, you'll pay for it in returns. 4. Drafting automations Sidekick can draft Shopify Flow workflows from a plain-language description: "When an order with COD as the payment method is created, wait 10 minutes and send a WhatsApp confirmation template." It's a faster starting point than building from scratch. This is where WhatFlow fits in. WhatFlow has native Flow triggers and actions for WhatsApp, so Sidekick can help you sketch a workflow that sends a WhatFlow template or reacts to a customer's WhatsApp reply. You still review the workflow, test it on your own order, and turn it on yourself. I've written a step-by-step guide to  using Sidekick to draft WhatsApp workflows . Save the repeatable part of a reply in WhatFlow, then check the facts before you send it. Agents can personalize a canned response, keep a draft in the thread, and put the internal context in a private note. Search inside the conversation if you need to verify what another agent promised. The  Inbox walkthrough  shows when to use each tool.  5. Support reply drafts AI is good at turning your messy notes into a clear, polite reply. It's bad at knowing whether the order actually shipped. Use it to draft, from your real policy text, with a person checking the facts before sending. I go deep on how to do that safely in  using AI for support drafts while keeping answers accurate . A practical approach: use AI once to improve your saved replies, then use the saved replies every day. That way the human-checked version is what customers see. Here's an example of a saved reply you might polish with AI and then lock in: Hi Sara, thanks for checking. Your order #NS-1042 left our warehouse yesterday with Aramex and should reach Dubai Marina by Thursday. You'll get a tracking update here on WhatsApp when it's out for delivery. Anything else I can help with? For more on keeping saved replies human, see  saved replies that don't sound robotic . 6. Translation If you sell across languages (Arabic and English in the Gulf, Portuguese and Spanish in Latin America), AI translation is a good first pass for product pages and saved replies. Have a native speaker check anything customer-facing, especially sizing, ingredients and returns terms. I covered the practical side in  planning multilingual customer messages . 7. Summarising feedback Paste in a month of review text (no customer names) and ask for the top recurring complaints and compliments. It's a quick way to spot "runs small" or "lid leaks" across fifty reviews. Where not to use AI This is the part most AI guides skip. Don't let it state facts it can't know Delivery times, stock levels, ingredient safety, whether a product is suitable during pregnancy, warranty terms. AI will answer these confidently and sometimes wrongly. Say a customer messages at 11pm asking if your serum is safe during pregnancy. An AI-generated "yes, it's gentle and safe!" is a liability. The right answer comes from your product documentation or a "please check with your doctor" reply your team wrote and approved. Don't let it reply to customers unsupervised For a small store, every customer conversation is precious. An AI agent that answers "where's my order?" with a made-up date, or approves a refund your policy doesn't allow, damages trust faster than a slow reply. If you use any automated responder, keep it to things that can't be wrong: hours, links, "a person will reply shortly". For the record: WhatFlow has no built-in AI bot that answers customers on its own. We've focused on making it fast for a person to give a good answer: a shared inbox, saved replies, catalog sharing, and Flow automations for the predictable messages like order and shipping updates. If you want AI help, bring the AI you already pay for.  WhatFlow's MCP connector  lets Claude, ChatGPT or Cursor read your Live Inbox chats, look up the Shopify order and draft a reply, and with draft mode on, nothing is sent until a person on your team presses Send. There are no per-resolution AI fees on top. Don't let it write your policies alone Returns, privacy and terms have legal weight. Shopify can generate policy templates from your settings and Sidekick can help insert them, which is a fine starting point. But read every line, and get proper advice for anything you're unsure about. Don't fill your blog with generic AI posts Google's  helpful content guidance  emphasises first-hand experience and suggests telling readers when automation played a substantial role. A hundred AI posts that say what every other site says won't rank, and won't get you cited in AI answers either. Write fewer posts, from your real customer questions. Here's how to  mine your WhatsApp chats for content ideas . Don't fake social proof No AI-written reviews, no AI-generated "customer" photos, no invented testimonials. It's dishonest, and in many places it breaks consumer protection rules. Don't paste customer data into tools you haven't checked Customer names, phone numbers, addresses and order histories shouldn't go into a public AI chatbot. Use tools inside Shopify where possible, and strip personal details from anything else. A quick guide: AI or human? Task AI drafts? Human must… Product descriptions Yes Add real details, check every spec Image backgrounds and crops Yes Make sure the product looks like the real thing Data questions Yes Spot-check numbers against a report Flow workflows Yes Review, test on your own order, then turn on Saved replies Yes, once Approve the final version Live customer replies Not unsupervised Check facts and send Translations Yes Native speaker checks customer-facing text Policies Template only Read every line, get advice if unsure Blog posts Outline and editing help Write from first-hand experience Reviews and testimonials Never Collect real ones  Where to start Pick one boring job that eats your week, probably product descriptions or weekly reporting, and try Sidekick on it for a month. Keep a note of what it got wrong. If the time saved beats the time spent checking, expand to the next job. If you're deciding what to automate at all, my guide to  choosing your first Shopify automation  is a good companion to this one.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[operations]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[How to validate a product idea by talking to customers on WhatsApp]]></title>
      <link>https://whatflow.io/blog/validate-product-niche-customer-conversations</link>
      <guid isPermaLink="true">https://whatflow.io/blog/validate-product-niche-customer-conversations</guid>
      <description><![CDATA[Twenty honest WhatsApp conversations and one request for money will tell you more about a product idea than any keyword tool. Here's the method.]]></description>
      <content:encoded><![CDATA[To validate a product idea, get 15 to 25 people who match your buyer to describe how they handle the problem today, then ask them for something that costs them: a phone number on a waitlist, a deposit, or a pre-order. WhatsApp is the fastest place to do it because the conversations are short, honest and already on their phone. Compliments don't count. Commitments do. I've watched a lot of Shopify merchants skip this step. They find a product with a nice margin, order 500 units, build a beautiful store and then discover the people who said "oh I'd totally buy that" were being polite. Validation isn't a spreadsheet exercise. It's a set of conversations that end with someone either reaching for their wallet or not. What does it actually mean to validate a product idea? Product validation  means collecting evidence that a specific group of people will pay a specific price for a specific product, before you commit serious money to stock. The key word is evidence. Search volume tells you people are curious. Competitors tell you a market exists. Neither tells you that  your  version, at  your  price, from a store nobody has heard of yet, will sell. You're trying to answer three questions: Do these people have this problem often enough to care? What do they do about it today, and what does that cost them? Will they commit something now to get your version? The first two you answer by talking. The third you answer by asking. Signals that matter (and the ones that lie) Before you talk to anyone, decide what you'll count. Otherwise you'll come out of 20 friendly chats convinced you have a hit. Signal Weak or strong? Why "That's a great idea!" Weak Free to say, and people like being nice "I'd probably buy that" Weak Hypothetical future behaviour is unreliable Describes the problem in detail without prompting Medium Shows the pain is real and recent Names a product they already pay for, and what they hate about it Strong Proves budget and a gap Gives you their number for a launch alert Strong A small but real commitment Forwards your message to a friend with the same problem Strong They're spending their own reputation Pays a deposit or pre-orders Strongest Money is the only signal that can't be faked Write your threshold down now. Something like: "If at least 5 of 20 people pre-order at $45, I'll place a first order of 100 units." The exact numbers are yours to choose. The point is that you set them before the results come in. Step 1: Write down the bet One sentence, no more. Say you're thinking about selling a refillable glass spray bottle set for natural cleaning products: Busy parents in Dubai who already make their own cleaning sprays will pay AED 89 for a set of four refillable glass bottles with printed labels, because the plastic ones they use leak and look messy. Who, what, price, and why. If you can't fill in all four, you're not ready for conversations yet. Spend an hour on  defining your audience and brand promise  first. Step 2: Find 20 people to talk to You don't need a big audience. You need the right 20. Good places to find them: Your existing customers , if you already run a store in a nearby niche. They know you and they'll answer. People who already asked a related question.  Scroll your WhatsApp inbox. Every "do you have this in glass?" or "do you sell refills?" is a lead. If you track these,  pre-purchase product questions  become a free research database. Communities where the problem lives:  parent groups, hobby forums, Instagram comments under a competitor's post. A small ad that opens a chat.  A  Click-to-WhatsApp ad  with a modest budget is a quick way to get strangers who match your targeting into a conversation, and because the customer starts those chats, you can answer with normal free-form messages instead of templates. One rule that trips people up. If a customer messages you, WhatsApp opens a 24-hour customer service window and you can reply normally. If  you  want to start the conversation, outside that window, WhatsApp only lets a business send a pre-approved template message, and only to people who've opted in to hear from you. A "help us with a new product" invite will almost certainly be a marketing template. The  24-hour window guide  explains the mechanics, and Meta's  pricing page  lists current per-message rates by country. Here's an invite template I'd use with opted-in customers: Hi {{1}}, it's Sara from Glow & Gather. We're thinking about making something new and I'd love 5 minutes of your honest opinion, here on WhatsApp. No sales pitch. Reply YES if you're up for it, or STOP to opt out of our messages. Step 3: Run the conversation like an interview, not a pitch The worst validation question in the world is "Would you buy this?" Everyone says yes. Ask about the past instead. People are terrible at predicting what they'll do and quite good at remembering what they did. I keep these as saved replies so anyone on the team can run a conversation the same way: Thanks for helping! First question: when did you last make your own cleaning spray? What did you put it in? What's the most annoying thing about that bottle? Have you ever looked for a better one? What did you find, and why didn't you buy it (or did you)? Roughly what did you spend on bottles or sprays in the last few months? Then, and only then, show the idea: Here's what we're thinking: a set of four 500ml glass bottles with leak-proof triggers and printed labels, AED 89. Honest reaction? It's fine to say "not for me." A few habits that make WhatsApp interviews work better than calls or forms: One question per message.  People answer between other things. Long paragraphs get skimmed. Accept voice notes.  Plenty of customers, especially in the Gulf, South Asia and Brazil, would rather talk than type. You'll often get more detail from a 40-second voice note than a typed answer. Ask for a photo.  "Could you send a photo of the bottle you use now?" shows you the real competitor, on a real kitchen counter. Shut up after the price.  If they go quiet or ask "why so expensive?", that's data. Don't rush to discount. Step 4: Ask for a commitment This is the step most people skip because it feels pushy. It isn't. You're giving interested people a way to be first. There are three levels of ask, from easiest to strongest: Waitlist with a phone number.  "Want me to message you when it's ready? Reply YES and I'll add you to the launch list." Log who said yes and when. A  product launch waitlist  is a whole tactic in itself. Deposit.  A small refundable amount to reserve one from the first batch. Use a Shopify product with a clear description of what the deposit is for. Pre-order at full price.  The strongest signal there is. Shopify needs a  pre-order app  for this, and you need to be honest about timing. Here's how I'd word the ask: Thanks, this was really useful. We're making a first batch of 100 sets in January. If you'd like one, I can reserve it now with a fully refundable AED 20 deposit, and you'll get it before anyone else. Want the link? If you do take money, treat those people like gold. Tell them about delays before they have to ask.  Keeping pre-order customers updated on WhatsApp  is how a validation test turns into your first loyal customers instead of your first refund requests. Step 5: Read the results honestly Go back to the threshold you wrote down. Say you ran 20 conversations: 14 described the leaking-bottle problem without being asked. 9 named a bottle they'd bought and disliked. 7 joined the waitlist. 4 paid the deposit. Against a goal of 5 deposits, 4 is close but not there. That's useful. Look at what the non-buyers said. If six of them flinched at AED 89 but loved the labels, maybe the test is a two-bottle starter set at a lower price. Run another ten conversations on that version. If only 2 of 20 even recognised the problem, don't argue with it. Change the audience or drop the idea. The cheapest product you'll ever launch is the one you decided not to stock. How I'd set this up in WhatFlow You can run all of this from your phone with WhatsApp alone, but it gets messy fast when two people are answering and you're trying to count signals. Here's how I'd organise it in the WhatFlow WhatsApp Business API app for Shopify:  One shared inbox, assigned conversations.  Assign every research chat to whoever runs the interviews, and filter the inbox so they're not mixed with order questions. WhatFlow's team inbox has no seat fees, so your co-founder or a part-timer can help without adding cost. Saved replies for the question script , so every conversation asks the same things in the same order. Comparable answers are the whole point. A template for the invite , built in WhatFlow's template editor and sent as a small broadcast to opted-in customers. Shopify Flow for tagging.  WhatFlow's incoming-message trigger in Shopify Flow can route chats that contain a keyword, say "BOTTLE", and tag the customer so you can find every participant later. The  incoming-message routing guide  shows how. All of that is included on every WhatFlow plan, including the Free plan, which is plenty for a 20-person test. Meta's template charges are separate from WhatFlow's pricing.  Mistakes that make validation useless Only talking to friends.  They love you. That's the problem. Pitching before asking.  Once you've described your product, every answer bends toward it. Counting "maybe" as yes.  Maybe means no, politely. Changing the threshold after the results.  If you planned for 5 pre-orders and got 3, you got 3. Ordering stock before anyone paid.  If nobody will put down a refundable deposit for a product they say they want, the market is telling you something. Twenty honest conversations take a week or two. A container of the wrong product takes a year to sell through. If you're still at the very start, the  first 30 days of a Shopify store  walks through what to do once the idea passes.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[shopify]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[VIP customers on Shopify: how to treat them on WhatsApp]]></title>
      <link>https://whatflow.io/blog/vip-customers-whatsapp-shopify</link>
      <guid isPermaLink="true">https://whatflow.io/blog/vip-customers-whatsapp-shopify</guid>
      <description><![CDATA[Define VIP customers from your own Shopify data and look after them on WhatsApp with early access and personal service, no loyalty app needed.]]></description>
      <content:encoded><![CDATA[You don't need a loyalty app to look after VIP customers on Shopify. Define VIPs from your own order data (say, three or more orders, or your top spenders), keep them in a Shopify customer segment, tag them, and give them three things on WhatsApp: early access, a named person who replies, and small favours a points program can't automate. How do you define VIP customers on Shopify? A  VIP customer  is someone whose buying history says they're worth treating differently. Pick a definition you can explain in one sentence and that Shopify can calculate for you. Shopify's  customer segments  are rule-based lists that update themselves: customers join when they meet the criteria and leave when they don't. You build them from filters such as amount spent, number of orders and order dates. A few starting definitions, depending on your store: Store type Example VIP rule Why it works Consumables (coffee, skincare) 4+ orders in the last 12 months Frequency is the real signal Fashion 3+ orders, or top 5% by spend Mix of loyalty and value High-ticket (furniture, jewellery) Any customer with 2+ orders A second purchase is rare and meaningful Gifting Ordered in the last two gifting seasons Seasonal loyalty Those numbers are examples, not benchmarks. Look at your own data: if 40% of customers have three orders, three orders isn't special. Aim for a segment small enough that you could, in theory, know them by name. Turn the segment into something WhatsApp can use Here's the practical setup with Shopify Flow and WhatFlow. Tag VIPs automatically.  Use Flow's "Customer joined segment" trigger with your VIP segment and an "Add customer tags" action (for example,  vip ). That trigger only supports customer tag, metafield and note actions, so its job here is just to keep the tag current. Add a mirror workflow with "Remove customer tags" if you want people to drop out. Send VIP messages from a second workflow.  Use the Scheduled time trigger (for an early-access send) or another event, then "Get customer data" with a query on the  vip  tag, then "For each" customer, WhatFlow's send-template action. Flow returns up to 100 customers per lookup, which is fine for a VIP list but worth knowing. Check consent.  Only message VIPs who've opted in to WhatsApp marketing. Being a good customer isn't the same as agreeing to promotions. You can launch a WhatFlow broadcast from selected Shopify customers or a Shopify segment using the Admin action. In Team Inbox, the audience builder instead uses a spreadsheet or existing conversation contacts. Launching from a Shopify segment does not keep that segment continuously synced into Inbox.  See the two campaign routes . What should VIP treatment look like on WhatsApp? Not a bigger discount. Discounts train your best customers to wait for the next one, which is a bad trade with the people who'd have bought anyway. (More on that in  running repeat-purchase campaigns without constant discounts .) What VIPs actually value: Early access.  First look at launches and restocks, a day before everyone else. A named person.  "Message Sara directly" beats a generic support queue. Faster, more flexible service.  Swap a size without the usual returns form. Hold an item for a day. Heads-ups.  "The colour you bought last time is back." "This sells out every December, so if you want one for gifting, now's the time." Occasional surprises.  A handwritten note in the next parcel. A free sample of something new. None of those need points, tiers or a loyalty widget. If you do want to compare approaches, our piece on  loyalty messages that offer real value  covers what a loyalty program should be saying. Example VIP messages First message after someone becomes a VIP: Hi Daniel, it's Sara from Kettle & Crane. You've been with us for a while now (five orders, thank you), so I wanted to give you my direct line here. If you ever need a hand with an order, a swap or a recommendation, message me and I'll sort it personally. We'll also send you new roasts a day before anyone else. Early access: Hi Daniel, our Ethiopian Guji is back tomorrow, and you're getting it a day early. 40 bags this batch. Your link: kettlecrane.co/guji Restock heads-up: Hi Daniel, the hand grinder you asked about in October is back in stock. Want me to hold one for you until Friday? After a problem (inside the 24-hour window): Really sorry the parcel arrived crushed. I've sent a replacement by express this afternoon, no need to return the damaged one. Tracking to follow. The last one isn't a template. It's what your team does when a VIP reports a problem, and it's where most of the loyalty actually comes from. Personal service without burning out your team The risk with "message Sara directly" is that Sara goes on holiday. Make it a role, not a person: Route VIP chats to one owner.  In WhatFlow's inbox, use assignment and filters so VIP conversations land with the right person and nobody else picks them up by accident. Write a few VIP saved replies  (holds, swaps, express replacements) so cover staff respond the same way. Note VIP status where your team sees it , so a stand-in knows who they're talking to.  WhatFlow's  shared team inbox  has no seat fees, so adding a second person to cover VIP chats doesn't change your bill. The same holds if you're a larger brand with a dedicated clienteling team: a 30-person team pays the same in seats as a two-person one, and everything runs on the official Meta WhatsApp Cloud API. What not to do Don't announce "you're a VIP!" with nothing behind it.  If the status doesn't change anything, don't mention it. Don't message VIPs more often than everyone else.  Message them better. One or two useful messages a month is plenty. Don't quietly drop people.  If someone falls out of the VIP segment because they haven't ordered in a while, stop the VIP messages, but don't send a "you've lost your status" note. A gentle, useful check-in works better, and our  win-back campaign guide  covers what to say. Don't send generic broadcasts and call them VIP.  Our comparison of  segmented sends vs generic bulk sending  shows why the list matters more than the copy. A simple VIP year on WhatsApp Here's what a year of VIP messages could look like for a store with a few launches and a couple of sale seasons. It's deliberately sparse. When Message Type On becoming a VIP Welcome, direct contact, what changes Marketing template Each launch Early access link, 24 hours ahead Marketing template Restock of something they bought Heads-up and an offer to hold one Marketing template Before your big sale Early access to the sale Marketing template Their birthday or first-order anniversary Short personal note, maybe a small gift Marketing template Any problem Fast, generous fix Free-form reply in the chat window That's six to ten messages a year, most of them things a VIP would be annoyed to miss. Compare that with the weekly blast most stores send everyone. Measuring whether it's working Keep it simple. Every quarter, look at your VIP segment in Shopify and note three things: how many customers are in it, how many placed an order in the quarter, and how many left the segment (stopped qualifying). If the segment grows and few people drop out, the extra attention is paying for itself. If VIPs are drifting away, read their last few WhatsApp conversations before changing anything. The reason is usually in there.  Small extras that land well A birthday note to a VIP who's shared their birthday, a thank-you on the anniversary of their first order, or first dibs on a restocked favourite all go a long way. Our guides to  birthday and anniversary messages  and  back-in-stock alerts  cover how to set those up.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[retention]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[What is the WhatsApp Business API? A plain-English guide]]></title>
      <link>https://whatflow.io/blog/what-is-whatsapp-business-api</link>
      <guid isPermaLink="true">https://whatflow.io/blog/what-is-whatsapp-business-api</guid>
      <description><![CDATA[The WhatsApp Business API in plain English: how it differs from the Business app, who providers are, and how Shopify apps connect through Embedded Signup.]]></description>
      <content:encoded><![CDATA[The WhatsApp Business API (officially the WhatsApp Business Platform) is Meta's way for software to send and receive WhatsApp messages on a business number. Instead of one person typing on a phone, a Shopify app can send order updates automatically, run opted-in campaigns and let a whole team reply from one inbox. Most Shopify stores use it through an app, not by writing code. That's the short version. The rest of this guide explains the pieces in plain English: what "API" actually means here, how it differs from the free WhatsApp Business app, who the "providers" are, what it costs, and what happens when you click "Connect WhatsApp" inside a Shopify app like WhatFlow. What does "WhatsApp Business API" actually mean? An API (application programming interface) is a door that lets one piece of software talk to another. The WhatsApp Business API is the door Meta opens so your software can use WhatsApp on your behalf. You'll see several names for the same thing: WhatsApp Business Platform : Meta's official umbrella name. WhatsApp Cloud API : the version Meta hosts itself. This is what new businesses use. Meta retired the older self-hosted On-Premises API in October 2025, so in 2026 "the API" means the Cloud API. WhatsApp Business API : the name everyone still searches for. Same thing. What the API gives you is not an app with buttons. It's raw capability: send this template to this number, receive this reply, upload this image. A Shopify app wraps that capability in screens you can use: a template editor, an inbox, automation settings, a chat button. WhatsApp Business app vs WhatsApp Business API: what's the difference? The WhatsApp Business app is a free phone app for one business to chat by hand. The WhatsApp Business API is a platform that lets software run your WhatsApp: automations, campaigns, integrations and a multi-person inbox. Here's how they compare for a Shopify store:  WhatsApp Business app WhatsApp Business API (via a Shopify app) Who uses it One owner on a phone, plus linked devices A team, through a shared inbox Automatic order and shipping messages No Yes, triggered by Shopify events Campaigns to opted-in customers Broadcast lists, limited and manual Template campaigns to segments Shopify Flow integration No Yes, with an app that supports it Message templates Not needed Required for anything you send outside the 24-hour window Cost from Meta Free Per delivered template message; service replies free up to a monthly tier Verified badge route Meta Verified subscription Official Business Account request Setup Download and go Meta business portfolio, number verification, display name The app is the right tool when you're doing a few dozen chats a day yourself. The API is the right tool the moment you want WhatsApp to run while you sleep, or want more than one person answering. If you're comparing directly, see  WhatFlow vs the WhatsApp Business app . Who are WhatsApp API providers (BSPs) and do you need one? Meta doesn't sell you a dashboard. It provides the Cloud API, and other companies build products on top. You'll hear several labels: Business Solution Providers (BSPs)  or  Solution Partners : companies Meta has approved to onboard businesses and often to handle billing. Tech Providers : software companies (including Shopify apps) that connect businesses to the Cloud API through Embedded Signup. Direct integration : a developer builds on the Cloud API with no middle layer. For a Shopify store, the question isn't really "which BSP?". It's "which tool will my team actually use every day?" That tool should know about your Shopify orders, customers and products without a Zapier chain in the middle. I've laid out the trade-offs of building your own in  Shopify WhatsApp app vs building on Meta's Cloud API , and why Shopify-native matters in  Shopify-native WhatsApp vs an external dashboard . How does a Shopify app connect to the WhatsApp Business API? Shopify apps like WhatFlow connect your number to the Cloud API using  Meta Embedded Signup : a Meta-hosted sign-up flow that opens inside the app, collects your business details, creates the WhatsApp assets you need and grants the app permission to use them. I'd evaluate WhatFlow Business API across a whole sales journey: run a  Shopify WhatsApp campaign , work the replies in the  shared inbox , then  share the right product and link to checkout . Those jobs sit alongside recovery and order notifications. If you only test the first order message, you miss much of what the app replaces. Here's what you'll see when you connect WhatFlow WhatsApp Business API from Shopify admin: Log in with Facebook.  You use your own Meta login. WhatFlow never sees your password. Choose or create a business portfolio.  This is the Meta business account (formerly Business Manager) that will own your WhatsApp assets. If your store already runs Meta ads, you likely have one. Choose or create a WhatsApp account.  Meta's older docs call this a WhatsApp Business Account (WABA); newer docs call it a WhatsApp or Messaging account. It holds your numbers and templates. Add and verify your phone number.  Meta sends a code to the number. It must be able to receive that code. Set your display name.  The name customers see instead of your number once it's approved. Use your real store brand. Grant permissions.  You confirm that the app can manage messages and templates for that account. When you're done, the app can send templates, receive replies, and show conversations in its inbox. Meta's own  Embedded Signup documentation  describes the same flow from the developer side. What if my number is already on WhatsApp? This trips up a lot of merchants. Meta's  phone number docs  say a number already in use on WhatsApp can't be registered on the API until it's deleted from the app. Deleting a WhatsApp account erases its message history on that phone. There's now a second option:  coexistence , where Meta lets a WhatsApp Business app number stay in the app while also connected to the Cloud API through a partner that supports it. It has limits (some app features are switched off, only recent history syncs). I've covered both routes in  moving from the WhatsApp Business app to the API . If you can, start the API on a fresh number and keep it forever. What can you do with the WhatsApp Business API on Shopify? Once connected, here's what a Shopify store typically uses it for: Order confirmations and shipping updates , triggered by Shopify events. COD order confirmation  with reply buttons. In WhatFlow, a "Confirm" or "Cancel" tap can tag or cancel the order through Shopify Flow.  Here's that workflow . Abandoned checkout reminders  to customers who opted in. Campaigns  to segments: launches, restocks, seasonal offers. Team support  in a shared inbox, with saved replies, assignment and filters. Catalog sharing , sending product cards from your Meta catalog inside the chat. Shopify Flow automations , like routing incoming messages by keyword or sending a template when an order is tagged. Start with  the WhatFlow and Shopify Flow guide . For the full strategy, read  WhatsApp marketing for Shopify: the complete 2026 guide . What happens to one order on the WhatsApp Business API? Abstract explanations only go so far, so let's follow one order. Say you sell handmade ceramic mugs from Lahore, a customer in Karachi orders two mugs at 10:40pm and picks cash on delivery.  10:40pm.  Shopify creates the order. Your WhatsApp app sees the new COD order and sends an approved utility template through the Cloud API: Hi Ayesha, thanks for your order #1042 from Clay & Co. Total to pay on delivery: Rs 4,800. Please confirm so we can pack it tomorrow morning.
[Confirm order] [Cancel order] 10:41pm.  Meta delivers it. Because it's a template, Meta charges for it at the utility rate for a Pakistani number. 10:52pm.  Ayesha taps "Confirm order". Her tap is a message to you, so it opens a 24-hour customer service window. 10:52pm.  The app receives the reply. In WhatFlow, a Shopify Flow workflow tags the order "COD confirmed" so your packer knows it's safe to ship. 10:55pm.  Ayesha types "Can you gift wrap one of them?" It lands in your shared inbox as an unassigned chat. 9:10am next day.  Your support person picks it up and replies with a free-form message. No template needed, because the window opened at 10:52pm is still open. That reply is a service message, covered by your monthly free tier. Two days later.  The order ships. Shopify creates a fulfillment and the app sends a shipping update template with the tracking link. The window from step 3 has closed, so this has to be a template. That's the whole model in miniature: templates to start or restart a conversation, free-form replies while the window is open, and Shopify events driving the timing. Everything else is variations on this. A short glossary of WhatsApp API terms You'll bump into these in Meta's screens and in app settings. One line each: Business portfolio : the Meta business account (previously Business Manager) that owns your WhatsApp account, pages and ad accounts. WhatsApp account (WABA) : the container for your business phone numbers and message templates. Display name : the business name shown to customers once Meta approves it. Message template : a pre-approved message format, with variables, that you can send at any time to opted-in customers. Customer service window : the 24 hours after a customer messages you, during which you can reply freely. Service message : a free-form, non-template reply sent inside the customer service window. Quality rating : Meta's read on how recipients react to your messages, based on signals like blocks and reports. Messaging limit : the cap on how many unique customers your business portfolio can message outside service windows in a rolling 24 hours. Official Business Account : a number Meta has marked with a blue checkmark after verification. Coexistence : using one number in the WhatsApp Business app and on the Cloud API at the same time. What doesn't the WhatsApp Business API do? Worth saying plainly, because some sales pages blur it: It doesn't let you message anyone you like.  Opt-in still applies, and messaging limits cap volume for new accounts. It doesn't make WhatsApp free.  Template messages cost money on every send. It doesn't give you a badge automatically.  The blue checkmark is a separate request with its own criteria. It doesn't carry over your old chats by default.  Moving a number from the app usually means starting with an empty history, unless you use coexistence. If you want broadcast-style updates to followers who haven't given you their number, that's what WhatsApp Channels are for, and they're a separate product. See  WhatsApp Channels for Shopify brands . What rules come with the WhatsApp Business API? The API is more powerful than the app, and Meta polices it more closely. The core rules: Opt-in.  You can only message people who gave you their number and agreed to hear from you, per WhatsApp's  Business Messaging Policy . The 24-hour customer service window.  A customer message opens a 24-hour window for free-form replies. Outside it, only approved templates.  Full explanation . Templates.  A message template is a pre-approved message with variables like {{1}}. Each has a category: marketing, utility or authentication.  How categories work . Quality and messaging limits.  Meta tracks how recipients react and caps how many unique people your business portfolio can message outside service windows in 24 hours. New portfolios start low and scale up.  Quality rating and messaging limits . None of this is hard once you know it. It just means you can't treat WhatsApp like a bulk SMS gateway. How much does the WhatsApp Business API cost? As of November 2026, there are two layers of cost. Meta's charges.  Since July 1, 2025 Meta charges per delivered template message. The rate depends on the template category (marketing costs the most) and the recipient's country. Free-form replies inside the 24-hour window are service messages: each business phone number gets 1,000 free per month, and Meta has charged for service messages beyond that since October 1, 2026. Meta publishes current rates on its  pricing page . The app's fee.  What you pay the Shopify app or provider. This varies hugely: some charge per seat, some per contact, some lock features behind higher tiers. WhatFlow has a Free plan, paid plans from $4.99/month, every feature on every plan and no seat fees. Plans differ by messaging allowance and rates;  current pricing is here . There's a worked example in  WhatsApp Business API pricing explained . Do you need Meta business verification to use the API? Not to start. You can connect a number and send messages without completing business verification. But verification matters for growth: It's one of the paths that lifts your messaging limit from the starting level to 2,000 unique users per 24 hours. It raises the number of templates you can keep on your account. It's required before you can request an Official Business Account (the blue checkmark). I'd start it on day one, because it can take a while if Meta asks for more documents. The steps are in  how to get a verified badge on WhatsApp Business . How do you choose a WhatsApp Business API app for Shopify? My honest checklist, in the order I'd weigh things: Is it Shopify-native?  Does it read orders, customers and products without extra connectors, and does it work with Shopify Flow? Does it use the official Cloud API?  Unofficial tools that automate the consumer app put your number at risk. What's the full cost?  App fee plus Meta charges plus seats. A cheap base plan plus a per-agent fee adds up fast once you hire.  No-seat-fee vs per-seat inboxes . Are features gated?  If COD confirmation or Flow actions sit on the top tier, factor that in. Can your team actually use it?  Template editor, inbox, saved replies. Try it on the free plan. Obviously I'm biased: WhatFlow WhatsApp Business API was built to tick all five, on Meta's official Cloud API, for stores from a one-person shop to a support team of fifty. No seat fees means a 50-person team pays the same in seats as a 2-person team, and Shopify Flow handles the automation at volume. It also comes with everything included on the Free plan and a 5.0 rating from 55 reviews on the Shopify App Store as of November 5, 2026. You can see how we compare with others on  the comparisons page .  The short version The WhatsApp Business API is how your Shopify store runs WhatsApp properly: automated order messages, opted-in campaigns and a shared team inbox, all on one official number. You don't need a developer. You need a Shopify app that connects through Meta Embedded Signup, a number you'll keep, opt-in from customers, and a handful of approved templates. Everything else is detail you can learn as you go.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[whatsapp]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[The WhatsApp 24-hour window, explained for store owners]]></title>
      <link>https://whatflow.io/blog/whatsapp-24-hour-customer-service-window</link>
      <guid isPermaLink="true">https://whatflow.io/blog/whatsapp-24-hour-customer-service-window</guid>
      <description><![CDATA[What opens WhatsApp's 24-hour customer service window, what you can send inside and outside it, and the mistakes that cost Shopify stores replies.]]></description>
      <content:encoded><![CDATA[The WhatsApp 24-hour window (Meta calls it the customer service window) is the 24 hours after a customer messages or calls your business. Inside it, you can reply with any message: text, images, product cards, voice notes. Outside it, the WhatsApp Business API only lets you send a pre-approved template. Every new customer message restarts the 24-hour clock. That one rule shapes almost everything about how a store uses WhatsApp: when your team answers, which messages need templates, and how much you pay. Here's how it works in practice. What is the WhatsApp 24-hour customer service window? Meta's  pricing documentation  puts it simply: when a WhatsApp user messages you or calls you, a 24-hour timer called a customer service window starts. While it's open, you can send free-form messages, which Meta calls service messages. When it closes, you're back to templates only. Two details people miss: It's per customer.  Each customer has their own window, opened by their own last message. It refreshes, it doesn't stack.  If a customer messages at 9am and again at 4pm, the window now runs until 4pm tomorrow, not 9am tomorrow plus another day. What opens (and refreshes) the 24-hour window? Only the customer can open it. Anything they send counts: A typed message ("Is this available in XL?") A tap on a quick-reply button in your template ("Confirm order") A photo, voice note, location or sticker A call to your business number A message that starts from a chat button on your store, a QR code or a wa.me link What does  not  open it: you sending a template, the customer reading your message, or the customer opening your profile. Reading isn't replying. This is why I like templates with quick-reply buttons. A button tap is a reply. One tap on "Track my order" opens a 24-hour window in which your team can answer anything else the customer wants, free-form.  Designing quick replies that make the next step clearer  goes into button wording. What can you send inside the 24-hour window? Inside an open window you can send any message type the API supports, without a template: Free-form text replies, in your own words Images, videos, PDFs (an invoice, a size chart) Product cards and catalog messages Interactive messages with buttons or lists Templates too, if you want, though those are charged at their category rate This is where actual customer service happens. Say a customer messages at 8:15pm asking whether your vitamin C serum is safe to use with retinol. Your team can reply with a proper answer, a photo of the label and a link to the product page, no template needed. Hi Sara, good question. Our Vitamin C serum is fine to use in the same routine as retinol, but we'd suggest vitamin C in the morning and retinol at night so your skin isn't overloaded. Here's the full ingredient list: [link]. Want me to suggest a simple AM/PM routine? What can you send outside the 24-hour window? Only approved templates. WhatsApp's  Business Messaging Policy  says it directly: outside the 24-hour customer service window, you may only send messages via approved message templates. A message template is a pre-written message, with variables like {{1}} for a name or order number, that Meta reviews before you can use it. Every template has a category (marketing, utility or authentication) that sets its price. Typical templates outside the window: Order confirmations and shipping updates (utility) COD confirmation (utility) Abandoned checkout reminders (usually marketing) Campaigns and launches (marketing) A "we're getting back to you" follow-up when your team missed the window (utility, if written purely as a service follow-up) If you need copy, I've written 40 WhatsApp templates for Shopify stores, grouped by journey. How does the 24-hour window affect WhatsApp pricing? As of November 2026: Message Inside the window Outside the window Free-form reply (service message) Allowed. Free up to 1,000 per number per month, then charged Not allowed Utility template Allowed, charged at the utility rate since October 1, 2026 Allowed, charged at the utility rate Marketing template Allowed, charged at the marketing rate Allowed, charged at the marketing rate Customer's messages to you Free Free Before October 2026, utility templates sent inside an open window were free and all service messages were free. Meta changed both on October 1, 2026, so older guides are out of date. The full picture is in  WhatsApp Business API pricing explained .  One exception worth knowing: if a customer starts a chat from a Click-to-WhatsApp ad on their phone and you reply in time, Meta opens a  free entry point window  in which your messages aren't charged. Meta's pricing page says it can stay open for up to 7 days.  More on Click-to-WhatsApp ads for Shopify . What are the most common 24-hour window mistakes? Answering a day late The single most expensive habit. A customer asks a question at 6pm Friday, your team gets to it Monday, and the window's long gone. Now you need a template just to say "sorry for the wait", and the customer has probably bought elsewhere. Fix: set business hours, an away message that sets expectations, and a rule that every chat gets a first answer within the window.  How fast to reply on WhatsApp  and  away message examples  cover the setup. Thinking a template opens the window You send a shipping update template. The customer reads it but doesn't reply. Two days later you try to send a free-form "Your parcel is at the local depot" and it fails. The window was never opened, because only the customer can open it. Use another template, or add a button to the first one so a tap opens the window. Using marketing templates to "re-open" support chats If you missed the window on a support question, a short utility follow-up is fine: Hi {{1}}, sorry we missed your message about order {{2}}. Reply here and we'll pick it up straight away. Turning that into "Sorry we missed you! Here's 15% off your next order" makes it a marketing template, at the marketing rate, and it reads like you're dodging the question. Not tracking which chats are about to close In a busy inbox, a chat that came in 22 hours ago looks the same as one from 20 minutes ago. Sort by oldest unanswered first, and assign chats so someone owns each one. A  shared team inbox  with assignment and filters makes this visible. Mixing up the Business app and the API The 24-hour rule belongs to the WhatsApp Business Platform. If your number is on the API through coexistence and you reply from the WhatsApp Business app, Meta's documentation says those app messages aren't subject to the window. But messages from your Shopify app go through the API and are. Pick one place your team answers from so nobody gets confused. How should a small team work with the 24-hour window? A routine I'd suggest for a two-to-five person store: First reply within business hours, always inside 24 hours.  Even if it's "Checking with the warehouse, back to you by 2pm." Saved replies for the top ten questions , so the first reply is fast and accurate.  Saved replies that don't sound robotic . Buttons on every utility template , so customers can reopen the window with one tap. One utility follow-up template  for missed windows, approved and ready. Weekend cover or a clear away message.  Saturday questions shouldn't expire on Sunday night. In WhatFlow, the  team inbox  shows every chat with assignment and filters, and you can send templates or free-form replies from the same screen, so your team doesn't need to think about which mode they're in. It runs on Meta's official Cloud API and has no seat fees, so it works the same for a two-person team or a large support floor. If the window has closed, you pick a template; if it's open, you just type.  Quick recap The customer opens the window; you can't. Inside 24 hours, reply however you like. Outside, use an approved template. Since October 2026, replies beyond 1,000 a month and utility templates inside the window are charged, so fast answers matter for cost as well as service. Get the window right and everything else about WhatsApp gets easier.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[whatsapp]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[WhatsApp away messages: 14 examples for after hours and holidays]]></title>
      <link>https://whatflow.io/blog/whatsapp-away-messages-business-hours</link>
      <guid isPermaLink="true">https://whatflow.io/blog/whatsapp-away-messages-business-hours</guid>
      <description><![CDATA[14 WhatsApp away message examples for nights, weekends, holidays and sales, plus how to set them up in the Business app or on the API.]]></description>
      <content:encoded><![CDATA[A good WhatsApp away message tells the customer exactly when a person will reply and gives them one useful thing to do in the meantime. "We're closed, back at 10am Saturday. Track your order here: [link]" beats any amount of "your message is important to us". Below are 14 examples you can copy, and how to set them up on the WhatsApp Business app or the API. What is a WhatsApp away message? A WhatsApp away message is an automatic reply sent when a customer messages your business while you're unavailable, usually outside your business hours. In the WhatsApp Business app it's a built-in setting. On the WhatsApp Business API (which is what most growing Shopify stores move to) there's no single toggle; you configure an automatic reply yourself. Its job is expectation-setting. A customer who knows you're back at 10am will wait. A customer who sees nothing will message twice, then try Instagram, then leave a cross review. What makes a good away message? Four things, in this order: Acknowledge  in a few words. "Thanks for your message." Say when you'll reply  in concrete terms. "By 11am tomorrow (Saturday)" beats "during business hours". Give one self-serve option  for the most common question, usually order tracking. Say what to send now  so your morning reply can be useful straight away. "Send your order number and we'll start there." Keep it under about 60 words. Skip the emoji parade. One is fine. 14 WhatsApp away message examples Swap in your own times, links and tone. Times should be in the customer's language ("tomorrow at 10am"), not a time-zone puzzle. Everyday after-hours 1. The standard Thanks for messaging Luma Skincare. We're offline now and back at 10am tomorrow. Send your question and order number (if you have one) and we'll reply first thing. 2. With order tracking Hi, thanks for your message. Our team replies 10am to 7pm, Monday to Saturday. If you're checking on an order, you can track it any time here: [tracking page link]. For anything else, leave a message and we'll be back to you by 11am. 3. Short and warm Hey, we've logged off for the night 🌙 Back at 9am. Leave your message and we'll pick it up first thing. 4. For COD stores Thanks for reaching out. We're closed right now and open again at 10am. If you're confirming a cash-on-delivery order, reply to the confirmation message we sent you and it'll be recorded. Anything else, we'll answer in the morning. Weekends 5. Closed Sunday Thanks for your message! We're closed on Sundays and back Monday at 9am. Orders placed today still ship Monday. Leave your question here and you'll hear from us first thing. 6. Reduced weekend hours Hi! On weekends we reply between 11am and 3pm, so it might take a little longer. If it's about an existing order, please include your order number so we can jump straight in. Holidays and closures 7. Public holiday Thanks for messaging. We're closed for the holiday on [date] and back on [date] at 10am. Orders placed now will ship on [date]. We'll reply to every message in the order it arrived. 8. Eid closure Eid Mubarak from all of us! The team is off from [date] to [date]. We'll be back on [date] and reply to every message in order. Orders placed now ship on [date]. 9. Ramadan hours Ramadan Kareem. During Ramadan our hours are 11am to 4pm and 9pm to 12am. We'll reply in our next open slot. Thanks for your patience. 10. Diwali or year-end shutdown Happy Diwali! Our team is taking a short break and will be back on [date]. You can still place orders, and they'll ship from [date]. Leave your message and we'll reply when we're back. For more on timing campaigns and messaging around religious holidays, see our guide to  WhatsApp campaigns for Ramadan, Eid and Diwali . Busy periods 11. Sale-day overflow Thanks for messaging during our sale! We're getting a lot of chats, so replies may take up to 3 hours today. For delivery times and returns, everything's here: [FAQ link]. We'll get to you as fast as we can. That one isn't strictly an "away" message, but it's the same idea: set expectations honestly when you're swamped. Our  Black Friday WhatsApp playbook  covers the rest of a sale-week setup. 12. Holiday shipping cut-off Hi! We're closed now and back at 9am. Quick heads-up: the last day to order for delivery before [holiday] is [date]. Leave your message and we'll reply in the morning. Pair this with proper  holiday shipping cut-off messages  rather than relying on the away message alone. Special situations 13. Owner-run store, honest version Hi, it's Maya. I run this shop on my own, so I reply between 10am and 6pm while I'm packing orders. I'll get to your message today or first thing tomorrow. Thank you for your patience! 14. Lunch or short break We're on a short break and back at 2pm. Leave your message and we'll pick it up then. How to set up away messages in the WhatsApp Business app In the WhatsApp Business app, away messages are a built-in tool. According to the  WhatsApp Help Center , the steps are: Open  Tools  and tap  Away message . Turn on  Send away message  and edit the text. Under  Schedule , choose  Always send ,  Custom schedule , or  Outside of business hours . Under  Recipients , choose everyone, everyone not in your address book, everyone except selected contacts, or only selected contacts. Tap  Save . The "Outside of business hours" option only appears once you've set hours in your business profile. The phone needs an internet connection for the away message to send, which catches people out when the shop phone goes flat overnight. You set hours in your  business profile  as selected hours, always open, or by appointment. How to set up an away message on the WhatsApp Business API On the WhatsApp Business API there isn't a built-in "away message" switch like the app has. You build an automatic reply. With WhatFlow, the natural place to do that is Shopify Flow: In Shopify Flow, start a workflow with WhatFlow's  WhatsApp Text Message Received  trigger. Add the condition logic you want (see the options below). Add WhatFlow's  Send WhatsApp Text Message  action, mapping the recipient to the incoming sender's number. Write your away text, test it with your own phone, then turn the workflow on. Our guide to  routing incoming WhatsApp messages with Shopify Flow  walks through the trigger fields and recipient mapping in detail.  The fiddly part: checking the time Shopify Flow doesn't have a ready-made "outside business hours" condition, and its Run code step can't read the clock (the  Run code docs  say dates must be passed in as input). So you have two honest options: Simple: an always-on acknowledgement.  Send the same short reply to incoming messages at any hour, with your hours in it. "Thanks for messaging! We reply 10am to 7pm, Monday to Saturday. Leave your question and order number and we'll get to it." It's useful during the day too, and there's no time logic to break. Advanced: a real time check.  Pass a date value into a Run code step that decides if the shop is closed, and branch on the result. Inspect the trigger's fields first to see which date or time values you actually get. Test it in your store's time zone, including the weekend, before you rely on it. Whichever you pick, test what happens when a customer sends four messages in a row. Five identical away messages in a thread look broken. If you can't add a condition that stops repeats in your setup, keep the text so short that a repeat is harmless, or narrow the trigger (for example, only reply to messages that look like a new question rather than "ok" or "thanks"). Does an API away message cost anything? Your away message is a free-form reply inside the customer service window the customer just opened, so you don't need a template for it. It does count as a service message, though. Since October 1, 2026, Meta gives each business phone number its first 1,000 delivered service messages a month free and charges after that, so an away message that fires on every incoming chat uses up that allowance faster. Check Meta's  pricing page  for current rates as of November 2026. WhatFlow's own plan pricing is separate, on our  pricing page . Mistakes to avoid Vague timing.  "We'll reply soon" means nothing at 11pm on a Friday. Over-promising.  "Reply within 1 hour" on an away message is a contradiction. Forgetting to update holiday messages.  An Eid closure message still running in the second week of the month is a bad look. Put a calendar reminder on the end date. Asking for sensitive data.  Never ask for card details or passwords in an automatic reply. Order number and a description of the issue are enough. Hiding the self-serve link.  If half your night-time messages are "where's my order", put tracking in the away message.  Then reply first thing An away message only works if the morning reply actually comes when you said it would. Start the day by clearing overnight chats, oldest first, before you look at anything else. If you're working out what promise you can realistically make, our guide to  WhatsApp response times for small teams  helps you set a target you'll keep, and  WhatsApp customer service etiquette  covers the tone for that first reply. Save the repeatable part of a reply in WhatFlow, then check the facts before you send it. Agents can personalize a canned response, keep a draft in the thread, and put the internal context in a private note. Search inside the conversation if you need to verify what another agent promised. The  Inbox walkthrough  shows when to use each tool.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[tips]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[WhatsApp broadcasts customers don't block: 12 rules]]></title>
      <link>https://whatflow.io/blog/whatsapp-broadcast-best-practices</link>
      <guid isPermaLink="true">https://whatflow.io/blog/whatsapp-broadcast-best-practices</guid>
      <description><![CDATA[Twelve practical rules for WhatsApp broadcasts that get replies instead of blocks: who to send to, how often, what to write and what to watch after.]]></description>
      <content:encoded><![CDATA[WhatsApp broadcasts that customers don't block follow a simple pattern: send only to people who opted in, segment by what they actually care about, keep a predictable frequency, write one short message with one clear action, make opting out easy, and check blocks and quality after every send. The rest is detail, and the 12 rules below are that detail.  A broadcast here means a  business-initiated template message sent to a list of customers  through the WhatsApp Business API. It's different from a WhatsApp Channel, which people follow and can't reply to (I cover those in  WhatsApp Channels for brands ). Broadcasts land in the same chat list as your customer's family group. That's why they work, and it's why a bad one gets blocked so fast. Why WhatsApp punishes bad broadcasts faster than email Email has a spam folder. WhatsApp has a block button right under your message. The  WhatsApp Business Messaging Policy  says users can block or report businesses, and that WhatsApp may limit how many messages you can send based on that feedback. There are three mechanisms worth knowing: Template quality.  Meta rates each template using usage, customer feedback and engagement, including read rates, according to its  template quality docs . Low-quality templates can be paused or disabled. Messaging limits.  Your business can only start conversations with a capped number of unique customers per rolling 24 hours, and moving up requires high-quality sending. The  quality rating and messaging limits guide  explains the tiers. Per-user marketing limits.  Meta may limit how many marketing templates one person receives from businesses, based on their recent read rate and how busy their inbox is. If you hit that cap, the message fails with error 131049, per Meta's  per-user limits page . So a broadcast that annoys people doesn't just lose that campaign. It can make the next one harder to deliver. The 12 rules 1. Only send to people who said yes to WhatsApp Not people who gave you a number for delivery. Not last year's COD customers. People who agreed to hear from your store on WhatsApp. If your list is thin, fix that first:  collecting WhatsApp opt-ins on Shopify  walks through six places to ask. 2. Tell them what's coming when they opt in, then keep the promise If your popup said "2 messages a month" and you send six, you've broken a promise. Customers notice. Blocks follow. 3. Segment by intent, not just by "everyone" A customer who bought baby clothes six months ago doesn't need your new menswear drop. Basic segments that work for most stores: Bought from a category in the last 90 days Asked about a product in chat but didn't buy Bought a consumable that's about due for a refill Never bought, opted in from a popup You can launch a WhatFlow broadcast from selected Shopify customers or a Shopify segment using the Admin action. In Team Inbox, the audience builder instead uses a spreadsheet or existing conversation contacts. Launching from a Shopify segment does not keep that segment continuously synced into Inbox.  See the two campaign routes . 4. One message, one action A broadcast with four products, two discount codes and a survey link gets no action at all. Pick the one thing. Hi Sara, the Sage Linen Throw you asked about is back in stock. We've got 40, and last time they went in under a week.
[View the throw] [Not interested] 5. Lead with the reason they'll care The first line shows in the notification preview. "Big news from Kaya Home!!" wastes it. "Your size in the Aria dress is back" earns the open. 6. Give them a way to reply WhatsApp is a conversation app. A broadcast with a quick reply button ("Show me", "Ask a question") invites the customer to answer, and a reply opens a 24-hour customer service window where your team can help freely. That's often where the sale actually happens. 7. Make stopping easy and honour it immediately Add a "Stop promotions" style button or a plain line: Don't want offers from us on WhatsApp? Reply STOP and we'll take you off. Then actually remove them, everywhere. Anyone who writes "please stop messaging me" in their own words counts too. The  opt-out process guide  shows how to make that stick across tools. 8. Pick a frequency and stay predictable For most small stores, one to four marketing broadcasts a month per customer is plenty, and the right number depends on how often your customers buy. A tea shop can justify more than a mattress shop. The full framework is in  how often to message customers on WhatsApp . 9. Send at a time that suits the customer, in their time zone Morning commute and early evening work for many audiences. 11pm doesn't. If you sell across the Gulf and South Asia, split the send by country. During Ramadan, the best times shift completely (think after iftar). 10. Personalise with real data, not fake intimacy "Hi Sara" plus the product she viewed is useful. "Hey bestie, we missed you sooo much 💕" from a brand she bought from once is not. Template variables in WhatFlow's template editor let you insert names, products and order details from Shopify. 11. Run a preflight before every send Check the link opens on a phone, the discount code works, the template variables fill properly, the segment is the one you meant, and someone is on the inbox when replies start. The  campaign preflight checklist  is the one I'd print. 12. Look at blocks and opt-outs after every send, not just revenue Revenue tells you what worked. Opt-outs, blocks and template quality tell you what it cost. If a broadcast made money but doubled your opt-outs, it borrowed from next month. A broadcast that breaks the rules For contrast, here's the kind of message that gets a store blocked. Imagine it going to every number the store has ever collected, at 10:40pm on a Tuesday: 🔥🔥 MEGA SALE 🔥🔥 Up to 70% off EVERYTHING at Kaya Home!!! Cushions, throws, candles, lamps, rugs and more. Use code MEGA70 or MEGA50 on selected items. Plus refer a friend and win a voucher! Shop now 👉 [link] Count the problems. It went to people who never opted in to WhatsApp marketing. It's late at night. It has no personal reason to exist for this customer. It has two codes, a referral pitch and a link to "everything", so there's no single action. There's no way to stop. And the first line in the notification preview is emoji and capitals, which reads like spam before anyone opens it. Each of those breaks one of the rules above. Together they're a fast way to a yellow quality rating. A broadcast that follows the rules Here's a hypothetical example for a skincare store, sent to customers who bought the vitamin C serum 5 to 7 weeks ago: Hi Aisha, your Noor Vitamin C Serum usually runs out around now. Want us to hold one for you? Refills ship next day in Dubai.
[Reorder now] [Remind me in 2 weeks] [Stop reminders] It's tied to her purchase, timed to her likely need, has one action, offers a softer option, and gives her a clean exit. That's the whole playbook in three lines. A note on cost and country As of November 2026, Meta charges per delivered template message, with rates that vary by category and the recipient's country; check  Meta's pricing page  for current rates. Sending to people who don't want your message isn't only bad manners, it's money spent on a block. Also, Meta's docs say WhatsApp doesn't currently deliver marketing templates to US phone numbers, so exclude them from promotional broadcasts. What WhatFlow does here WhatFlow's Business API app runs on Meta's official WhatsApp Cloud API and is built to handle a store's full broadcast program, from a first campaign to a team sending every week. It gives you templates with an editor, broadcasts, quick reply buttons, a shared inbox for the replies, and Shopify Flow actions to trigger sends from store events. Everything is on every plan, including Free, and there are no seat fees, so the whole team can answer when a broadcast lands. Meta's message charges are separate from WhatFlow's app pricing.  Before your next send Pick the segment, write one message with one action and an exit, run the preflight, and look at opt-outs the next morning. Do that every time and the list stays healthy enough to use when it matters, like Black Friday week.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[whatsapp]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[WhatsApp Business API pricing explained (as of November 2026)]]></title>
      <link>https://whatflow.io/blog/whatsapp-business-api-pricing</link>
      <guid isPermaLink="true">https://whatflow.io/blog/whatsapp-business-api-pricing</guid>
      <description><![CDATA[How Meta charges for WhatsApp Business API messages in 2026, what's free, what changed on October 1, and how app fees stack on top. With a worked example.]]></description>
      <content:encoded><![CDATA[As of November 2026, WhatsApp Business API pricing works like this: Meta charges per delivered template message, at a rate set by the template's category (marketing, utility or authentication) and the recipient's country. Customer messages to you are free. Your free-form replies are free up to 1,000 service messages per number per month, then charged. Your Shopify app's subscription is a separate bill on top. That last part about service messages is new. If you read a pricing guide written before October 2026, it probably told you replies were always free. They aren't any more. Let me walk through the whole model, what changed, and how to estimate your own bill. How does WhatsApp Business API pricing work? Meta switched from conversation-based pricing to  per-message pricing  on July 1, 2025. In Meta's words on its  pricing page , businesses "are only charged when a message is delivered". Messages that fail to arrive don't cost anything.  Three things decide the price of a single message: Is it a template or a free-form reply?  Templates are the pre-approved messages you can send any time. Free-form replies (service messages) can only be sent inside an open 24-hour customer service window. Which category?  Templates are marketing, utility or authentication. Each has its own rate. Which country?  Meta sets rates by the recipient's country calling code. Some countries have their own rate; others share a regional rate. Each message gets exactly one category and at most one charge. What are the WhatsApp message categories and how are they charged? Here's the summary as of November 2026. I'm not quoting rates on purpose: they vary by country, they change quarterly, and a number I paste here will be wrong for half of you. Check Meta's rate card for your markets. Category What it's for How it's charged (Nov 2026) Marketing template Promotions, launches, cart reminders, win-backs, anything persuasive Charged per delivered message. Usually the highest rate. Utility template Order confirmations, shipping updates, COD confirmation, account alerts Charged per delivered message, including inside an open service window since October 1, 2026. Volume tiers can lower the rate. Authentication template One-time passcodes for login or verification Charged per delivered message. Volume tiers apply. Service message Free-form replies inside the 24-hour window First 1,000 per business phone number per month free, then charged (since October 1, 2026). Meta Business Agent message Replies from Meta's own AI agent product Billed by token usage, separate from the rest. Most Shopify stores won't use this. Meta decides the category based on the template's content, whatever you selected. Put a discount code in a shipping update and it becomes a marketing template, at the marketing rate.  Here's how categories work in detail . What changed on October 1, 2026? Two things that used to be free are charged again, per Meta's pricing page: Service messages beyond 1,000 a month.  Meta made service messages free in November 2024. From October 1, 2026, each business phone number gets one free tier of 1,000 delivered service messages per month. The 1,001st and every one after it is charged. The tier resets monthly and doesn't roll over. Utility templates inside an open window.  From July 1, 2025 these were free. Since October 1, 2026 they're charged at the regular utility rate. Meta also said businesses without a payment method on file by September 30, 2026 risk having service messages stop delivering once charges begin. If you connected WhatsApp a while ago and never added a card in Meta Business settings (or your provider handles billing), check this now. What this means in practice: most small stores won't exceed 1,000 service replies per number in a month, so day-to-day support stays effectively free. A busy store during a sale, or a store using WhatsApp as its main support channel, might go over. It's a small per-reply cost, but put it in the budget. What's still free on WhatsApp? As of November 2026: Messages customers send you.  Always free to receive. Up to 1,000 service replies per number per month. The free entry point window.  When a customer starts a chat by tapping a Click-to-WhatsApp ad on the mobile app and you reply inside the customer service window, Meta opens a free entry point window. Meta's pricing page says it can stay open for up to 7 days and that marketing, utility, authentication and service messages in it aren't charged.  Click-to-WhatsApp ads for Shopify  covers how to use those chats. Failed messages.  Not delivered, not charged. How do volume tiers work? Utility and authentication messages get cheaper as you send more. Meta counts charged messages per market and category, across all WhatsApp accounts in your business portfolio, and resets the count monthly. Once you cross a tier, the messages in that tier are billed at the lower rate. Marketing messages don't have volume tiers. For most small Shopify stores, tiers won't kick in, but if you send thousands of order and shipping updates a month to one country, check where you sit. Meta's fees vs your app's fees: what are you actually paying for? This is where comparisons get confusing, because apps package things differently. You're usually paying for two separate things: 1. Meta's message charges.  Set by Meta, the same whichever app you use. Some apps pass them through at cost, some add a markup, some bundle them into message credits. 2. The app's subscription.  What you pay for the software: the inbox, automations, template editor, Shopify integration. This is where apps differ most: Per-seat pricing : each team member costs extra. Per-contact pricing : you pay by the size of your list. Feature-gated tiers : COD confirmation, Flow actions or the API itself only on higher plans. Message-volume plans : you pay for an allowance of messages. WhatFlow is on the simple end: a Free plan, paid plans from $4.99/month, every feature on every plan, and no seat fees for the team inbox. Plans differ only by messaging allowance and rates. Because there are no seats to buy, a 50-person support team pays the same in seats as a 2-person team, which is why larger Shopify brands use it too.  Current WhatFlow pricing is here . Meta's charges are separate from WhatFlow's app pricing. If you're comparing apps,  audit the costs beyond the headline price , and see  message-volume plans vs contact-based pricing  and  no-seat-fee vs per-seat inboxes . Worked example: estimating a month of WhatsApp costs Let's price a hypothetical store. Say you sell skincare in one country, you get 1,500 orders a month (60% COD), and you run two campaigns a month. The rates below are made-up placeholders, not Meta's prices.  Replace them with the current rates for your recipients' country from Meta's rate card. Placeholder marketing rate:  M  per message (say 0.05 for the example) Placeholder utility rate:  U  per message (say 0.01) Placeholder service rate beyond the free tier:  S  per message (say 0.005) Monthly volume: Message Category Count Placeholder cost Order confirmation Utility 1,500 1,500 × 0.01 = 15.00 COD confirmation Utility 900 900 × 0.01 = 9.00 Shipping update Utility 1,500 1,500 × 0.01 = 15.00 Abandoned checkout reminder Marketing 600 600 × 0.05 = 30.00 Campaigns (2 × 1,200 opted-in customers) Marketing 2,400 2,400 × 0.05 = 120.00 Support replies Service 1,400 (1,400 − 1,000 free) × 0.005 = 2.00 Meta total   191.00 Then add your app subscription. Two things jump out from this example, and they hold for most stores: Campaigns dominate the bill.  Marketing messages cost the most and you send them in bulk. A segmented campaign to 400 engaged customers instead of 1,200 cuts that line by two-thirds. Utility messages are cheap per send but add up.  If you send three utility messages per order, ask whether all three earn their place. Once you have numbers, divide cost by what you got: orders confirmed, carts recovered, reviews collected.  Budgeting WhatsApp by cost per useful outcome  shows how. How can a Shopify store keep WhatsApp costs down? Practical things, in order of impact: Use WhatFlow's recipient report to separate attempted, delivered, read and failed messages. Export the results before you change the audience, and investigate a failure before retrying it. If you want to measure purchases, compare against Shopify orders using the tracking you set up for that send; delivery or read status alone can't tell you what sold. See the  campaign measurement walkthrough . Segment campaigns.  Message the people likely to care.  Segmenting WhatsApp campaigns . Write utility templates as pure utility.  No upsells, no codes, so Meta keeps them in the cheaper category. Answer inside the window.  If a customer messages at 3pm, reply before 3pm tomorrow. After that you need a template, which costs more than a service reply. Use Click-to-WhatsApp ads deliberately.  The free entry point window makes follow-ups from those chats free for a while. Cut duplicate messages.  If email already sends the order confirmation and the customer doesn't read it, fine. If they do, maybe WhatsApp only needs the shipping update. Check the rate card for your top countries.  Rates vary a lot between markets. Know what your biggest market costs. Billing currency and other details worth knowing A few things from Meta's pricing page that catch stores out: Prices only change on the first day of a quarter , with notice of one to six months. Billing currency is set when the WhatsApp account is created  and can't be changed directly; Meta offers a currency migration process. India and Brazil have local-currency deadlines.  Meta says eligible businesses must migrate to INR billing by December 31, 2026, or it stops delivering non-INR messages from January 1, 2027. Brazil has a similar BRL deadline of June 30, 2027. If you're based in or sell heavily into either country, check Meta's pricing page to see if you're in scope and ask your provider how they're handling it.  The bottom line on WhatsApp API pricing You pay Meta for delivered templates by category and country, you get 1,000 free service replies per number per month, and you pay your app separately. Marketing messages are where the money goes, so segmentation is your biggest lever. Before you commit to any app, put your own order volume into the table above with real rates, then compare the full monthly total, not the headline plan price.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[whatsapp]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Moving from the WhatsApp Business app to the API: what changes]]></title>
      <link>https://whatflow.io/blog/whatsapp-business-app-to-api-migration</link>
      <guid isPermaLink="true">https://whatflow.io/blog/whatsapp-business-app-to-api-migration</guid>
      <description><![CDATA[What happens to your number, chat history, team access and costs when you migrate from the WhatsApp Business app to the API, including coexistence.]]></description>
      <content:encoded><![CDATA[To migrate from the WhatsApp Business app to the API, you either delete the WhatsApp account on your number and register it on the Cloud API (you lose chat history), or use Meta's coexistence option to keep the app running alongside the API on the same number. Either way you gain automation, templates and a shared team inbox, and you start paying Meta per template message. I talk to merchants at this exact point a lot. They've outgrown one phone, the team is passing it around, and order messages are copied and pasted by hand. The move is worth it. But go in knowing what changes. Why move from the WhatsApp Business app to the API? The WhatsApp Business app is built for one person chatting by hand. The signs you've outgrown it: More than one person needs to answer, and you're sharing a phone or a linked laptop You're copying order numbers and tracking links into messages manually You want COD confirmation, cart reminders or shipping updates to send themselves You want campaigns to opted-in segments, not broadcast lists capped by contacts who saved your number You need to know who replied to which customer, and when The API, used through a Shopify app, fixes all of those. If you're unsure, compare  WhatFlow and the WhatsApp Business app  side by side, and read  what the WhatsApp Business API is  for the fundamentals. What are your options for the phone number? You have three realistic options. Here's how they compare:  Fresh number on the API Delete and re-register existing number Coexistence (same number, app + API) Customers keep the number they know No Yes Yes Old chat history Stays on the old number's app Erased Up to 6 months of one-to-one chats can sync Keep using the Business app Yes, on the old number No Yes, with some features changed Setup risk Lowest Medium (history loss) Depends on partner support Best for New stores, or stores happy to announce a new number Stores whose history doesn't matter much Stores with years of customer chats on one number Option 1: a fresh number The simplest path. Get a new number that's never been on WhatsApp, connect it through Embedded Signup, and announce it: website, packaging, email signature, order confirmation emails. Keep the old app number running for a few weeks with an away message pointing to the new one. Option 2: delete and re-register Meta's  phone number docs  say a number already in use with WhatsApp can't be registered on the API until it's deleted. Deleting is not the same as uninstalling the app. You delete the account from inside the app on your primary phone. What WhatsApp's help article on  deleting your account  says you lose: your message history, your group memberships and your backups. It can't be undone. Customers keep their copies of past chats, but you won't have yours. Before you delete: Export the chats you care about.  Use the app's export chat option for key customers or wholesale contacts. Save your quick replies, labels and catalog details  somewhere. They won't come across. Tell customers  there may be a short gap. Have the phone handy  for the verification code during Embedded Signup. Option 3: coexistence Coexistence is Meta's option for keeping a WhatsApp Business app number in the app while also connecting it to the Cloud API through a partner. Meta's  coexistence documentation  describes what happens: History.  If you agree to share it, one-to-one chats from the most recent 6 months can sync. Media syncs only for messages from the 14 days before onboarding. Group chats don't sync. Mirroring.  One-to-one messages are mirrored between the app and the API, so messages you send from the app show up in your partner's inbox. App features that change.  Broadcast lists become read-only and you can't create new ones. Disappearing messages, view-once and live location are turned off for one-to-one chats. Linked devices.  Onboarding unlinks companion devices; you can re-link supported ones, but WhatsApp for Windows and WearOS aren't supported. Requirements.  WhatsApp Business app version 2.24.17 or later, and you should keep the app open while history syncs. If the main phone is inactive for around 14 days it can be disconnected. Cost.  Meta says messages sent from the Business app stay free and aren't subject to the customer service window. Messages sent through the Cloud API follow Cloud API pricing. Throughput.  Coexistence numbers have a fixed throughput of 20 messages per second, which is plenty for most stores but worth knowing for very large campaigns. Coexistence depends on your provider supporting that onboarding flow, so ask before you connect. If keeping your existing number and its history matters to you,  contact us  and we'll tell you what's possible for your account. What changes once you're on the API? Templates and the 24-hour window On the app, you can message anyone who has your number saved, whenever. On the API, there are rules: outside a 24-hour customer service window opened by the customer, you can only send Meta-approved templates. Inside it, you reply freely. This is the biggest mindset shift.  The 24-hour window, explained . Opt-in matters more You need opt-in before business-initiated messages on any WhatsApp product, but on the API it's enforced through quality ratings and limits. Don't import your app contact list and broadcast to it.  How to collect WhatsApp opt-ins on Shopify . You start paying Meta The Business app is free. On the API, as of November 2026, Meta charges per delivered template message by category and country, and service replies are free up to 1,000 per number per month before they're charged too.  WhatsApp Business API pricing explained . Messaging limits A new business portfolio can message 250 unique customers outside service windows per 24 hours at first. Verifying your business is one way to lift that to 2,000, and it scales from there with good quality. Team access This is the big win. Instead of one phone, your whole team works from a shared inbox with assignment and filters, so every chat has an owner. In WhatFlow there are no seat fees, so adding your fifth or fiftieth agent doesn't change the bill.  Shared WhatsApp inbox vs personal staff phones .  What do you gain and what do you lose? You gain: Automated order, shipping and COD messages triggered by Shopify Template campaigns to opted-in segments A shared team inbox with assignment, filters and saved replies Shopify Flow triggers and actions for custom workflows A route to Official Business Account status (the blue checkmark) Room to grow: messaging limits scale up to unlimited with good quality You lose (or change): Free messaging. Templates cost money per delivery. The freedom to message anyone anytime. Templates and the 24-hour window apply. Chat history, unless you use coexistence or start on a fresh number. Some app features (broadcast lists, status updates, groups) if you leave the app entirely. A migration checklist for Shopify stores Decide your number route : fresh, delete-and-register, or coexistence. Export chats  you need to keep. Set up or tidy your Meta business portfolio , and start business verification. Install your Shopify WhatsApp app  and connect through Embedded Signup. With WhatFlow, that's from Shopify admin. Set your display name  to your real brand name. Recreate quick replies  as saved replies in the new inbox. Submit your first templates : order confirmation, shipping update, COD confirmation. Add a chat button  to your store pointing at the number. Announce the change  if the number changed. Turn on one automation at a time  and test with a real order. If you're coming from WhatFlow Chat Automation (our linked-device app) rather than the WhatsApp Business app, the same logic applies.  Here's how the two WhatFlow apps compare . I'd evaluate WhatFlow Business API across a whole sales journey: run a  Shopify WhatsApp campaign , work the replies in the  shared inbox , then  share the right product and link to checkout . Those jobs sit alongside recovery and order notifications. If you only test the first order message, you miss much of what the app replaces.  Is it worth it? If you're a one-person shop doing a handful of chats a day, the Business app is fine and you can wait. The moment a second person needs to answer, or you're copying order details into messages by hand, the API pays for itself in time saved. WhatFlow WhatsApp Business API runs on Meta's official Cloud API, includes every feature on every plan including Free, and has no seat fees, so it fits the store you are now and the bigger team you're building.]]></content:encoded>
      <dc:creator><![CDATA[Safwan Adnan]]></dc:creator>
      <category><![CDATA[whatsapp]]></category>
      <pubDate>Wed, 04 Nov 2026 23:07:32 GMT</pubDate>
    </item>
  </channel>
</rss>