退货和退款预构建组件

退货和退款预构建组件会检查用户的身份验证级别。在用户通过身份验证后,该组件会提供有关用户最近或过往订单的信息。然后,用户可以选择退回订单中的多件商品,并选择退款和退货方式等选项。此组件使用零售店身份验证预构建组件对用户进行身份验证。该组件还使用生成器来生成通话后摘要和常见问题解答。

限制

除了 常见的预构建组件限制, 此预构建组件具有以下限制:

  • 此组件不会加密任何数据。

示例对话框

以下示例对话框演示了此预构建组件处理的常见场景。示例对话框演示了组件 使用电话进行调用,这会触发“默认欢迎 intent”和第一个 在对话开始时让客服人员回应你。

单件商品的实体店内退货

最终用户之前已经过身份验证。客服人员会确认 应返回最新的订单并收集退货原因。 用户选择在商店退回商品,代理提供列表 距离最近的商店。用户选择一个商店,然后代理生成 发送到用户注册渠道的配送标签。

用户输入 客服人员回复
您是要咨询最新订单号(尾号为 12345)且在 2023 年 11 月 10 日放置的 2 盏灯的问题吗?
确认一下,您想退回 Google 灯。对吗?
我们可以看到,您选择的商品的库存数量为 2。请指定您希望退回的商品数量。
请指明退货原因。您可以这样说:“商品有缺陷或用不了”、已不需要、尺寸或尺寸有问题、商品发错了、商品送达时间太晚、误购或提及其他事项。
其他
请说明退货原因。
质量不佳
需要核实的是,退货原因质量欠佳。对吗?
请告诉我们您希望通过什么渠道接收退款。您可以说“商店抵用金”或“来源账号”之类的字词。
源账号
感谢您确认您希望退款退至原付款方式。

最后一步,请问您希望如何退回商品?您可以这样说:“退货”“店内还车”或“安排自提”。
到店退货
我们来查找您附近的商店。
代理使用 Zip code collection 预构建组件收集邮政编码
这里列出了你输入的邮政编码附近的地理位置。
地址 1: Google Texas, 500 W 2nd St, Suite 2900 Austin, Texas 78701, US.
地址 2: Google California, 19510 Jamboree Road, Irvine, California 92612, US.

显示更多商店地址。
1
为确认,您已选择 Google Texas, 500 W 2nd St, Suite 2900 Austin, Texas 78701, US。对吗?
太好了。 我们已将配送标签和工单号发送至您的注册电话号码和电子邮件地址。请打印出来,将它附在包裹上,然后在 30 天内寄回退货。
仓库收到商品后,3 到 5 个工作日,您的退款就会出现在您的账户中。请注意:退款金额将不含运费和手续费。
感谢您来电。

命名规则

此预构建组件使用以下命名惯例:

特征 格式 示例
流程 [组件名称] 退货和退款
实体类型 prebuilt_components_[component_name]_[entity_type] prebuilt_components_return_refund_mode_of_return
网络钩子 prebuilt_components_[component_name]:[webhook_action] prebuilt_components_return_refund:post_return_details

输入参数

输入参数是用于配置 组件。这些参数将会供 以确定组件的行为方式。流级范围的参数必须 必须在组件的初始页上设置。会话级范围的 可以通过调用数据流或在启动时 页面。

此预构建组件接受以下输入参数:

参数名称 说明 输入格式
$session.params.phone_number (可选)用户的本地电话号码(不含国家/地区代码),用于识别用户。 字符串
$session.params.all_recent_order_id (可选)此参数列出与经过身份验证的用户相关联的订单 ID,按订单放置日期降序排序。数组的第一个元素代表最近的订单。如果用户没有订单,则此参数的值为 null 列表(字符串)
$session.params.email (可选)注册账号的电子邮件地址。 字符串
$session.params.user_first_name (可选)用户的名字,用于问候和确认账号所有权。 字符串

此预构建组件允许使用以下可选参数来配置组件的行为,包括重试。

