制作付款预构建组件

付款预构建组件会对用户进行身份验证,并允许用户付款。此组件使用自定义版本的身份验证预构建组件来对账号持有人和持卡人进行身份验证。该组件还使用姓名收集、信用卡失效日期收集和信用卡 CVV 收集预构建组件来收集付款所需的信息。

付款方式

此组件支持信用卡账单和受益人账户的付款。对于信用卡账单,用户可以选择支付最低还款额、全额或自定义金额。用户可以通过银行账户、借记卡或信用卡,或移动支付方式进行付款。

支付方式 可用的付款方式 可用的付款金额
信用卡账单 银行账户、借记卡、移动支付 最低金额、总金额、自定义金额
收款人账户 银行账户、信用卡、借记卡、移动支付 自定义金额

限制

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

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

对话示例

以下示例对话展示了此预构建组件处理的常见场景。示例对话演示了通过电话呼叫组件时的行为,这会在对话开始时触发默认欢迎 intent 和第一个代理响应。

受益人账号付款

代理识别出用户之前未经过身份验证,并收集信息以验证用户是否为注册用户。用户表示他们希望向受益人账号付款,代理会收集所需信息(包括受益人姓名)并确认账号。最后,用户选择使用借记卡付款,因此代理会收集借记卡号、失效日期、CVV 并确认付款。

用户输入 智能体回答
代理使用身份验证预构建组件对用户进行身份验证
谢谢,您已成功通过身份验证。
您是想支付已登记的信用卡账单,还是想向现有收款人账户付款?
受益人
智能体使用姓名收集预构建组件收集受益人姓名
谢谢,我们已收集到收款人姓名。

好的,根据我们的记录,我们有尾号为 7821 的账号。请说“是”以确认账号。
是
请确认您要支付的金额。例如,如果您想支付 100.30 元,请说“100 点 30”。
50 美元
您想通过银行账户、借记卡、信用卡还是移动支付方式付款?
支出
您能否提供您所指借记卡卡号的后 4 位数字?
1234
我们获取的借记卡卡号的后四位是 1234,对吗?
是的,没错
代理使用信用卡失效日期收集预构建组件收集借记卡失效日期
太好了,我们已收集到借记卡的失效日期。
客服人员使用信用卡 CVV 收集预构建组件收集借记卡 CVV
太棒了,我们已完成 CVV 的收集。
好的,我们将使用尾号为 1234 的借记卡向 Jane 支付 50 美元。您是否确认此操作?
是
如要继续,我们会向您发送一个验证码。您希望通过手机还是邮件接收验证码?
请提供邮箱
我们已向您的注册邮箱 john.doe@google.com 发送了一个验证码。这可能需要几秒钟的时间。请确认代码。
123456
好的,我们正在付款,请稍等几秒钟。

您已成功向收款方账号付款。

信用卡账单还款

代理识别出用户之前未经过身份验证,并收集信息以验证用户是否为注册用户。用户表示,他们想使用银行账户支付信用卡账单。代理确认付款金额和支付方式详细信息,并完成付款。

用户输入 智能体回答
代理使用身份验证预构建组件对用户进行身份验证
谢谢,您已成功通过身份验证。
您是想支付已登记的信用卡账单,还是想向现有收款人账户付款?
信用卡账单
您能否提供您所指信用卡号的后 4 位数字?
4321
我们获取的信用卡号后四位是 4321,对吗?
是
您的应付总金额为 300 美元,最低还款额为 20 美元。您想支付总金额、最低金额还是其他金额?
总金额
您想通过银行账户、借记卡还是移动支付方式付款?
储蓄账户
我们发现有 2 个账号与您的号码相关联。能否请您提供您所指账号的后 4 位数字?
1001
我们获取的账号后四位是 1001,对吗?
是
好的,我们将使用尾号为 1001 的账号为您的尾号为 4321 的信用卡账单支付 300 美元。您是否确认此操作?
是
如要继续,我们会向您发送一个验证码。您希望通过手机还是邮件接收验证码?
发送到我的邮箱
我们已向您的注册邮箱 john.doe@google.com 发送了一个验证码。这可能需要几秒钟的时间。请确认代码。
123456
好的,我们正在付款,请稍等几秒钟。

您的信用卡付款已成功。

余额不足或超出限额

代理识别出用户之前未经过身份验证,并收集信息以验证用户是否为注册用户。用户尝试使用其银行账户和借记卡支付信用卡账单,但由于资金不足或限额,两笔付款均被拒绝。最后,用户选择进行移动支付,代理向其发送一个链接,以便其通过移动设备完成支付。

