80% off for waitlist membersGet 20+ WooCommerce plugins — Launch from $39.80 or Lifetime from $49.80 

← Back to Guides

How to Set Up WooCommerce WhatsApp Order Notifications

WPBundle Team··10
WhatsApp order notification setup WooCommercesend WooCommerce orders to WhatsAppWooCommerce WhatsApp order alerts
WhatsApp messages have a 98% open rate compared to email's 20%. Setting up order notifications via WhatsApp means your customers actually see their order confirmations, shipping updates, and delivery alerts. This guide walks through every step — from choosing an API provider to configuring message templates.

Why WhatsApp Order Notifications Beat Email

Here's a scenario every WooCommerce store owner knows: a customer places an order, your store sends a confirmation email, and that email lands in the Promotions tab. Or spam. Or gets lost in an inbox with 4,000 unread messages. The customer then contacts you asking "did my order go through?"

WhatsApp solves this. Messages arrive instantly, on the device your customer is already holding. They see a notification pop up, tap it, and confirm their order details in seconds. No hunting through email folders. No "check your spam" support tickets.

Beyond open rates, WhatsApp notifications create a direct channel for post-purchase communication. Customers can reply to their order notification to ask questions, request changes, or report issues — all within the same chat thread. This turns a one-way notification into a two-way support channel.

WhatsApp order notifications don't just improve delivery rates — they create a two-way channel that reduces support tickets and builds customer trust.

Prerequisites: What You Need Before Starting

1. A WhatsApp Business API Account

The WhatsApp Business App (the free one you might already use) cannot send automated messages. You need the WhatsApp Business API, which is accessed through a Business Solution Provider (BSP) or directly through Meta's Cloud API.

Option A: Meta Cloud API (Recommended for most stores)

Meta now offers the WhatsApp Business API directly through the Meta Developer Portal. It's the cheapest option — you only pay Meta's per-conversation fees with no BSP markup. Setup requires a Meta Business account and a Facebook App.

Option B: Twilio

Twilio is the most developer-friendly BSP. Their WhatsApp integration is mature, well-documented, and works with dozens of WordPress plugins. Twilio charges a small markup on top of Meta's per-conversation fees (typically $0.005 per message).

Option C: 360dialog

360dialog is popular in Europe and offers a straightforward API with lower markup than Twilio. Their WordPress integration is less mature, but they offer a good dashboard for template management.

2. A Verified Phone Number

You need a phone number dedicated to your business that isn't already registered with WhatsApp. If you're using your personal number for WhatsApp, you'll need a new number for the business API. Virtual numbers from Twilio work fine.

3. Approved Message Templates

WhatsApp requires all business-initiated messages to use pre-approved templates. You submit templates through your BSP or the Meta Cloud API dashboard, and Meta reviews them (usually within minutes, sometimes hours). Templates can include variables like {{order_number}}, {{customer_name}}, and {{total}}.

Keep templates transactional and professional. Avoid promotional language in order notification templates — Meta categorizes them differently and charges more. "Your order #{{1}} has been confirmed" gets approved instantly. "Thanks for ordering! Check out our sale!" gets flagged as marketing.

Method 1: Using Joy Of Text + Twilio (Easiest Plugin Route)

Step 1: Set Up Twilio

Create a Twilio account at twilio.com. Navigate to Messaging → Try it Out → Send a WhatsApp Message. Twilio provides a sandbox for testing before you go live. Once tested, apply for a Twilio WhatsApp sender through their console. This typically takes 1-2 business days for approval.

Step 2: Install Joy Of Text

Install the Joy Of Text plugin from the WordPress repository. Go to Joy Of Text → Settings and enter your Twilio Account SID, Auth Token, and WhatsApp-enabled phone number. The plugin will verify the connection automatically.

Step 3: Configure Order Status Triggers

Navigate to Joy Of Text → WooCommerce. Here you'll map each WooCommerce order status to a WhatsApp message template. The key statuses to configure are:

  • Processing: "Hi {{customer_name}}, your order #{{order_number}} has been confirmed and is being prepared. Total: {{order_total}}."
  • Shipped/Completed: "Great news! Your order #{{order_number}} has been shipped. Track it here: {{tracking_url}}"
  • Refunded: "Your refund for order #{{order_number}} has been processed. Amount: {{refund_amount}}."

Step 4: Add Customer Opt-in at Checkout

Joy Of Text Pro adds an opt-in checkbox to your checkout page. This is mandatory — WhatsApp requires explicit consent. The checkbox should be unchecked by default (required in the EU under GDPR) with clear text like "Send me order updates via WhatsApp."

The plugin stores the customer's WhatsApp number and consent status in the order meta. Only customers who opt in will receive WhatsApp notifications.

Always default the WhatsApp opt-in checkbox to unchecked. Pre-checked consent isn't valid under GDPR and can get your WhatsApp number banned if customers report unsolicited messages.

Step 5: Test the Flow

Place a test order using your own WhatsApp number. Verify you receive the notification within seconds of the order being placed. Check the order notes in WooCommerce — Joy Of Text logs delivery status there. If the message doesn't arrive, check Twilio's dashboard for error logs.

