与客户共享商品

您可通过以下多种方式与客户共享商品:

  • 目录消息 — 包含一个按钮的自由格式消息。当客户点按该按钮后,系统会在 WhatsApp 中显示您的商品目录。
  • 目录模板消息 — 包含一个按钮的模板消息。当客户点按该按钮后,系统会在 WhatsApp 中显示您的商品目录。
  • 目录链接消息 — 包含目录缩略图和指向整个商品目录的链接的自由格式消息。
  • 商品消息 — 包含商品目录中单件商品或最多 30 件商品的相关信息的自由格式消息。
  • 多件商品模板消息 — 单条消息中包含您电子商务目录中最多 30 件商品(商品最多可分为 10 个组)的相关信息的模板消息。

目录消息

目录消息是自由格式的消息,您可通过目录消息在 WhatsApp 中完整地展示商品目录。

目录消息会显示您选择用作标题图片的商品缩略图、自定义正文文本、固定文本标题、固定文本子标题,以及一个查看目录按钮。

当客户点按查看目录按钮时,系统随即会在 WhatsApp 中显示您的商品目录。

要求

您必须将库存上传到 Meta 的电子商务目录,并将该目录与您的 WhatsApp Business 商业帐号关联

请求语法

使用 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>

字符串

必要。


消息正文中显示的文本。


不超过 1,024 个字符。

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 编号。在电商管理工具中标记为内容编号


此商品的缩略图将用作消息的标题图片。


如果您省略了 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_url(应设为 true),在消息中显示消息 body 字符串中任意网址所对应的一组商品目录缩略图。

请注意,如果您禁用目录,当客户点击目录链接消息中的 wa.me 链接和查看目录按钮时,系统将显示以下消息:无效的目录链接

如要整合出 wa.me 链接,请将您的公司电话号码(含国家/地区代码)附加到以下字符串的末尾:

https://wa.me/c/

例如:

https://wa.me/c/15555455657

商品消息

多件商品消息和单件商品消息都属于 interactive 消息类型。

多件商品消息示例:
单件商品消息示例:
当用户点击“开始购物”后,系统触发的菜单:
商品详情页面示例:

概览

当客户收到多件商品消息和单件商品消息时,他们可以执行以下 3 个主要操作:

  1. 查看商品:客户可以查看商品清单,也可以只查看一件商品。每当客户点击特定商品时,我们都会获取该商品的最新信息,并以商品详情页面 (PDP) 的格式显示该商品。目前,PDP 仅支持商品图片,为商品添加的任何视频和/或动图都不会显示在 PDP 中。
  2. 将商品加入购物车:每当用户向购物车中添加商品时,我们都会获取该商品的最新信息。如果购物车中的任何商品发生状态变化,我们会显示以下对话框:“购物车中的一个或多个商品已更新”。详情请查看以下商品更新部分。购物车会在您与客户之间的聊天对话中持续显示,直至客户将购物车发送给您。详情请查看以下购物车体验部分。
  3. 向您发送购物车:在添加所有需要的商品后,客户可以将购物车发送给您。之后,您可以定义后续步骤,例如请求获取配送信息或提供支付选项。

如果客户在一个账户下关联了多个设备,则多件商品消息和单件商品消息会在各设备之间同步。但是,对于每个特定设备而言,购物车为本机特有。详情请参阅购物车体验

目前,以下平台可接收上述类型的消息:

  • iOS:2.21.100(多件商品消息)和 2.21.210(单件商品消息)。
  • Android:2.21.9.15(多件商品消息)和 2.21.19(单件商品消息)。
  • 网页端:已推出支持上述功能的网页客户端。

如果客户的应用版本不支持多件商品消息或单件商品消息,他们会收到一条消息,告知他们因使用了过时的 WhatsApp 版本而无法收到消息。我们还会向您发送 Webhooks 通知,表明由于客户使用了过时的 WhatsApp 版本,消息无法送达。

针对消息的预期行为

多件商品消息和单件商品消息支持以下行为:

  • 由某一用户转发给另一用户。
  • 由同一对话中的用户重新打开。

多件商品消息和单件商品消息不支持以下行为:

  • 作为通知发出。这些消息仅可作为已有对话的一部分发出。

限制

与通过 WhatsApp Business 应用发送的商品消息不同,通过云端 API 发送的消息目前不会在聊天对话标头中显示购物车图标。

商品更新

您可能需要更新目录中商品的属性。对于提到该商品的任何消息,我们会根据更新的属性,按照以下方式处理:

更新的属性更新流程

商品的价格、名称、描述和图片。

  1. 您发送一条包含商品 A 的多件商品消息或单件商品消息。
  2. 您更新目录中商品 A 的属性。
  3. 客户的客户端从服务器获悉此更新之后,显示该商品的屏幕将立即更新。

