Skip to content

Power Automate WhatsApp connector: options, cost and setup

Power Automate has no Microsoft-published WhatsApp connector: use a third-party Premium connector or a custom one. Options, licences and setup compared.

Written by
By WavesFlo team
Last updated
Updated
Reading time
9 min read

Power Automate has no Microsoft-published WhatsApp connector. As of October 2026 its catalogue lists two from third parties, tyntec WhatsApp Business and WhatsApp (Independent Publisher), and both are Premium. The other routes, a custom connector such as WavesFlo's or the HTTP action calling a WhatsApp service, need a premium licence too, so none runs on the free plan.

This guide compares the four options, answers the cost question, then sets up WavesFlo's connector step by step and covers the two jobs people most often build: posting into WhatsApp groups, and starting a flow when a message arrives.

Which WhatsApp connectors work with Power Automate?

Checked against Microsoft Learn on 5 October 2026. Connector listings and licence rules change; if the catalogue or your admin centre disagrees with this table, they are right.
WhatsApp options for Power Automate, checked October 2026
OptionWho publishes itLicence in Power AutomateSends to groupsReceives messagesWhat you need
tyntec WhatsApp Businesstyntec GmbHPremiumNo group actions listedYes: an Incoming message triggerA tyntec account and API key, a number set up through tyntec, and pre-registered messages for anything sent more than 24 hours after the customer last wrote
WhatsApp (Independent Publisher), in previewAn independent developerPremiumNoNo triggerA Meta developer app: its one action, Send a Message, sends a pre-registered message from the app's test number to a phone number registered on that app
HTTP action or your own custom connectorYouPremiumOnly if the service you call canOnly if the service can call a flow backA WhatsApp service with a REST API, and its keys
WavesFlo connectorWavesFlo, imported by you as a custom connectorPremium (custom connector)Yes, into groups your connected numbers belong toYes: signed webhook events sent to an HTTP-triggered flowA WavesFlo plan, a scoped API key, and a WhatsApp number linked by QR code from Linked devices

Neither catalogue connector lists a group action, and the Independent Publisher one describes itself as sending from a Meta developer app's test number, which suits trying things out more than running a business on it. A few multi-channel messaging connectors, TopMessage for one, also list WhatsApp among their channels. In Azure Logic Apps, both WhatsApp connectors are Standard rather than Premium.

Is the Power Automate WhatsApp connector free?

Not on the free plan, and not with the Power Automate that comes with Microsoft 365. Microsoft's licensing FAQ says users on those plans can only use standard connectors, and every WhatsApp route is premium: both catalogue connectors are Premium, Microsoft describes the HTTP connector as premium, and custom connectors are a separate entitlement that Power Automate Premium and Process licences include.

Which Power Automate licences can run a WhatsApp flow, checked October 2026
LicenceStandard connectorsPremium and custom connectors
Power Automate FreeYesNo
Microsoft 365 plansYesNo
Power Apps PremiumYesOnly for flows tied to an app the licence covers
Power Automate Premium (per user)YesYes
Power Automate Process (per flow)YesYes, for the flow it is assigned to, which must be in a solution
Power Automate trialYesYes, for 90 days

In practice the flow's owner needs Power Automate Premium, or the flow needs a Process licence, which also covers everyone who runs it. Then add whatever the service behind the connector charges. WavesFlo doesn't charge for its connector separately: it is included on every plan, from Developer up (see pricing). In a Consumption logic app there is no Power Automate licence at all: each call through a custom connector is metered at the Standard connector rate.

Set up the WavesFlo connector, step by step

  1. In WavesFlo, issue an API key under Integration → API keys, scoped to only what your flows need. The key is shown once, so copy it somewhere safe.
  2. Get the connector definition from WavesFlo. It is a Swagger 2.0 file, the OpenAPI version Power Automate imports.
  3. In Power Automate, open Solutions, open a solution or create one, then select New → Automation → Custom connector → Import an OpenAPI file, and choose that file. Building inside a solution also keeps the option of a Process licence open later.
  4. On the General tab, set Host to your WavesFlo API address. Authentication is already defined in the file: an API key sent in the x-api-key header.
  5. Select Create connector.
  6. In a flow, add an action from the connector and create a connection by pasting your API key.
  7. Run the "Check a key and see what it can do" action first. It confirms the connection works and lists the scopes the key carries.

Admins who script their environments can create the same connector from the command line with Microsoft's paconn tool, passing the definition file and its properties file. If a flow calls an action its key is not scoped for, the call fails with 403 SCOPE_MISSING and names the scope it needed, so grant scopes as flows need them rather than all at once.

Send a WhatsApp message to a group from Power Automate

WavesFlo posts from WhatsApp numbers you have linked by QR code, into groups those numbers already belong to, so a flow can reach the groups your team runs from its phones. A number can only post into a group it is a member of, and a group post reaches everyone in that group.

  1. Pick the groups. The connector's groups actions list every group your connected numbers belong to, once each, even when several of your numbers are in the same group.
  2. Inside Apply to each over those groups, add the connector's Send a message action, with the group as the recipient and your text, which is sent exactly as written.
  3. Give each send an Idempotency-Key built from whatever started the flow and the group, such as the SharePoint item's ID followed by the group's ID, so a retry can't post twice.
  4. If someone should sign off first, put Power Automate's Approvals before Apply to each, so nothing goes until a person approves.
  5. Test against a group that holds only your own team before pointing the flow at real ones.