用户输入 智能体回答
代理使用身份验证预构建组件对用户进行身份验证
谢谢,您已成功通过身份验证。
您是想支付已登记的信用卡账单,还是想向现有收款人账户付款?
信用卡
您能否提供您所指信用卡号的后 4 位数字?
4321
我们获取的信用卡号后四位是 4321,对吗?
是
您的应付总金额为 300 美元,最低还款额为 20 美元。您想支付总金额、最低金额还是其他金额?
总金额
您想通过银行账户、借记卡还是移动支付方式付款?
节省的费用
我们发现有 2 个账号与您的号码相关联。能否请您提供您所指账号的后 4 位数字?
1002
我们获得的账号后四位是 1002,对吗?
是
好的,我们将使用尾号为 1002 的账号为尾号为 4321 的信用卡账单支付 300 美元。您是否确认此操作?
是
如要继续,我们会向您发送一个验证码。您希望通过手机还是邮件接收验证码?
电子邮件
我们已向您的注册邮箱 john.doe@google.com 发送了一个验证码。这可能需要几秒钟的时间。请确认代码。
123456
好的,我们正在付款,请稍等几秒钟。

由于账号资金不足,您的付款失败了。您想改用其他支付方式重试付款吗?
是
您想通过银行账户、借记卡还是移动支付方式付款?
借记卡
您能否提供您所指借记卡卡号的后 4 位数字?
2345
我们获取的借记卡号后四位是 2345,对吗?
是
代理使用信用卡失效日期收集预构建组件收集借记卡失效日期
太好了,我们已收集到借记卡的失效日期。
客服人员使用信用卡 CVV 收集预构建组件收集借记卡 CVV
太棒了,我们已完成 CVV 的收集。
好的,我们将使用尾号为 2345 的借记卡,为尾号为 4321 的信用卡账单支付 300 美元。您是否确认此操作?
是
如要继续,我们会向您发送一个验证码。您希望通过手机还是邮件接收验证码?
电子邮件
我们已向您的注册邮箱 john.doe@google.com 发送了一个验证码。这可能需要几秒钟的时间。请确认代码。
123456
好的,我们正在付款,请稍等几秒钟。

您的付款失败,因为借记卡超出了限额。您想改用其他支付方式重试付款吗?
是
您想通过银行账户、借记卡还是移动支付方式付款?
移动设备
好的,我们正在将付款链接发送到您注册的手机号码。此操作可能需要几秒钟时间。如果您已收到,请说“是”进行确认。
是
太好了,现在您可以打开链接并继续付款了。

命名规则

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

功能 格式 示例
Flow [Component Name] 付款
组件特定 intent prebuilt_components_[component_name]_[intent_name] prebuilt_components_make_a_payment_payment_type
实体类型 prebuilt_components_[component_name]_[entity_type] prebuilt_components_make_a_payment_payment_mode
网络钩子 prebuilt_components_[component_name]:[webhook_action] prebuilt_components_make_a_payment:process_payment_credit_card

输入参数

输入参数是用于配置组件某些行为的参数。这些参数将由流程中的一个或多个条件使用,以确定组件的行为方式。必须在组件的起始页上设置流级范围参数,如下所述。会话级范围的参数可由调用流设置,也可在此组件的起始页面上设置。

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