参数名称 说明 格式
$flow.max_retry_another_account_counter 指定在选择是否使用备用账号继续时允许的重试次数。默认值为 2 整数
$flow.max_retry_order_number 指定提供订单号的最后 5 位数时允许的重试次数。默认值为 3 整数
$flow.max_retry_another_order 指定在找不到订单 ID 或订单不符合退货条件的情况下,选择其他订单进行退货时允许的重试次数。默认值为 2 整数
$flow.max_retry_select_order_number 指定在多个订单具有相同的最后 5 位数的情况下,提供完整订单号时允许的重试次数。默认值为 2 整数
$flow.max_product_display_counter 指定一次轮播中展示的商品数量上限。默认值为 2 整数
$flow.max_product_display 指定在整个对话中显示的商品数量上限。默认值为 9 整数
$flow.max_retry_product_number_counter 指定选择要退货的商品时允许的最大重试次数。默认值为 2 整数
$flow.max_product_return_confirm_counter 指定在确认所选商品时允许的重试次数上限。默认值为 2 整数
$flow.max_retry_return_reason_counter 指定确认退货原因时允许的重试次数。默认值为 2 整数
$flow.order_product_return_reason_others 指定 prebuilt_components_return_refund_reason 实体的值,表示用户已选择“其他”退货原因。默认值为 "others" 字符串
$flow.max_retry_select_quantity 指定选择要退货的商品数量时允许的重试次数上限。默认值为 2 整数
$flow.max_store_display_counter 指定每轮显示的商店数量上限。默认值为 1 整数
$flow.max_store_display 指定在整个对话中要显示的商店的数量上限。默认值为 10 整数
$flow.max_retry_store_number_counter 指定选择商店时允许的重试次数上限。默认值为 2 整数
$flow.max_retry_store_selection 指定在确认商店选择时允许的重试次数。默认值为 2 整数
$flow.max_retry_another_zip_code 指定提供邮政编码时允许的重试次数上限。默认值为 2 整数
$flow.order_payment_mode_COD 指定 get_order_details Webhook 返回的 order_payment_mode 字段的值,表示采用货到付款 (COD) 付款方式。默认值为 "COD" 字符串
$flow.order_payment_mode_store_credit 指定由指示商店抵用金付款方式的 get_order_details 网络钩子返回的 order_payment_mode 字段的值。默认值为 "store_credit" 字符串
$flow.order_refund_mode_source_account 指定 prebuilt_components_return_refund_mode_of_refund 实体的值,指明用户已选择向其源账号退款。默认值为 source_account 字符串
$flow.order_return_location_scheduled_for_pickup 指定 prebuilt_components_exchange_order_location 实体的值,表示用户已选择为退货安排自提。默认值为 scheduled_for_pickup 字符串

如需为此组件配置输入参数,请展开相应部分查看说明。

  1. 打开 Dialogflow CX 控制台
  2. 选择您的 Google Cloud 项目。
  3. 选择您的代理。
  4. 选择构建标签页。
  5. 点击部分中导入的组件。
  6. 点击页面部分中的“首页”。
  7. 点击初始页中的 true 路由。
  8. 在“路线”窗口中,根据需要修改参数预设值。
  9. 点击保存

输出参数

输出参数是指退出后仍然有效的会话参数 组件。这些参数包含由 组件。此预构建组件会为以下输出参数提供值:

参数名称 说明 输出格式
phone_number 用户的本地手机号码(不包含国家/地区代码),用于识别用户。 字符串
all_recent_order_id 此参数列出了与已验证身份的用户关联的订单 ID,按下单日期降序排序。数组的第一个元素表示最近的顺序。如果用户没有订单,此参数的值为 null 列表(字符串)
电子邮件 为该账号注册的电子邮件地址。 字符串
user_first_name 用户的名字,用于问候和确认账号所有权。 字符串
transfer_reason 如果流程未成功,此参数会指明流程退出的原因。返回的值如下:

agent:最终用户在对话过程中的某个时间点请求了人工客服。

denial_of_information:最终用户拒绝分享组件请求的信息。

max_no_input:对话达到了无输入事件的最大重试次数。请参阅无输入内置事件

max_no_match:对话已达到非匹配事件的重试次数上限。请参阅无匹配内置事件

webhook_error:发生了网络钩子错误。请参阅 webhook.error 内置事件

webhook_not_found:无法访问某个网络钩子网址。请参阅 webhook.error.not-found 内置事件
字符串

生成器

该组件使用生成器 以实现对话的某些特定部分。

常见问题解答

FAQ 生成器用于处理有关退货和换货的常见问题,包括:

  • 退货流程是否有期限?
  • 我可以换礼物吗?
  • 商品价格和退款金额不一致。这是为什么?

摘要

Summarization 生成器用于生成描述 由组件处理的对话。

基本设置

如需设置此预构建组件,请执行以下操作:

  1. 导入预构建的组件
  2. 使用描述外部服务的配置配置提供的灵活的 Webhook,请参阅 Webhook 设置。

网络钩子设置