Each send passes the number's sending rules as it goes: its daily and hourly caps, a 24-hour cooldown per recipient, in which a group counts as one, quiet hours and opt-outs. A send the rules hold back is refused rather than queued: a 429 carries a Retry-After header saying how long to wait, and a 403 SEND_BLOCKED means a member of the group withdrew consent, which no retry fixes. Campaigns started in the dashboard also space their posts with a randomised 30 to 300 second gap; a flow that wants the same spacing can add a Delay inside the loop. Groups skim, so format the text first: the WhatsApp text formatter previews bold, italics and lists. Sending one message to many WhatsApp groups covers timing and per-group reports.

Trigger a flow when a WhatsApp message arrives

A trigger has to come from the service that holds the number. tyntec's Incoming message trigger covers numbers on tyntec, and the Independent Publisher connector has none. WavesFlo's message.received event fires for every inbound message on a connected number, in direct chats and groups alike, and carries the chat and its kind, the sender, the message type and body, and a timestamp.

  1. Create a cloud flow that starts with When an HTTP request is received, and save it to generate the URL.
  2. Set who can trigger the flow to Anyone. Microsoft's other two settings expect a Microsoft Entra token from your tenant; WavesFlo signs each delivery with an HMAC instead, so the signature check below is what keeps strangers out.
  3. In WavesFlo, add a webhook destination with that URL, subscribed to the Messaging category.
  4. Verify every delivery before acting on it: an HMAC-SHA256 over the X-Wavesflo-Timestamp header, a dot and the raw body, compared with the X-Wavesflo-Signature header. Power Automate's expression functions have no HMAC, so run the check in a small Azure Function using the code in the webhooks guide, and continue only when it passes.
  5. Deduplicate on the event identifier, because delivery is at least once, then do the work: add a row to an Excel table or SharePoint list, post to a Teams channel, or open a task for whoever owns that chat.

These flows don't reply: they log, alert and route, and answers go out from the shared inbox, which holds every connected number's chats in one list. The same twenty signed events also cover group joins and leaves, poll votes, consent, campaigns and numbers dropping off.

What the connector is

The connector is generated from the WavesFlo API's own OpenAPI description, so every endpoint appears as an action, and the connector tracks the API rather than drifting from it. Whatever the API covers, such as messages, groups and contacts, is available to a flow; campaigns themselves are set up and started in WavesFlo.

Flows worth building

  • A new row in a SharePoint list or Excel table sends an approved message to the person or group it names. The Excel to WhatsApp walkthrough builds this flow step by step.
  • A Power Apps screen lets a team pick groups and request a post, with Power Automate's Approvals before it sends.
  • A daily flow reads the day's messages through the API and files them where a manager can find them.
  • A Logic App reacts to a webhook event, such as consent.withdrawn, and updates your customer record.

Working outside Microsoft? Connect WavesFlo to n8n through the REST API and signed webhooks, with n8n's own HTTP Request and Webhook nodes; n8n workflows for WhatsApp groups shows how.

Make retries safe

Flows retry failed actions, and a retried send must not go out twice. Sends and other create actions accept an Idempotency-Key, and a retry with the same key within 24 hours returns the first result instead of repeating the action. Deliveries to your flows are at least once, so deduplicate on the event identifier too.

The limits still apply

A message sent from Power Automate passes the same rules as one sent from the dashboard: per-number caps, cooldowns, quiet hours and opt-outs are enforced in the delivery engine, not in the tool that called it. The full API is on every plan; see the developer reference.

Illustration

To keep a record of conversations in a workbook, see saving WhatsApp messages to Excel.

Questions

Does Power Automate have a native WhatsApp connector?

No. As of October 2026 Microsoft's catalogue lists two WhatsApp connectors, tyntec WhatsApp Business and WhatsApp (Independent Publisher), and neither is published by Microsoft. Both are Premium in Power Automate.

Is the Power Automate WhatsApp connector free?

Not on the free or Microsoft 365 plans, which only cover standard connectors. Every WhatsApp route, catalogue connector, custom connector or HTTP action, needs Power Automate Premium, a Process licence or a trial. WavesFlo includes its connector on every plan at no extra charge.

Can Power Automate send a WhatsApp message to a group?

Not with the catalogue connectors, which have no group actions. WavesFlo's custom connector can, posting into groups that your linked WhatsApp numbers already belong to.

Can Power Automate receive WhatsApp messages?

Yes, through a trigger from the service that holds the number. tyntec's connector has an Incoming message trigger for numbers on tyntec; WavesFlo sends a signed message.received event to a flow that starts with When an HTTP request is received.

Is there a WhatsApp connector for Logic Apps?

Yes. Both catalogue WhatsApp connectors are available in Azure Logic Apps, where they are Standard rather than Premium. A custom connector such as WavesFlo's also works in a Consumption logic app, with its calls billed at the Standard connector rate.

Can a flow send a WhatsApp message twice by retrying?

With WavesFlo's connector, not if each send carries an Idempotency-Key, for example one built from the item that started the flow: a retry with the same key returns the first result instead of repeating the action.

Sources

Keep reading

See it on your own numbers.