参数名称 说明 输入格式
$session.params.auth_level (可选)指明调用方的身份验证级别。 整数
$session.params.auth_level_req 指明用户在访问其交易记录之前需要达到的身份验证级别。此值是在 check auth level 页面中页面条目执行方式的参数预设中配置的。默认情况下,此值为 1。 整数
$session.params.account_auth_enabled 指明是否应按照身份验证类型中的说明,将用户作为账号持有人进行身份验证。此值是在 check auth level 页面中页面条目执行方式的参数预设中配置的。默认情况下,此值为 true。 布尔值
$session.params.card_auth_enabled 指明是否应将用户作为持卡人进行身份验证,如身份验证类型中所述。此值是在 check auth level 页面中页面条目执行方式的参数预设中配置的。默认情况下,此值为 false。 布尔值
$session.params.phone_number (可选)用于身份验证的客户注册手机号码。 字符串
$flow.payment_success_code 指定 process_payment Webhook 返回的 payment_status_code 字段的值,该值表示付款成功。默认情况下,此值为 "200"。 字符串
$flow.insufficient_fund_code 指定 process_payment Webhook 返回的 payment_status_code 字段的值,该值表示由于资金不足而无法完成付款。默认情况下,此值为 "400"。 字符串
$flow.limit_exceed_code 指定 process_payment Webhook 返回的 payment_status_code 字段的值,该值表示由于超出每日限额而无法完成付款。默认情况下,此值为 "401"。 字符串
$flow.max_retry_mop_counter 指定用户可以更改支付方式的次数。默认值为 2。 整数
$flow.max_retry_credit_card_payment 指定在使用信用卡作为支付方式尝试付款时允许的重试次数。默认值为 3。 整数
$flow.max_retry_mobile_payment_counter 指定尝试使用移动支付作为支付方式进行支付时允许的重试次数。默认值为 2。 整数
$flow.max_retry_creditcard_count 指定在收集有效信用卡号以进行付款时允许的重试次数。默认值为 3。 整数
$flow.max_retry_acc_number 指定在收集有效账号详细信息以进行付款时允许的重试次数。默认值为 3。 整数
$flow.max_retry_debit_card_details 指定在收集有效的借记卡详细信息以进行付款时允许的重试次数。默认值为 3。 整数
$flow.max_retry_credit_card_details 指定在收集有效信用卡详细信息以进行付款时允许的重试次数。默认值为 3。 整数
$flow.otp_length 指定发送给用户的动态密码的预期长度。默认值为 6。 整数
$flow.max_retry_otp_count 指定在从用户处收集有效动态密码 (OTP) 时允许的重试次数。默认值为 3。 整数
$flow.max_waiting_room_counter 指定用户在收到移动支付链接时,可以要求代理等待的次数。默认值为 2。 整数

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

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

输出参数

输出参数是在退出组件后仍保持有效状态的会话参数。这些参数包含组件收集的重要信息。此预构建组件会为以下输出参数提供值:

参数名称 说明 输出格式
auth_level 指示调用方的身份验证级别。 整数
phone_number 用户的本地手机号码(不含国家/地区代码),用于识别用户。 字符串
transfer_reason 此参数表示流程退出(如果未成功)的原因。返回的值为以下值之一:

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

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

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

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

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

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

基本设置

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

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

Webhook 设置

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

身份验证

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

验证账号

该组件使用 prebuilt_components_account_services:validate_account webhook,根据用户注册的手机号码和提供的账号后四位来验证账号是否存在。如果账号存在,Webhook 还会返回账号余额。

API 请求参数

以下参数由组件提供,作为 API 请求的输入。

参数名称 说明 输入格式
$session.params.phone_number 用户的本地手机号码(不含国家/地区代码),用于识别用户。 字符串
$session.params.last_four_digit_of_account_number 用户选择并确认用于付款的账号的后四位数字。 字符串

API 响应参数

系统会从 API 响应中提取以下参数,供组件使用。

参数名称 说明 输出格式
account_found 指明用户的注册账号中是否存在后四位为所提供数字的账号。 布尔值
余额 账号的当前余额(如果存在)。 数值

如需为此组件配置“验证账号”Webhook,请展开查看说明。

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

用户卡片详情

组件使用 prebuilt_components_make_a_payment:user_card_details webhook 获取注册用户的借记卡和信用卡详细信息。

API 请求参数

以下参数由组件提供,作为 API 请求的输入。

参数名称 说明 输入格式
$session.params.phone_number 用户的本地手机号码(不含国家/地区代码),用于识别用户。 字符串

API 响应参数

系统会从 API 响应中提取以下参数,供组件使用。

参数名称 说明 输出格式
credit_card_count 与注册电话号码关联的信用卡数量。 整数
last_four_digit_of_credit_card_number 用户信用卡的后四位数字。如果客户有多张信用卡,则此值为 null。 字符串
debit_card_count 与注册电话号码关联的借记卡数量。 整数
last_four_digit_of_debit_card_number 用户借记卡的后四位数字。如果客户有多张借记卡,则此值为 null。 字符串

如需为此组件配置用户卡片详细信息 webhook,请展开以查看说明。

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

验证受益人姓名

该组件使用 prebuilt_components_make_a_payment:verify_beneficiary_name 网络钩子来验证用户提供的名称是否存在受益人账号。

API 请求参数

以下参数由组件提供,作为 API 请求的输入。

参数名称 说明 输入格式
$session.params.phone_number 用户的本地手机号码(不含国家/地区代码),用于识别用户。 字符串
$session.params.name_collection_first_name 受益人的名字。 字符串
$session.params.name_collection_last_name 受益人的姓氏。 字符串
$session.params.name_collection_middle_name 受益人的中间名。 字符串