如需使用此组件,您需要配置随附的灵活的 Webhook,以从外部服务检索所需信息。

身份验证

如果您之前未配置身份验证所需的外部服务,则需要配置这些服务,以便为此组件启用用户身份验证。请参阅 Retail 身份验证网络钩子设置 了解详细说明。

获取最近购买商品的

prebuilt_components_return_refund:get_order_details webhook 用于 检索指定订单的订单详情。

API 请求参数

该组件会将以下参数作为 API 请求的输入提供给 API 请求。

参数名称 说明 输入格式
$flow.order_id 要获取其详情的订单 ID。 字符串

API 响应参数

以下参数是从 API 响应中提取的,供组件使用。

参数名称 说明 输出格式
order_date 下单日期,采用 YYYY-MM-DD 格式。 字符串
order_product_count 订单中唯一商品的数量。 整数
order_payment_mode 指明下单时使用的付款方式。 字符串
returnable_product_id 订单中可退货商品的商品 ID 列表。 列表(字符串)
returnable_product_name 订单中可退货商品的商品名称列表。 列表(字符串)
returnable_product_brand_name 订单中可退货商品的品牌名称列表。 列表(字符串)
returnable_product_quantity 订单中可退货商品的数量列表。 列表(字符串)

如需为此组件配置“获取订单详情”网络钩子,请展开即可查看相关说明。

  1. 打开 Dialogflow CX 控制台
  2. 选择您的 Google Cloud 项目。
  3. 选择您的代理。
  4. 选择管理标签页。
  5. 点击 Webhook
  6. 选择 prebuilt_components_return_refund:get_order_details Webhook。
  7. 将“对话式客服 (Dialogflow CX)”Webhook 网址字段中的网址替换为您要集成的服务的端点。在下拉菜单中选择适当的方法
  8. 查看并更新请求正文,为您的网络钩子构成正确的请求格式。
  9. 查看并更新响应配置,以从 webhook 的 响应。请勿修改参数名称,因为组件需要这些名称才能访问返回的字段值。
  10. 查看并根据需要更新身份验证设置。
  11. 点击保存

获取重复订单详情

prebuilt_components_retail_services:get_duplicate_order_details webhook 用于 以检索详细信息,从而区分 如果多个订单号的后五位数字相同,则会发生订单错误。

API 请求参数

该组件会将以下参数作为 API 请求的输入提供给 API 请求。

参数名称 说明 输入格式
$flow.duplicate_order_id 包含用户一个或多个订单共享的订单号最后五位数的列表。 列表(字符串)

API 响应参数

以下参数是从 API 响应中提取的,供组件使用。

参数名称 说明 输出格式
all_order_date 重复订单的订单日期列表,包含指定的最后五位数字,格式为 YYYY-MM-DD。此数组中的每个元素都对应于 all_order_time 数组中的同一元素。 列表(字符串)
all_order_time 重复订单的订单时间列表,其中包含指定的最后 5 位数(采用 HH:MM 格式)。此数组中的每个元素都对应于 all_order_date 数组中的同一元素。 列表(字符串)

要为此组件配置“获取重复订单详情”网络钩子,请展开即可查看相关说明。

  1. 打开 Dialogflow CX 控制台
  2. 选择您的 Google Cloud 项目。
  3. 选择您的代理。
  4. 选择管理标签页。
  5. 点击网络钩子
  6. 选择预构建_components_retail_services:get_duplicate_order_details 网络钩子。
  7. 将 Conversational Agents (Dialogflow CX) Webhook 网址 字段中的网址替换为服务的端点 哪些组件需要集成从下拉菜单中选择适当的方法
  8. 查看并更新请求正文,为您的网络钩子构成正确的请求格式。
  9. 查看并更新响应配置,以从 webhook 的 响应。请勿修改参数名称,因为组件需要这些名称才能访问返回的字段值。
  10. 查看并根据需要更新身份验证设置。
  11. 点击保存

获取商店详情

该组件使用 prebuilt_components_return_refund:get_store_details webhook 检索用户提供的邮政编码附近的商店列表。

API 请求参数

该组件会将以下参数作为 API 请求的输入提供给 API 请求。

参数名称 说明 输入格式
$flow.zip_code 用于搜索附近商店的邮政编码。 字符串

API 响应参数

以下参数是从 API 响应中提取的,供组件使用。

参数名称 说明 输出格式
store_id 商店 ID 列表。 列表(字符串)
store_address store_id 的每个元素对应的商店地址列表。 列表(字符串)

