商品を顧客にシェアする

商品を顧客にシェアする方法はいくつかあります。

カタログメッセージ

カタログメッセージは、WhatsApp内に商品カタログ全体を表示することができる自由形式のメッセージです。

カタログメッセージには、お好きな商品サムネイルヘッダー画像、カスタム本文、固定テキストヘッダー、固定テキストサブヘッダー、[カタログを見る]ボタンが表示されます。

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

要件

WhatsApp BusinessアカウントにリンクされているEコマースカタログのインベントリーがMetaにアップロードされていなければなりません。

リクエストの構文

[WhatsApp Business電話番号] > [メッセージ]エンドポイントを使用してカタログメッセージを送信します。

POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/messages

POST本文

{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "to": "<TO>",
  "type": "interactive",
  "interactive" : {
    "type" : "catalog_message",
    "body" : {
      "text": "<BODY_TEXT>"
    },
    "action": {
      "name": "catalog_message",
      
      /* Parameters object is optional */
      "parameters": {
        "thumbnail_product_retailer_id": "<THUMBNAIL_PRODUCT_RETAILER_ID>"
      }
    },

    /* Footer object is optional */
    "footer": {
      "text": "<FOOTER_TEXT>"
  }
}

プロパティ

プレースホルダー説明値の例

<BODY_TEXT>

文字列

必須。


メッセージ本文に表示されるテキスト。


最大1024文字。

Hello! Thanks for your interest. Ordering is easy. Just visit our catalog and add items to purchase.

<FOOTER_TEXT>

文字列

任意。


メッセージフッターに表示されるテキスト。


60文字以内。

Best grocery deals on WhatsApp!

<THUMBNAIL_PRODUCT_RETAILER_ID>

文字列

任意。


商品SKU番号。コマースマネージャでコンテンツIDとしてラベル付けされます。


この商品のサムネイルは、メッセージのヘッダー画像として使用されます。


parametersオブジェクトが省略された場合、カタログの最初の商品の商品画像が使用されます。

2lc20305pt

<TO>

文字列

顧客の電話番号。

+16505551234

リクエストの例

curl 'https://graph.facebook.com/v17.0/106540352242922/messages' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer EAAJB...' \
-d '
{
  "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_urltrueに設定して使用すると、メッセージのbody文字列の任意のURLの製品カタログサムネイルのセットが、メッセージでレンダリングされます。

カタログを無効にした場合、カタログリンクメッセージのwa.meリンクと[カタログを表示]ボタンをタップすると、無効なカタログリンクというメッセージが表示されます。

wa.meリンクを組み立てるには、国番号も入れたビジネス電話番号を、次の文字列の末尾に付けます。

https://wa.me/c/

例:

https://wa.me/c/15555455657

商品メッセージ

複数商品メッセージと単一商品メッセージのメッセージタイプは、いずれもinteractiveです。

複数商品メッセージの例:
単一商品メッセージの例:
ユーザーが[ショッピングを開始]をクリックするとトリガーされるメニュー:
商品詳細ページの例:

概要

複数商品または単一商品メッセージを受け取った顧客は、主な3つのアクションを実行することができます。

  1. 商品を表示する: 顧客は、商品リストまたは単一商品を表示することができます。顧客が特定の商品をクリックするたびに、Metaはその商品の最新情報を取得し、商品詳細ページ(PDP)形式で商品を表示します。現在のところPDPがサポートしているのは商品の画像だけです。商品に追加された動画やGIFは、PDPに表示されません。
  2. カートに商品を追加する: ユーザーがショッピングカートに商品を追加すると、Metaはその商品の最新情報を取得します。いずれかの商品に状態変更があった場合、「カート内の1つ以上の商品が更新されました」というダイアログが表示されます。詳しくは商品のアップデートをご覧ください。カートは、カートがあなたに送信されるまであなたと顧客間のチャットスレッドに残ります。詳細はショッピングカートエクスペリエンスをご覧ください。
  3. あなたにショッピングカートを送信: 顧客は必要な商品をすべて追加した後、カートを送信することができます。それから、あなたは次のステップ(配送情報のリクエストや支払いオプションの提示など)を定義することができます。

顧客のアカウントに複数のデバイスがリンクされている場合、デバイス間で複数商品メッセージと単一商品メッセージが同期されます。しかし、ショッピングカートは、デバイスごとにローカルになります。詳しくは、ショッピングカートエクスペリエンスをご覧ください。

現在のところ、各プラットフォームで受け取れるメッセージのタイプは、以下のとおりです。

  • iOS: 2.21.100 (複数商品メッセージ)と2.21.210 (単一商品メッセージ)。
  • Android: 2.21.9.15 (複数商品メッセージ)と2.21.19 (単一商品メッセージ)。
  • ウェブ: これらの機能をサポートするウェブクライアントがリリースされました。

顧客のアプリバージョンが複数商品または単一商品メッセージに対応していない場合、古いバージョンのWhatsAppを使用しているためメッセージを受信できなかったことを説明するメッセージが顧客に送信されます。また、顧客が古いバージョンのWhatsAppを使用しているため、メッセージが配信できなかったことを示すWebhooks通知があなたに届きます。

メッセージについて予期される動作

複数商品メッセージと単一商品メッセージでは、次のことができます。

  • 別のユーザーに転送する。
  • ユーザーが同じスレッド内で再び開く。

複数商品メッセージと単一商品メッセージでは、次のことはできません。

  • 通知として送信する。それらは既存のスレッドの一部としてのみ送信できます。

制限

WhatsApp Businessアプリを通じて送信された商品メッセージとは異なり、クラウドAPI経由で送信されたメッセージでは、現在のところ、チャットスレッドヘッダーにショッピングカートのアイコンが表示されません。

商品のアップデート

カタログ内の商品のプロパティをアップデートする必要があるかもしれません。アップデートされたプロパティに応じて、その商品をメンションするメッセージは、次のように扱われます。

アップデートされたプロパティアップデートプロセス

商品の価格、タイトル、説明、画像。

  1. 商品Aを含む複数商品または単一商品メッセージを送信します。
  2. 商品Aのプロパティをカタログでアップデートします。
  3. その商品が表示されている画面は、顧客のクライアントがサーバーからのその変更を認識した時点ですぐにアップデートされます。

在庫状況の変更

  1. あなたは顧客に商品Bを含む複数商品または単一商品メッセージを送信します。
  2. 在庫にあった商品Bのすべてのユニットを販売しました。商品Bが在庫切れになったことがわかるようにカタログをアップデートします。
  3. 顧客がすでに商品Bをカートに追加していた場合、商品はカートから削除されます。ショッピングカートから、「カート内の1つ以上の商品が更新されました」というダイアログが表示されます。
  4. 顧客が商品Bをカートに追加していない場合、複数商品または単一商品メッセージで、その商品が在庫切れであることが示されます。

ショッピングカートエクスペリエンス

商品を見た後、顧客はショッピングカートに追加し、そのカートをあなたに送ることができます。WhatsAppでの商取引の場合、ショッピングカートには次の特徴があります。

  • 特定のデバイスにおける顧客とビジネス間のチャットスレッドに固有である。あなたと顧客の間のチャットスレットに対して1カートのみが作成され、複数のデバイス間でカートが保持されることはありません。一度カートが送られたら、顧客は別のカートを開いて、同じプロセスを再び始めることができます。
  • 有効期限なし。カートは送信されるまでチャットスレッドに残ります。送信されると、カートの中身が空になります。

顧客は、カタログのそれぞれの商品をショッピングカートに最大99個まで追加できますが、カートに追加できる商品の種類の数に制限はありません。

送信が完了したカートは編集できません。新しい商品を必要とする場合、または注文を変更したい場合は、新しいカートを送信できます。あなたが顧客にカートを送ることはできません。

ショッピングカートエクスペリエンスの例と商品状態の変更に対して予期される動作。

使用するべき理由

複数商品と単一商品メッセージはどちらもシンプルかつパーソナライズされたユーザー体験に最適です。インベントリー全体を閲覧するのではなく、顧客に最も関連性の高い一部の商品を案内できるので、より良いエクスペリエンスになります。

シンプルで効率的

顧客が何を探しているのかを知るために、これらの機能を、自然言語処理、テキスト検索やリストメッセージ、返信ボタンなどのナビゲーションツールと組み合わせて使うと効果的です。

パーソナライゼーション

顧客や状況に合わせてパーソナライズするのを可能にするため、動的にデータが設定されます。例えば、顧客が最も頻繁に注文する商品の複数商品メッセージを表示することができます。

ビジネスの成果

テストビジネスにおいて、注文促進のための高効率チャネルでは、送信された複数商品メッセージからカート受信へのコンバージョンが平均7%でした。

テンプレートなし

インタラクティブなメッセージに、テンプレートや事前承認は必要ありません。このようなメッセージはリアルタイムで生成され、常にインベントリーからの商品の最新の詳細、価格、在庫水準が反映されます。

利用に適したケース

複数商品メッセージは、顧客に特定の一部のインベントリーを案内するのに最適です。

  • 会話的な方法でのショッピング。例えば、検索機能を使うことによって、顧客がショッピングリストを入力できるようにし、その応答として複数商品メッセージを送信することが考えられます。
  • 特定のカテゴリへのナビゲーション。例えば、フィットネスアパレル。
  • パーソナライズされたオファーやおすすめ。
  • 過去に注文された商品の再注文。例えば、ユーザーは、30個未満の定期的なテイクアウト注文を再注文することができます。

単一商品メッセージは、顧客にインベントリーの特定の商品に案内するのに最適です。次のような限られたオプションから迅速な返信を提供します。

  • 顧客の特定のリクエストに対応する場合。
  • おすすめの提供。
  • 前回の商品の再注文。

どちらの機能も、ヒューマンエージェントフローの一部として使うことができますが、そのためには、ヒューマンエージェントが複数商品メッセージまたは単一商品メッセージをスレッド内に生成するためのツールを構築する必要があります。

スタートガイド

商品メッセージを送信する前に、実際のニーズに最適のスタートガイドに従ってください。

このガイドに出てくるAPI呼び出しはすべて、アクセストークンで認証されなければなりません。開発者は、[アプリダッシュボード] > [WhatsApp] > [API設定]パネルで生成されたアクセストークンを使用して、API呼び出しを認証できます。ソリューションパートナーは、whatsapp_business_messagingアクセス許可とアクセストークンで認証する必要があります。

ステップ1: interactiveオブジェクトをアセンブルする

単一商品メッセージ

単一商品メッセージを送信するには、以下のコンポーネントを使用して、typeがproductであるinteractiveオブジェクトをアセンブルします。

必須コンポーネント任意コンポーネント
  • Actionオブジェクト — catalog_idとproduct_retailer_idの両方が含まれていなければなりません。
  • Bodyオブジェクト
  • Footerオブジェクト

詳しくは、メッセージ、interactiveオブジェクトをご覧ください。処理が終わった段階で、interactiveオブジェクトは次のようになっているはずです。

{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "to": "PHONE_NUMBER",
  "type": "interactive",
  "interactive": {
    "type": "product",
    "body": {
      "text": "BODY_TEXT"
    },
    "footer": {
      "text": "FOOTER_TEXT"
    },
    "action": {
      "catalog_id": "CATALOG_ID",
      "product_retailer_id": "ID_TEST_ITEM_1"
    }
  }
}

複数商品メッセージ

複数商品メッセージを送信するには、以下のコンポーネントを使用して、typeがproduct_listであるinteractiveオブジェクトをアセンブルします。

必須コンポーネント任意コンポーネント
  • Headerオブジェクト — ヘッダーのタイプはテキストに設定する必要があります。希望するコンテンツのテキストオブジェクトを追加することを忘れないでください。
  • Bodyオブジェクト
  • Actionオブジェクト - catalog_idとセクションを含める必要があります。
    • セクションは、titleとproduct_itemsを使って各セクションを記述するオブジェクトの配列でなければなりません。
      • 各セクションのproduct_items値は、product_retailer_idと商品のSKU番号を使ってそのセクション内の各商品について記述する配列でなければなりません。
  • Footerオブジェクト

詳しくは、メッセージ、interactiveオブジェクトをご覧ください。処理が終わった段階で、interactiveオブジェクトは次のようになっているはずです。

{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "to": "PHONE_NUMBER",
  "type": "interactive",
  "interactive": {
    "type": "product_list",
    "header":{
      "type": "text",
      "text": "HEADER_CONTENT"
    },
    "body": {
      "text": "BODY_CONTENT"
    },
    "footer": {
      "text": "FOOTER_CONTENT"
    },
    "action": {
      "catalog_id": "CATALOG_ID",
      "sections": [
        {
          "title": "SECTION_TITLE",
          "product_items": [
            { "product_retailer_id": "PRODUCT-SKU" },
            { "product_retailer_id": "PRODUCT-SKU" },
            ...
          ]

        },
        {
          "title": "SECTION_TITLE",
          "product_items": [
            { "product_retailer_id": "PRODUCT-SKU" },
            { "product_retailer_id": "PRODUCT-SKU" },
            ...
          ]
        }
      ]
    }
  }
}

ない商品

上記のAPI呼び出しで指定された商品が商品カタログの商品と一致しない場合、エラーメッセージが送信され、複数商品または単一商品メッセージはユーザーに送信されません。

複数商品メッセージの場合、商品リストの少なくとも1つの商品が商品カタログの商品と一致している必要があります。このようなケースでは、次のようになります。

  • メッセージは正常に送信されます
  • 一致しない商品はドロップされます
  • カタログのアップデートを求めるエラーメッセージが送信されます

ステップ2: 共通のメッセージパラメーターを追加する

interactiveオブジェクトが完成したら、メッセージを構成するその他のパラメーターとして、recipient_typetomessaging_producttypeを追加します。typeを必ずinteractiveに設定してください。

curl -X  POST https://graph.facebook.com/v19.0/FROM_PHONE_NUMBER/messages \
 -H 'Authorization: Bearer ACCESS_TOKEN' \
 - d '{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "to": "PHONE_NUMBER",
  "type": "interactive",
  "interactive": {
  // INTERACTIVE OBJECT GOES HERE    
}'

利用可能なすべてのパラメーターについては、リファレンス、メッセージをご覧ください。

ステップ3: メッセージエンドポイントにリクエストを送信する

ステップ1と2でアセンブルしたJSONオブジェクトを使って、POSTリクエストを/PHONE_NUMBER_ID/messagesエンドポイントに送信します。メッセージが正常に送信されると、次の応答を受け取ります。

{
  "messaging_product": "whatsapp",
  "contacts": [{
      "input": "PHONE_NUMBER",
      "wa_id": "WHATSAPP_ID",
    }]
  "messages": [{
      "id": "wamid.ID",
    }]
}

複数商品テンプレートメッセージ

複数商品テンプレートメッセージを送信するには、複数商品メッセージテンプレートが必要です。それらのテンプレートを作成する方法、テンプレートメッセージの中でそれらを送信する方法について詳しくは、複数商品メッセージテンプレートのドキュメントをご覧ください。