Short answer: you have three options. Use a ready-made connector or plugin if one exists for your platform, use a no-code or low-code automation tool for a few simple flows, or build a custom integration that calls a messaging REST API and receives webhooks. Plugins are fastest; custom integration gives you the most control over which events send messages and how replies reach your CRM.
Updated 29 October 2026.
The three integration options
1. Ready-made connector or plugin. Some platforms have a plugin that links them to a messaging provider. For example, Bloomwire's SMS plugin for WordPress and WooCommerce is installed from a zip file, adds a "Bloomwire SMS" tab where you enter your API key and Sender ID, and sends SMS alerts when an order changes status (pending, on hold, processing, completed). Templates are customisable with WooCommerce short-codes. A plugin gets you live quickly, but you are limited to the events and settings it supports. Ask your vendor whether a connector exists.
2. No-code or low-code automation. Built-in automation rules or workflow tools react when a record changes and call a web address. This suits one or two simple flows, such as "message the customer when an invoice is paid". Check how failures are reported, what each automated task costs, and whether customer data passes through another service.
3. Custom integration via REST APIs and webhooks. Your system calls the messaging provider's API when a business event happens, and a webhook endpoint you control receives inbound messages and delivery statuses. You control logic, data mapping and error handling, but you need developers to build and maintain it.
How the data flows
Outbound messages, such as an order update, follow this path:
- A business event happens in your ERP, CRM or store, for example an order is dispatched.
- Your integration picks the right template and fills in variables such as the order number and delivery date.
- It calls the messaging API and stores the message ID that comes back.
- The provider delivers the message by WhatsApp or SMS.
- Status updates come back. On WhatsApp, Meta's status webhook reports sent, delivered, read and failed; SMS gateways provide delivery reports. Your integration writes the status back to the record.
Inbound messages run the other way:
- A customer sends a WhatsApp message.
- Meta sends a webhook to your endpoint, or to your messaging platform.
- Your integration matches the phone number to a contact and creates or updates a CRM record, activity or ticket.
- An agent replies. When a customer messages you, a 24-hour customer service window opens, during which you can send free-form messages. Outside that window you can send only pre-approved templates.
Which messages to automate, and their WhatsApp category
Meta sorts WhatsApp templates into three categories: marketing, utility and authentication. Utility templates are typically triggered by a user action or request, and must be non-promotional and either specific to the user or essential to them. Authentication templates verify identity, and only they can send one-time passcodes.
- Order confirmations: utility, as in Meta's own examples.
- Shipping and delivery updates: utility, including tracking numbers and expected delivery dates.
- Payment reminders and refunds: utility, under account alerts.
- Appointment reminders: these usually fit the utility definition when they concern the customer's own booking and contain no promotion. Meta does not give an appointment example, so test your wording during template review.
- One-time passcodes: authentication on WhatsApp. By SMS, OTPs are sent as transactional SMS. Bloomwire's Verify API sends one-time codes by SMS and by WhatsApp authentication templates.
- Offers, launches and win-back messages: marketing, and only to customers who have opted in.
Keep promotions out of utility templates. Meta says templates that mix utility and marketing content count as marketing, and it runs a recurring process that can move a utility template into the marketing category.
Effort and risks to plan for
- Template approval. Only templates with an approved status can be sent. Meta notes that review can take up to 24 hours, and templates can be paused or disabled after repeated negative feedback. Build in a fallback, such as SMS, for critical alerts.
- Messaging limits. Meta caps how many unique users you can message outside customer service windows in a moving 24-hour period. The limit is set per business portfolio and starts at 250 for new portfolios, then rises through tiers as you verify your business and keep quality high.
- Throughput. Each WhatsApp business number supports up to 80 messages per second by default. Sending faster returns error 130429, and sending too many messages to one user can trigger a pair rate limit. Queue large batches.
- Opt-in records. Meta requires a clear opt-in that names your business. Store when, where and how each customer agreed, and honour opt-outs. Sri Lanka's Personal Data Protection Act No. 9 of 2022 also applies, so take legal advice on consent.
- Retries and idempotency. If your endpoint does not return HTTP 200, Meta retries webhooks for up to seven days, which can cause duplicates. Process each event once, using the message ID. For outbound sends, record each attempt before calling the API so a retry after a timeout does not message the customer twice.
- Security. Meta signs webhook payloads in the X-Hub-Signature-256 header. Validate it with your app secret before trusting the data.
- Logging. Log each request, response, message ID and status; alert on rising failures.
- Personal data. Phone numbers, names and order details are personal data. Send only what the message needs, restrict access to logs and set a retention period.
Decision table
| Your situation | Best fit | Watch out for |
|---|---|---|
| WooCommerce store that needs SMS order alerts | Ready-made plugin | Limited to the order events the plugin supports |
| One or two simple notifications, no in-house developers | No-code or low-code automation | Weak error handling, per-task costs, data passing through another service |
| ERP or CRM with custom workflows and two-way conversations | Custom integration with REST APIs and webhooks | Build and maintenance effort, webhook hosting |
| Login, password reset or payment verification | OTP API using SMS or WhatsApp authentication templates | Code expiry and abuse protection |
| High-volume notifications from several systems | Custom integration with a message queue | Messaging limits, throughput and template quality |
| Agents need to see and answer replies | Messaging platform with a shared inbox, linked to your CRM by API | Matching contacts reliably by phone number |
How Bloomwire helps
Bloomwire is an official Meta Tech Provider and runs the Unecast platform for WhatsApp messaging, SMS, shared inbox, automation and AI agents. Through our software engineering services we build APIs and system integrations, WhatsApp, SMS and AI integrations, and look after them afterwards. We start with discovery and architecture, then build, test and improve.
- We built the Bloomwire SMS plugin for WooCommerce.
- We deliver WhatsApp API integrations using APIs and webhooks, connecting messaging to websites, CRMs, online stores and payment gateways.
- Our SMS gateway offers an API, real-time delivery reports and integrations with CRM and e-commerce systems.
- Developers can find API information on the Unecast developer hub, which also lists ready-made integrations: WooCommerce and Shopify for order and delivery updates, WordPress, WHMCS, and Microsoft Power Platform, plus webhooks and MCP servers.
Frequently asked questions
Do we need a ready-made plugin for our ERP?
No. A plugin is convenient, but if your ERP can call an HTTP API or run custom code on events, a custom integration can send messages and receive webhooks without one.
Can we send order updates on WhatsApp if the customer has not messaged us?
Yes, using an approved utility template to a customer who has opted in. Outside the 24-hour customer service window, only approved templates can be sent.
What happens if our webhook endpoint goes down?
Meta retries delivery with decreasing frequency for up to seven days. Because retries can produce duplicates, your handler should ignore events it has already processed.
Should OTPs go by SMS or WhatsApp?
Either works. On WhatsApp, OTPs must use authentication templates; by SMS they go as transactional messages. Choose based on what your customers use.
How many WhatsApp messages can we send a day?
It depends on your messaging limit, which counts unique users reached outside customer service windows. New business portfolios start at 250 and move up tiers with verification and good quality.
Related reading
- WhatsApp Business API
- Bulk SMS gateway and API
- SMS API integration for WooCommerce
- Customer story: Colombo Furniture House
- Software engineering services
Planning to connect WhatsApp or SMS to your ERP, CRM or online store? Tell us which systems you use and which messages you want to automate. Discuss your project.
Sources
- Meta for Developers: Templates overview
- Meta for Developers: Template categorisation
- Meta for Developers: Send messages (customer service window)
- Meta for Developers: Messaging limits
- Meta for Developers: Throughput
- Meta for Developers: Get opt-in for WhatsApp
- Meta for Developers: Webhooks overview
- Meta for Developers: Status messages webhook reference
- Meta for Developers: Getting started with webhooks (validating payloads)
- Data Protection Authority of Sri Lanka: Background