API 响应参数

系统会从 API 响应中提取以下参数,供组件使用。

参数名称 说明 输出格式
beneficiary_account_number 所提供受益人姓名的受益人账号的后四位数字。如果未找到所提供名称对应的受益人账号,则值为 null。 字符串

如需为此组件配置“验证收款人姓名”Webhook,请展开查看说明。

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

获取应付金额

组件使用 prebuilt_components_make_a_payment:get_due_amount webhook 获取有关用户信用卡账单的最低应付金额和总应付金额的信息。

API 请求参数

以下参数由组件提供,作为 API 请求的输入。

参数名称 说明 输入格式
$session.params.phone_number 用户的本地手机号码(不含国家/地区代码),用于识别用户。 字符串
$flow.user_credit_card_number 用户信用卡的后四位数字。 字符串

API 响应参数

系统会从 API 响应中提取以下参数,供组件使用。

参数名称 说明 输出格式
minimum_amount 指定信用卡账单的最低应付金额。 数值
total_amount 指定信用卡账单的应付总金额。 数值

如需为此组件配置“获取应付金额”Webhook,请展开查看说明。

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

验证信用卡号

该组件使用 prebuilt_components_make_a_payment:verify_credit_card_number webhook 来验证提供的卡号是否已注册到用户的账号。

API 请求参数

以下参数由组件提供,作为 API 请求的输入。

参数名称 说明 输入格式
$session.params.phone_number 用户的本地手机号码(不含国家/地区代码),用于识别用户。 字符串
$flow.user_credit_card_number 用户信用卡的后四位数字。 字符串

API 响应参数

系统会从 API 响应中提取以下参数,供组件使用。

参数名称 说明 输出格式
card_found 指示是否找到了提供的信用卡。 布尔值

如需为此组件配置“验证信用卡号”Webhook,请展开查看说明。

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

验证信用卡详细信息

该组件使用 prebuilt_components_make_a_payment:verify_credit_card_details webhook 来验证所提供的详细信息(包括失效日期和 CVV)对于用户提供的信用卡是否有效。

API 请求参数

以下参数由组件提供,作为 API 请求的输入。

参数名称 说明 输入格式
$session.params.phone_number 用户的本地手机号码(不含国家/地区代码),用于识别用户。 字符串
$flow.credit_card_number 用户信用卡的后四位数字。 字符串
$flow.credit_card_exp_date 用户提供的特定信用卡的失效日期。
{
"year": integer,
"month": integer
}
$flow.credit_card_cvv_code 用户为指定信用卡提供的 CVV 码。 字符串

API 响应参数

系统会从 API 响应中提取以下参数,供组件使用。

参数名称 说明 输出格式
creditcard_verification_status 指明提供的信用卡详细信息是否已通过验证。 布尔值

如需为此组件配置“验证信用卡详细信息”Webhook,请展开以查看说明。

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

验证借记卡详细信息

组件会使用 prebuilt_components_make_a_payment:verify_debit_card_details webhook 来验证所提供的详细信息(包括失效日期和 CVV)对于用户提供的借记卡是否有效。

API 请求参数

以下参数由组件提供,作为 API 请求的输入。

参数名称 说明 输入格式
$session.params.phone_number 用户的本地手机号码(不含国家/地区代码),用于识别用户。 字符串
$flow.debit_card_number 用户借记卡的后四位数字。 字符串
$flow.debit_card_exp_date 用户为指定借记卡提供的借记卡失效日期。
{
"year": integer,
"month": integer
}
$flow.debit_card_cvv_code 用户为指定借记卡提供的 CVV 码。 字符串

API 响应参数

系统会从 API 响应中提取以下参数,供组件使用。

参数名称 说明 输出格式
debitcard_verification_status 指明提供的借记卡详细信息是否已通过验证。 布尔值

如需为此组件配置“验证借记卡详细信息”Webhook,请展开查看说明。

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

处理信用卡付款

组件使用 prebuilt_components_make_a_payment:process_payment_credit_card webhook 通过提供的信用卡详细信息处理付款。

API 请求参数

以下参数由组件提供,作为 API 请求的输入。

