公式 Cloud APIでWhatsAppをn8nに接続
Webhookの送信先をn8n Webhookノードに指定すると、その番号へのすべてのメッセージがワークフローのトリガーとして届きます。返信は Cloud API経由、またはn8nがOAuth2対応のMCP Client Toolから接続できるMCPサーバー経由で送信できます。電話もそのまま使えます。
統合全体は、番号ごとに一度設定するWebhook送信先URLです。
顧客のメッセージから、ワークフローが自由文で返信できる時間枠です。
Coexistence番号ごとの送信速度で、ワークフローが送信できる速さを決めます。
WhatsAppのメッセージはどのようにn8nのワークフローへ届きますか?
Metaは、その番号に送られたすべてのメッセージを、指定した1つのURLへHTTP POSTで配信します。このURLが統合全体です。本番用URLにn8n Webhookノードを置き、番号のWebhook送信先として設定すると、受信メッセージごとにワークフローが実行されます。
ペイロードには、送信者、テキストまたはメディアの参照先、タイムスタンプ、メッセージIDが含まれます。その後は通常のn8nワークフローです。内容で分岐し、顧客を検索し、必要な処理を呼び出して、返信するかどうかを決めます。
これはCoexistenceなので、同じメッセージが電話のWhatsApp Business アプリにも表示されます。人が返信することもできます。ワークフローは人が送った内容を確認でき、人もワークフローが送った内容を確認できるため、互いの返信に重ねて返信することがありません。
{
"from": "14155550188",
"id": "wamid.HBgLMTQxNTU1NTAxODgVAgAS",
"timestamp": "1758412800",
"type": "text",
"text": { "body": "do you have anything friday?" }
}ワークフローから返信を送るにはどうしますか?
番号のphone number idとアクセストークンを使い、Cloud APIに対してHTTP Requestノードから送信します。どちらもダッシュボードから確認できます。必要であれば、MCPコネクター経由でアシスタントに取得させることもできます。
送信内容はタイミングによって異なります。ここが見落とされやすい点です。顧客の最後のメッセージから24時間以内なら自由文を使え、返信はワークフローが作成した内容になります。その時間を過ぎると、Metaがすでに承認したメッセージテンプレートだけが送信できます。自由文しか送らないワークフローは、メッセージの数秒後に行うテストでは問題なく見えます。しかし、実際に一晩空いたケースで初めて停止します。
確実な構成は分岐です。最後の受信メッセージからの経過時間を確認し、自由文かメッセージテンプレートかを選択します。
n8nではMCPコネクターも使えますか?
はい。この点でn8nは特殊です。MCP Client ToolノードからリモートMCPサーバーへ接続でき、OAuth2にも対応しています。これは当社のMCPサーバーに必要な機能なので、ワークフロー内のAI Agentノードから当社のツールを直接呼び出せます。
これは重要な点です。ほとんどの自動化プラットフォームは対応していません。MakeとZapierはどちらも独自のMCPサーバーを実行しますが、MCPクライアントとしては動作しないため、第三者のサーバーへ接続できません。n8nなら接続できます。
MCPが適しているのは、実行中のワークフローでエージェントノードがメッセージ送信、番号の接続状態確認、メッセージテンプレートの承認状況の取得などを判断して実行する部分です。Webhookの代わりにはできません。MCPには受信メッセージで呼び起こされる仕組みがないためです。
ワークフローではどちらを使うべきですか?
役割が異なるため、両方を使います。これは好みの問題ではありません。
Webhookは、処理を開始する方法です。顧客が書き込み、MetaがWebhookノードへ配信し、ワークフローが実行されます。どのツールにもMCPで同じことをする仕組みはありません。MCPは、呼び出しを受けるものではなく、リクエストとレスポンスのプロトコルだからです。
MCP Client Toolは、ワークフロー内のエージェントが、呼び出しをハードコードせずに処理を実行するためのものです。送信内容がすでに決まっているなら、Cloud APIに対するHTTP Requestノードのほうが簡単で、問題も起きにくくなります。エージェントが判断するなら、コネクターから11個のツールと各ツールの説明に含まれるルールを利用できます。24時間の時間枠もその一つです。
これは、すでに使われているn8nのWhatsAppノードと何が違いますか?
一般に見かけるn8nのWhatsApp構成の多くは、リンク済みデバイスとしてログインする非公式ゲートウェイを使っています。始めるのは簡単ですが、その仕組みはWhatsAppの規約に反しており、Metaはライブラリではなく通信パターンを検出するため、番号を危険にさらします。
もう一つの一般的な方法は、Coexistenceなしで公式APIを使うことです。動作しますが、番号を移行する必要があります。WhatsApp Business アプリはその番号で使えなくなり、一日中対応していたチームは新しいツールへ移行しなければなりません。多くの小規模企業にとって現実的ではないため、最初から非公式ゲートウェイを選ぶ企業が多くなりました。
Coexistenceは、これまで欠けていた組み合わせです。公式APIを使いながら、電話も使い続けられます。
よくある間違い
- n8nのテスト用URLをWebhook送信先に使うこと。エディターを閉じると待ち受けが停止するため、メッセージはどこにも配信されません。
- Metaの認証リクエストに応答しないこと。Metaは配信前にチャレンジ付きのGETを送信します。ノードがその内容を返さなければ、メッセージを受信できません。
- 24時間の時間枠を過ぎて自由文で返信すること。ワークフロー上は静かに失敗し、承認済みのメッセージテンプレートだけが送信されます。
easycoexistence.comで番号を接続し、Webhook送信先をn8n Webhookノードに設定すれば、受信が始まります。1番号あたり月額 US$ 9 から、利用量に応じて US$ 2 まで。最初の7日間は無料です。
よくある質問
このためにn8nの専用ノードが必要ですか?
いいえ。Webhookノードで受信し、HTTP Requestノードで送信します。統合はURLとREST呼び出しで構成されるため、インストールは不要です。
チームは電話から引き続き返信できますか?
はい。それがCoexistenceの意味です。同じ番号のWhatsApp Business アプリが使い続けられ、ワークフローと人の双方が互いのメッセージを確認できます。
1つのワークフローで複数の顧客の番号を処理できますか?
はい。すべての番号を同じWebhookに指定し、ペイロードの受信側phone number idで分岐します。1つのアカウントで必要な数の番号を保持できます。
n8nのインスタンスが停止したらどうなりますか?
Metaは一定期間配信を再試行し、その後停止します。メッセージは電話のWhatsApp Business アプリには届くため、企業にとって失われることはありません。ただし、ワークフローでは受信できません。
続きを読む
始める準備はできましたか?
WhatsApp Coexistence の設定は数分で完了し、数か月もかかりません。スマートフォン上のアプリも引き続き使えます。
無料トライアルを始める確認日