库存状态更新

  1. 您向客户发送一条包含商品 B 的多件商品消息或单件商品消息。
  2. 您售出库存中的所有商品 B。然后,您更新目录,以表明商品 B 已经没有货
  3. 如果客户已将商品 B 加入购物车,系统会将该商品从购物车中移除。购物车将显示以下对话框:“购物车中的一个或多个商品已更新”。
  4. 如果客户未将商品 B 加入购物车,则多件商品消息或单件商品消息当前会显示该商品没有货。

购物车体验

查看商品之后,客户可以将其加入购物车,并将购物车发送给您。就 WhatsApp 中的商业交易而言,购物车具备以下特点:

  • 对于特定设备中的客户或商家聊天对话而言是唯一的:在您与客户之间的每个聊天对话中,系统仅会创建一个购物车,并且购物车不会在多个设备上持续显示。发送购物车之后,客户可立即在与您的对话中打开另一个购物车,再次启动该流程。
  • 无到期日:购物车会在聊天对话中持续显示,直至客户将购物车发送给您。在客户发送购物车后,系统随即会将其清空。

客户向购物车中添加商品时,对于单件目录商品,最多可以添加 99 个,但是对于可以加入购物车的不同商品数量并不设限。

购物车一旦发送,便无法编辑。如果客户需要新商品或希望更改订单,他们可以发送新的购物车。您无法向客户发送购物车。

购物车体验示例和针对商品状态更改的预期行为。

您应该使用商品消息的原因

多件商品消息和单件商品消息都能带来简单且个性化的用户体验。商品消息能引导客户浏览与自身最相关的商品子集而非您的完整库存,让客户获得更出色的体验。

简单高效

结合使用这些功能与 NLP、文本搜索或清单消息和回复按钮等导航工具,能快速找出客户正在寻找的内容。

个性化

商品消息为动态填充,因此可根据客户或情况进行定制。例如,您可以显示一条包含客户最常订购商品的多件商品消息。

取得业务成效

商品消息是可提高订单量的一个有效渠道。在测试期间,从发出的多件商品消息到收到的购物车,商家取得的平均转化率为 7%。

无需模板

无需模板或经过预先批准,即可使用互动消息。这类消息实时生成,并始终显示最新商品详情、定价和仓库中的库存水平。

商品消息的适用场景

多件商品消息最适合引导客户浏览您库存的特定子集,在以下场景中尤为有用:

  • 以对话的形式购物。例如,使用搜索功能,让客户可以输入购物清单,然后系统使用多件商品消息进行回复。
  • 导航至某个特定类别,如健身服。
  • 提供个性化的优惠或推荐。
  • 再次订购之前订购的多件商品。例如,用户可以再次订购常点的外卖,但商品数量不应超过 30。

单件商品消息最适合引导客户浏览您库存中的一件特定商品,通过给予有限的选项提供快速回复方式,例如:

  • 响应客户的特定要求。
  • 给出推荐。
  • 再次订购之前订购的某件商品。

这两个功能还可用于人工客服流程,但是您需要构建工具,以支持人工客服在对话中生成多件商品消息或单件商品消息。

入门指南

发送商品消息之前,请遵循最适合您需求的入门指南:

您必须使用访问口令对本指南中提及的所有 API 调用进行验证。开发者可以使用在应用面板 > WhatsApp > API 设置面板中生成的访问口令验证 API 调用。解决方案合作伙伴必须使用具有 whatsapp_business_messaging 权限的访问口令验证自身身份。

第 1 步:整合 Interactive 对象

单件商品消息

如要发送单件商品消息,应将以下组件整合成一个 product 类型的 interactive 对象:

必要组件可选组件
  • action 对象 — 必须同时包含 catalog_id 和 product_retailer_id。
  • body 对象
  • footer 对象

有关完整信息,请参阅消息 > 互动对象。当您完成此流程后,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"
    }
  }
}

多件商品消息

如要发送多件商品消息,应将以下组件整合成一个 product_list 类型的 interactive 对象:

必要组件可选组件
  • header 对象 — header 的 type 必须设为 text。请务必添加 text 对象及所需内容。
  • body 对象
  • action 对象 — 必须包含 catalog_id 和 sections。
    • sections 必须为使用 title 和 product_items 描述每个部分的一个对象数组。
      • 每个部分的 product_items 值必须是一个数组,该数组使用 product_retailer_id 和该商品的 SKU 号来描述该部分中的每件商品。
  • footer 对象

有关完整信息,请参阅消息 > 互动对象。当您完成此流程后,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 调用中提供的所有商品与您商品目录中的任意商品都不相符,系统将发送错误消息,且不会向用户发送多件商品消息或单件商品消息。

对于多件商品消息,商品清单中必须至少有一件商品与您商品目录中的商品相符。在此情况下:

  • 消息将发送成功
  • 系统会删除不相符的商品
  • 您会收到一条要求更新目录的错误消息

第 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 对象,向 /PHONE_NUMBER_ID/messages 端点发出 POST 请求。如果消息发送成功,您将收到以下响应:

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

多件商品模板消息

如要发送多件商品模板消息,您需要使用多件商品消息模板。请参阅我们的多件商品消息模板文档,了解如何创建多件商品消息模板,以及如何在模板消息中发送多件商品消息模板。