オンプレミスAPIを終了します。詳細と次世代クラウドAPIへの移行方法については、オンプレミスAPIの終了のドキュメントを参照してください。
ビジネスは、次のいくつもの方法で顧客と商品をシェアできます。
カタログメッセージは、WhatsApp内に商品カタログ全体を表示することができる自由形式のメッセージです。
カタログメッセージには、お好きな商品サムネイルヘッダー画像、カスタム本文、固定テキストヘッダー、固定テキストサブヘッダー、[カタログを見る]ボタンが表示されます。

顧客が[カタログを見る]ボタンをタップすると、商品カタログがWhatsApp内に表示されます。

自分のWhatsApp BusinessアカウントにリンクされたEコマースカタログ内に、Metaにアップロードされたインベントリーが必要です。
[WhatsApp Business電話番号] > [メッセージ]エンドポイントを使用してカタログメッセージを送信します。
POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/messages
{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "<TO>",
"type": "interactive",
"interactive" : {
"type" : "catalog_message",
"body" : {
"text": "<BODY_TEXT>"
},
"action": {
"name": "catalog_message",
"parameters": {
"thumbnail_product_retailer_id": "<THUMBNAIL_PRODUCT_RETAILER_ID>"
}
},
/* Footer object is optional */
"footer": {
"text": "<FOOTER_TEXT>"
}
}| プレースホルダー | 説明 | 値の例 |
|---|---|---|
String | 必須。 メッセージ本文に表示されるテキスト。 最大1024文字。 |
|
String | 任意。 メッセージフッターに表示されるテキスト。 60文字以内。 |
|
String | 必須。 アイテムのSKU番号。コマースマネージャでコンテンツIDとしてラベル付けされます。 この商品のサムネイルは、メッセージのヘッダー画像として使用されます。
|
|
String | 顧客の電話番号。 |
|
{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "16505551234",
"type": "interactive",
"interactive": {
"type": "catalog_message",
"body": {
"text": "Hello! Thanks for your interest. Ordering is easy. Just visit our catalog and add items to purchase."
},
"action": {
"name": "catalog_message",
"parameters": {
"thumbnail_product_retailer_id": "2lc20305pt"
}
},
"footer": {
"text": "Best grocery deals on WhatsApp!"
}
}
}'
{
"messaging_product": "whatsapp",
"contacts": [
{
"input": "16505551234",
"wa_id": "16505551234"
}
],
"messages": [
{
"id": "wamid.HBgLMTY1MDM4Nzk0MzkVAgARGBI0ODVEREUwQzEzQkVBRjQ1RUUA"
}
]
}
カタログテンプレートメッセージは、タップするとWhatsApp内に商品カタログを表示するボタンを含むテンプレートメッセージです。

カタログテンプレートメッセージを送信するには、カタログテンプレートが必要です。カタログテンプレートを作成する方法や、カタログテンプレートをテンプレートメッセージで送信する方法について詳しくは、カタログテンプレートのドキュメントをご覧ください。
ビジネスは、wa.meリンクを組み立てて、それを標準のテキストメッセージに含めることによって、商品カタログ全体へのリンクを送信することができます。テキストメッセージを送信する際、ビジネスは、任意でpreview_urlをtrueに設定することにより、メッセージのbody文字列内の任意のURLの商品カタログサムネイルセットが、メッセージによってレンダリングされるようにすることができます。
ビジネスがカタログを無効にしている場合、カタログリンクメッセージ内のwa.meのリンクと[カタログを表示]ボタンをタップすると、カタログリンクが無効というメッセージが表示されます。
wa.meリンクを組み立てるには、次の文字列の末尾に、ビジネスのビジネス電話番号(国コードを含む)を付加してください。
https://wa.me/c/
以下はその例です。
https://wa.me/c/15555455657
複数商品メッセージと単一商品メッセージのメッセージタイプは、いずれもinteractiveです。
複数商品メッセージの例: | 単一商品メッセージの例: |
ユーザーが[ショッピングを開始]をクリックするとトリガーされるメニュー: | 商品詳細ページの例: |
複数商品メッセージと単一商品メッセージを受け取るユーザーが実行できる主なアクションには、次の3つがあります。
顧客の複数のデバイスが同じWhatsAppアカウントにリンクされている場合、デバイス間で複数商品メッセージと単一商品メッセージが同期されます。しかし、ショッピングカートは、デバイスごとにローカルになります。詳しくは、ショッピングカートエクスペリエンスをご覧ください。
現在のところ、各プラットフォームで受け取れるメッセージのタイプは、以下のとおりです。
2.21.100 (複数商品メッセージ)と2.21.210 (単一商品メッセージ)。2.21.9.15 (複数商品メッセージ)と2.21.19 (単一商品メッセージ)。受信者のアプリバージョンが複数商品メッセージか単一商品メッセージに対応していない場合、使われているWhatsAppのバージョンが古いためにメッセージを受信できなかったことを説明するメッセージが送られます。ビジネスの側も、受信者が使っているWhatsAppのバージョンが古いためにメッセージを配信できなかったことを示すwebhook通知を受け取ります。
複数商品メッセージと単一商品メッセージについて、可能な操作は次のとおりです。
カタログメッセージ、複数商品メッセージ、単一商品メッセージで行えない操作は次のとおりです。
ビジネスによる、カタログ内の商品のプロパティの更新が必要になることがあります。更新されるプロパティに応じて、その商品をメンションするメッセージは、次のように処理されます。
| アップデートされたプロパティ | 更新処理 |
|---|---|
商品の価格、タイトル、説明、画像。 |
|
在庫状況の変更 |
|
顧客は、いくつかの商品を見た後、それらをショッピングカートに追加して、カートをビジネスに送ることができます。WhatsAppでの商取引のため、ショッピングカートには次の特徴があります。
顧客は、カタログのそれぞれの商品をショッピングカートに最大99個まで追加できますが、カートに追加できる商品の種類の数に制限はありません。
送信が完了したカートは編集できません。新しい商品を必要とする、または注文を変更したい場合は、新しいカートを送信できます。ビジネスから顧客にカートを送信することはできません。
複数の商品に関するメッセージと単一の商品に関するメッセージは、いずれも、簡単かつパーソナライズされたユーザーエクスペリエンスとして最適です。ビジネスのインベントリー全体を表示するのではなく、顧客に最も関連した商品のサブセットを案内することにより、より良いエクスペリエンスを提供します。
顧客が何を探しているのかを素早く察知するために、これらの機能を、自然言語処理、テキスト検索やリストメッセージ、返信ボタンなどのナビゲーションツールと組み合わせて使うと効果的です。
顧客や状況に合わせてパーソナライズできるようにするため、動的にデータが設定されます。例えば、顧客が最も頻繁に注文する商品の複数商品メッセージを表示することができます。
テストビジネスにおいて、注文促進のための高効率チャネルでは、送信された複数商品メッセージからカート受信へのコンバージョンが平均7%でした。
インタラクティブなメッセージに、テンプレートや事前承認は必要ありません。このようなメッセージはリアルタイムで生成され、常にインベントリーからの商品の最新の詳細、価格、在庫水準が反映されます。
複数商品メッセージは、ビジネスのインベントリーの特定のサブセットに顧客を誘導するのに最適です。例えば、次のような場合です。
単一商品メッセージは、ビジネスのインベントリーにある特定の1つの商品に顧客を誘導したり、限られたオプションのセットから迅速な返信を実現したりするのに最適です。例えば、次のような場合です。
どちらの機能も、ヒューマンエージェントフローの一部として使うことができますが、そのためには、ヒューマンエージェントが複数商品メッセージまたは単一商品メッセージをスレッド内に生成するためのツールを構築する必要があります。
各メッセージを送信する前に、/contactsノードに対する呼び出しにより、受信者のWhatsApp IDを取得する必要があります。
Webhooksを設定して、メッセージステータスとインバウンドメッセージの通知を受け取ることをおすすめします。そうすれば、メッセージが送信されたかどうかや、顧客からの応答をトラッキングすることができます。
単一商品メッセージを送信するには、以下のコンポーネントにより、product型のinteractiveオブジェクトを組み立てます。
| オブジェクト | 説明 |
|---|---|
| 任意。 body(本文)オブジェクト。 |
| 任意。 footer(フッター)オブジェクト。 |
| 必須。 action(アクション)フィールドには、以下のものが含まれていなければなりません。
|
最終的に、interactiveオブジェクトは次のようになります。
"interactive": {
"type": "product",
"body": {
"text": "text-body-content"
},
"footer": {
"text": "text-footer-content"
},
"action": {
"catalog_id": "catalog-id",
"product_retailer_id": "product-SKU-in-catalog"
}
}複数商品メッセージを送信するには、以下のコンポーネントにより、product_list型のinteractiveオブジェクトを組み立てます。
| オブジェクト | 説明 |
|---|---|
| 必須。 ヘッダーの |
| 必須。
|
| 任意。
|
| 必須。 action(アクション)フィールドには、以下のものが含まれていなければなりません。
各セクション内には、以下のものを含めることができます。
各商品オブジェクトには、ユニークな商品IDに対応する |
最終的に、interactiveオブジェクトは次のようになります。
"interactive":
{
"type": "product_list",
"header":{
"type": "text",
"text": "text-header-content"
},
"body":{
"text": "text-body-content"
},
"footer":{
"text":"text-footer-content"
},
"action":{
"catalog_id":"catalog-id",
"sections": [
{
"title": "the-section-title",
"product_items": [
{ "product_retailer_id": "product-SKU-in-catalog" },
{ "product_retailer_id": "product-SKU-in-catalog" },
...
]},
{
"title": "the-section-title",
"product_items": [
{ "product_retailer_id": "product-SKU-in-catalog" }
...
]},
...
]
},
}
上記のAPI呼び出しで提供される商品の中に、ビジネスのFacebookカタログの商品と一致するものがない場合、エラーメッセージが送信され、そのユーザーには複数商品メッセージも単一商品メッセージも送信されません。
複数商品メッセージの場合、商品リストの少なくとも1つの商品がビジネスのFacebookカタログの商品と一致している必要があります。この場合、
interactiveオブジェクトが完成したら、メッセージを構成するその他のパラメーターとして、recipient_type、to、typeを追加します。typeを必ずinteractiveに設定してください。
{
"recipient_type": "individual",
"to" : "whatsapp-id", // WhatsApp ID of the recipient
"type": "interactive",
"interactive":{
// The interactive object
}
}すべてのメッセージタイプに共通するパラメーターについては、こちらをご覧ください。
/messagesに対してPOST呼び出しを発行するステップ1と2で構成したJSONオブジェクトを使って、/messagesエンドポイントに対してPOST呼び出しを行います。メッセージが正常に送信されると、次の応答を受け取ります。
{
"messages": [{
"id": "{message-id}"
}]
}複数商品テンプレートメッセージを送信するには、複数商品メッセージテンプレートが必要です。それらのテンプレートを作成する方法、テンプレートメッセージの中でそれらを送信する方法について詳しくは、複数商品メッセージテンプレートのドキュメントをご覧ください。