参数名称 说明 输入格式
$session.params.phone_number 用户的本地手机号码(不含国家/地区代码),用于识别用户。 字符串
$flow.payee_number 收款人账号的后四位数字。 字符串
$flow.payment_type 付款的支付方式。有效值由 prebuilt_components_make_a_payment_payment_type 自定义实体定义。默认情况下,此组件支持 "beneficiary_pay" 和 "credit_card_pay"。 字符串
$flow.credit_card_number 用户信用卡的后四位数字。 字符串
$flow.credit_card_exp_date 用户提供的指定信用卡的失效日期。
{
"year": integer,
"month": integer
}
$flow.credit_card_cvv_code 用户为指定信用卡提供的 CVV 码。 字符串
$flow.payment_amount 用户选择支付的金额。 数值

API 响应参数

系统会从 API 响应中提取以下参数,供组件使用。

参数名称 说明 输出格式
payment_status_code 指明付款是否成功。有效值由 $flow.payment_success_code、$flow.insufficient_fund_code 和 $flow.limit_exceed_code 可配置输入参数定义。 字符串

如需为此组件配置“处理信用卡付款”Webhook,请展开查看相关说明。

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

处理借记卡付款

组件使用 prebuilt_components_make_a_payment:process_payment_debit_card webhook,通过提供的借记卡详细信息处理付款。

API 请求参数

以下参数由组件提供,作为 API 请求的输入。

参数名称 说明 输入格式
$session.params.phone_number 用户的本地手机号码(不含国家/地区代码),用于识别用户。 字符串
$flow.payee_number 收款人账号的后四位数字。 字符串
$flow.payment_type 付款的支付方式。有效值由 prebuilt_components_make_a_payment_payment_type 自定义实体定义。默认情况下,此组件支持 "beneficiary_pay" 和 "credit_card_pay"。 字符串
$flow.debit_card_number 用户借记卡的后四位数字。 字符串
$flow.debit_card_exp_date 用户为指定借记卡提供的借记卡失效日期。
{
"year": integer,
"month": integer
}
$flow.debit_card_cvv_code 用户为指定借记卡提供的 CVV 码。 字符串
$flow.payment_amount 用户选择支付的金额。 数值

API 响应参数

系统会从 API 响应中提取以下参数,供组件使用。

参数名称 说明 输出格式
payment_status_code 指明付款是否成功。有效值由 $flow.payment_success_code、$flow.insufficient_fund_code 和 $flow.limit_exceed_code 可配置输入参数定义。 字符串

如需为此组件配置“处理借记卡付款”Webhook,请展开查看相关说明。

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

处理账号付款

组件使用 prebuilt_components_make_a_payment:process_payment_account webhook 通过提供的账号详细信息处理付款。

API 请求参数

以下参数由组件提供,作为 API 请求的输入。

参数名称 说明 输入格式
$session.params.phone_number 用户的本地手机号码(不含国家/地区代码),用于识别用户。 字符串
$flow.payee_number 收款人账号的后四位数字。 字符串
$flow.payment_type 付款的支付方式。有效值由 prebuilt_components_make_a_payment_payment_type 自定义实体定义。默认情况下,此组件支持 "beneficiary_pay" 和 "credit_card_pay"。 字符串
$session.params.last_four_digit_of_account_number 用户账号的后四位数字。 字符串
$flow.payment_amount 用户选择支付的金额。 数值

API 响应参数

系统会从 API 响应中提取以下参数,供组件使用。

参数名称 说明 输出格式
payment_status_code 指明付款是否成功。有效值由 $flow.payment_success_code、$flow.insufficient_fund_code 和 $flow.limit_exceed_code 可配置输入参数定义。 字符串

如需为此组件配置“处理账号付款”网络钩子,请展开查看相关说明。

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

处理移动支付

组件使用 prebuilt_components_make_a_payment:process_payment_mobile webhook 为用户选择的付款详细信息生成并发送移动支付链接。

API 请求参数

以下参数由组件提供,作为 API 请求的输入。

参数名称 说明 输入格式
$session.params.phone_number 用户的本地手机号码(不含国家/地区代码),用于识别用户。 字符串
$flow.payee_number 收款人账号的后四位数字。 字符串
$flow.payment_type 付款的支付方式。有效值由 prebuilt_components_make_a_payment_payment_type 自定义实体定义。默认情况下,此组件支持 "beneficiary_pay" 和 "credit_card_pay"。 字符串
$flow.payment_amount 用户选择支付的金额。 数值

API 响应参数

系统会从 API 响应中提取以下参数,供组件使用。

参数名称 说明 输出格式
payment_link_generated 指明是否已成功生成移动支付链接并将其发送给用户。 布尔值

如需为此组件配置“处理移动支付”Webhook,请展开查看相关说明。

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

完成

您的代理及其 webhook 现在应该已设置完毕,可以进行测试了。