如需为此组件配置“获取商店详情”Webhook,请展开相应部分查看说明。

  1. 打开 Dialogflow CX 控制台
  2. 选择您的 Google Cloud 项目。
  3. 选择您的代理。
  4. 选择管理标签页。
  5. 点击 Webhook
  6. 选择预构建_components_return_refund:get_store_details 网络钩子。
  7. 将“对话式客服 (Dialogflow CX)”Webhook 网址字段中的网址替换为您要集成的服务的端点。从下拉菜单中选择适当的方法
  8. 查看并更新请求正文,为您的网络钩子构成正确的请求格式。
  9. 查看并更新响应配置,以从 webhook 的 响应。请勿修改参数名称,因为组件需要这些名称才能访问返回的字段值。
  10. 查看并根据需要更新身份验证设置。
  11. 点击保存

发布退货详情

prebuilt_components_return_refund:post_return_details webhook 用于 提交退货请求。

API 请求参数

该组件会将以下参数作为 API 请求的输入提供给 API 请求。

参数名称 说明 输入格式
$session.params.phone_number 用户的本地手机号码(不包含国家/地区代码),用于识别用户。 字符串
$flow.order_id 要为其提交工单的订单 ID。 字符串
$flow.return_product_id_list 用户要退回的商品 ID 的列表。 列表(字符串)
$flow.return_product_quantity_list 用户想要返回的商品数量列表,与 $flow.return_product_id_list 中的每个元素相对应。 列表(字符串)
$flow.return_reason_list 每个退货商品的退货原因列表,与 $flow.return_product_id_list 中的每个元素对应。 列表(字符串)
$flow.order_return_location 退货所选的模式。有效值由 prebuilt_components_exchange_order_location 实体定义。 字符串
$flow.order_return_store_id 用户选择用于实体店退货的商店的商店 ID。 字符串
$flow.order_refund_mode 退款的付款方式。有效值由 prebuilt_components_return_refund_mode_of_return 实体定义。如果无需退款,此值为 null 字符串

API 响应参数

以下参数是从 API 响应中提取的,供组件使用。

参数名称 说明 输出格式
order_return_ticket_id 已提交的退货的工单 ID。 字符串

如需为此组件配置“Post return details”Webhook,请展开相应部分查看说明。

  1. 打开 Dialogflow CX 控制台
  2. 选择您的 Google Cloud 项目。
  3. 选择您的代理。
  4. 选择管理标签页。
  5. 点击网络钩子
  6. 选择 prebuilt_components_return_refund:post_return_details Webhook。
  7. 将“对话式客服 (Dialogflow CX)”Webhook 网址字段中的网址替换为您要集成的服务的端点。从下拉菜单中选择适当的方法
  8. 查看并更新请求正文,为您的网络钩子构成正确的请求格式。
  9. 查看并更新响应配置,以从 webhook 的 响应。请勿修改参数名称,因为组件需要这些名称才能访问返回的字段值。
  10. 查看并根据需要更新身份验证设置。
  11. 点击保存

发送货到付款退款信息

该组件使用 prebuilt_components_return_refund:send_COD_refund_information Webhook 向用户发送与退货相关的付款信息。

API 请求参数

该组件会将以下参数作为 API 请求的输入提供给 API 请求。

参数名称 说明 输入格式
$session.params.phone_number 用户的本地手机号码(不包含国家/地区代码),用于识别用户。 字符串
$flow.order_id 要为其提交工单的订单 ID。 字符串
$flow.channel 要将信息发送到的特定渠道。有效值由 prebuilt_components_channel_email_phone 实体定义。默认情况下,支持 phoneemail 字符串

如需为此组件配置“发送货到付款退款信息”Webhook,请展开相应部分查看说明。

  1. 打开 Dialogflow CX 控制台
  2. 选择您的 Google Cloud 项目。
  3. 选择您的代理。
  4. 选择管理标签页。
  5. 点击网络钩子
  6. 选择 prebuilt_components_return_refund:send_COD_refund_information webhook。
  7. 将 Conversational Agents (Dialogflow CX) Webhook 网址 字段中的网址替换为服务的端点 哪些组件需要集成从下拉菜单中选择适当的方法
  8. 查看并更新请求正文,为您的网络钩子构成正确的请求格式。
  9. 查看并更新响应配置,以从 webhook 的 响应。请勿修改参数名称,因为组件需要这些名称才能访问返回的字段值。
  10. 查看并根据需要更新身份验证设置。
  11. 点击保存

完成

现在,您的代理及其 webhook 应该已设置完毕并准备好进行测试。