Method 2: Using Meta Cloud API Directly (Cheapest)

Step 1: Create a Meta App

Go to developers.facebook.com and create a new app. Select "Business" as the app type. Add the "WhatsApp" product to your app. Meta will provision a test phone number and give you a temporary access token.

Step 2: Add a Permanent Phone Number

In the WhatsApp section of your Meta app, add your business phone number. Meta will verify it via SMS or voice call. Once verified, you can send messages from this number through the API.

Step 3: Create Message Templates

Navigate to WhatsApp Manager → Message Templates. Create templates for each order status. Use the "Utility" category for transactional messages — it's cheaper than "Marketing." Example template:

Template name: order_confirmation
Category: Utility
Body: Hi {{1}}, your order #{{2}} has been confirmed. Total: {{3}}. We'll notify you when it ships.

Step 4: Connect to WooCommerce via Webhook

Without a dedicated plugin, you'll need a small middleware service. The simplest approach: use a Cloudflare Worker or a simple Node.js function that listens for WooCommerce webhook events and calls the Meta Cloud API. Configure webhooks in WooCommerce → Settings → Advanced → Webhooks for order.created, order.updated, and order.completed events.

Step 5: Handle Template Variables

Your middleware extracts order data from the webhook payload and maps it to template variables. The Meta Cloud API call looks like this:

POST https://graph.facebook.com/v18.0/PHONE_NUMBER_ID/messages
{
  "messaging_product": "whatsapp",
  "to": "customer_phone",
  "type": "template",
  "template": {
    "name": "order_confirmation",
    "language": { "code": "en" },
    "components": [{
      "type": "body",
      "parameters": [
        { "type": "text", "text": "John" },
        { "type": "text", "text": "WC-1234" },
        { "type": "text", "text": "$59.99" }
      ]
    }]
  }
}
Using Meta's Cloud API directly saves roughly 30-50% compared to going through a BSP like Twilio. For a store sending 1,000 order notifications per month, this adds up to $10-30/month in savings. The trade-off is more setup work and no WordPress admin UI.

Method 3: Using Multi-Channel Platforms (Best for Growth)

If you're already using a marketing platform like Omnisend, Klaviyo, or Brevo, check if they support WhatsApp as a notification channel. Most have added WhatsApp in 2024-2025. The advantage: you manage all customer communications (email, SMS, WhatsApp) from one dashboard with unified analytics.

Omnisend: WhatsApp available on Pro plan ($59/mo). Supports order notifications, abandoned cart recovery, and marketing campaigns. Native WooCommerce integration.

Brevo (Sendinblue): WhatsApp available on Business plan ($18/mo). Supports transactional messages and marketing campaigns. WooCommerce plugin available.

Klaviyo: WhatsApp in beta for select markets. Strong automation but primarily SMS-focused for now.

Message Templates That Convert

Your message templates matter. A generic "Order confirmed" message wastes the opportunity. Here are templates we've seen perform well:

Order Confirmation (creates trust):
"Hi {{name}} 👋 Your order #{{order_id}} is confirmed! Here's what you ordered: {{items}}. Total: {{total}}. We'll message you here when it ships. Reply to this message if you have any questions."

Shipping Update (reduces "where is my order" tickets):
"📦 Your order #{{order_id}} just shipped! Track it here: {{tracking_link}}. Estimated delivery: {{eta}}. We'll let you know when it arrives."

Delivered (drives reviews):
"✅ Your order #{{order_id}} has been delivered! We hope you love it. If everything looks good, we'd appreciate a quick review: {{review_link}}"

The best order notification templates include an explicit invitation to reply. This turns a notification into a conversation and builds a direct support channel.

Common Pitfalls and How to Avoid Them

Getting Your Number Banned

Meta monitors quality signals for every WhatsApp Business number. If too many recipients block or report your messages, your quality rating drops and your number gets restricted or banned. Prevention: only message opted-in customers, keep content relevant, and make it easy to opt out.

Template Rejection

Meta rejects templates that are promotional in nature when submitted as transactional. Keep order notifications factual. Save promotional content for marketing templates (which cost more but are designed for it).

Phone Number Conflicts

You cannot use a number for both the WhatsApp Business App and the API simultaneously. If you're currently using the Business App, you'll need to migrate to the API — which is a one-way process. Plan this carefully.

International Formatting

WhatsApp numbers must be in E.164 format (e.g., +27821234567 for South Africa). Your plugin or middleware must clean and format customer phone numbers. Incorrect formatting is the #1 cause of delivery failures.

For a broader comparison of WhatsApp plugins that handle notifications and more, see our best WooCommerce WhatsApp plugins guide. If you want to extend WhatsApp beyond notifications into customer support, check out our WhatsApp customer support setup guide.

Start with Joy Of Text + Twilio for the easiest setup, or Meta Cloud API for the cheapest per-message cost. Always collect explicit opt-in, use approved message templates, and format phone numbers in E.164. Test thoroughly before going live.

Level up your WooCommerce store

Join the WPBundle waitlist and get beta access to our plugin suite completely free.

Join the Waitlist