Everything you need on Meta's side before Bulk Order Notifications for WA can send its first message:
a Business app, your Phone Number ID, a token that doesn't expire, one approved template, and the
delivery-status webhook. About 30 minutes of clicks, plus Meta's template review (usually minutes,
sometimes up to a day). Menu names checked against Meta's developer docs in September 2026.
1. Create a Business app with WhatsApp
Log in to developers.facebook.com/apps with the Facebook account that manages your business, and click Create app.
Choose the use case Connect with customers through WhatsApp (app type Business) and attach it to your Meta Business portfolio. No portfolio yet? The wizard creates one.
Open WhatsApp > API Setup in the app's left menu. Meta gives you a free test number and a 24-hour temporary token: fine for a first test, not for your store.
Sending to real customers needs a payment method on the WhatsApp Business Account
(WhatsApp Manager > Settings > Payment methods). Business verification is not required to
start: it raises your daily sending limit later.
2. Add your number and copy the Phone Number ID
In WhatsApp > API Setup click Add phone number, enter your business display name and the number, and verify it with the SMS or voice code.
The number must not be active in the regular WhatsApp or WhatsApp Business app at the same time. Use a new number, or delete the WhatsApp account on that number first.
Select your number in the From dropdown. Under it Meta shows two IDs: the Phone number ID (the plugin needs this one) and the WhatsApp Business Account ID (optional in the plugin, it enables the template check in the setup checklist).
The Phone number ID is a long number such as 1234567890123456, not
your phone number. Pasting the phone number is the most common setup mistake.
3. Generate a permanent token (System User)
The token on the API Setup page expires after 24 hours. For a store that sends by itself you
need a System User token that never expires:
Go to Business Settings > Users > System users and click Add. Give it a name (e.g. wordpress) and the Admin role.
Select the new system user and click Assign assets:
Apps: your app, with Manage app (full control).
WhatsApp accounts: your WhatsApp Business Account, with Manage WhatsApp Business accounts (full control).
Click Generate token, pick your app, set expiration to Never, and tick the three permissions business_management, whatsapp_business_messaging and whatsapp_business_management.
Copy the token now: Meta shows it only once. Treat it like a password.
4. Get a message template approved
Outside a live chat, WhatsApp only lets businesses start a conversation with a pre-approved
template. Order updates belong in the Utility category.
Category Utility, a lowercase name such as order_shipped, and a language (e.g. English en_US). The plugin needs this exact name and language code.
Write the body with numbered placeholders: Hi {{1}}, your order {{2}} has shipped. Add a sample value for each one, then submit.
Wait for the status Approved. Rejections are usually promotional wording in a Utility template, or a placeholder at the very start or end of the text.
Not sure what Meta accepts? The free WhatsApp template builder
has five ready WooCommerce texts (order confirmed, shipped, delivered, refund, abandoned cart), a
live preview and the checks Meta applies before review.
5. Paste everything into the plugin
In WordPress open Settings > Bulk Order Notifications for WA.
Fill Phone Number ID, Access Token (the System User token) and optionally WhatsApp Business Account ID, then save.
The setup checklist at the top of the page asks Meta directly and turns green for each part that works: token and number, approved templates, webhook.
Map each WooCommerce order status to a template name and language, or open the bulk-send screen and send a test to your own number.
6. Connect the delivery-status webhook
Optional, but it is what turns "sent" into delivered, read or
failed for each recipient in the send log.
On the plugin settings page, under Delivery status (webhook), copy the Webhook URL (it looks like https://yourshop.com/wp-json/wablk/v1/webhook) and the Verify token.
In your Meta app go to WhatsApp > Configuration > Webhook, click Edit, paste them into Callback URL and Verify token, then Verify and save.
In Webhook fields click Manage and subscribe to messages.
Send one test message. The checklist line "Delivery-status webhook" turns green on the first status Meta sends back.
Meta must reach your site over public HTTPS: a localhost or password-protected staging
site cannot be verified. If verification fails, check that a security plugin or firewall is not
blocking /wp-json/.
7. What Meta charges
Since 1 July 2025 Meta bills per delivered template message, not per
24-hour conversation. The charge goes straight from Meta to your card; the plugin adds nothing on
top.
Message
Cost
Utility template (order confirmed, shipped…) sent outside an open chat
Paid, per message, price set by the recipient's country, cheaper at volume
Utility template sent while the customer's 24-hour service window is open
Replies inside a chat the customer started (service)
Free
Any message within 72 hours after a customer clicks a Click-to-WhatsApp ad
Free
Current rates per country are on Meta's pricing page
(they change each quarter). Utility messages in most countries cost a fraction of a cent to a few
cents each: a store sending 500 order updates a month usually pays Meta a few dollars.
Ready to send
Once the checklist is green, order updates go out on every status change. The free version on
WordPress.org has no sending cap; the full version adds customer segments, scheduled sends,
abandoned-cart reminders and CSV export for $39 once.