概览

作为 Action Center 的预订端到端集成的一部分,您可以允许商家接收用户在预订或预约时支付的款项。Google 与付款处理方共同设置令牌化。 然后,付款处理方会使用唯一的令牌安全地向商家付款。

对于付款受保护的预订,我们会在结账流程中提供付款信息模块。这样,用户就可以输入信用卡信息了。

我们还支持 3DS1 和 3DS2,请参阅相关教程,了解实现方法。

资格要求

要让您的商家通过 Google 易购中心接收付款,您必须满足以下要求:

  1. 使用受支持的付款处理方。您可以在 Google Pay 网站上查阅受支持处理方的最新列表。
  2. 按照您的处理方的要求,接受令牌化付款。
  3. 请完成 此处列出的身份和商家验证流程。
  4. 无法为需要 异步确认 的预订启用付款。

对 Feed 和预订服务器进行更改以启用付款功能

通过在商家级别选择启用,您即可启用付款功能。您必须为需要针对任何服务接收付款的商家启用付款功能。如需启用付款功能,必须对 Feed 和预订服务器进行更改。

Feed

  • 商家 Feed:通过 tokenization_config 字段中的 tokenization_parameter 参数集指定付款信息。此参数集取决于所选的付款处理方。此参数集与要传递到 Google Pay 的 paymentMethodTokenizationParameters.parameters(如果要与之集成)的参数集相同。
  • 服务/可用性 Feed:根据相应的用例指定付款要求。如需了解详情,请参阅付款用例

预订服务器

付款用例

在决定是否针对每个用例启用付款功能时,请查看我们的付款政策并确保遵守所有相关政策。

付款用例如下:

如需详细了解如何实现每个用例,请参阅配置付款教程。

全额预付费预订

图 1 显示了用户、您(时间安排合作伙伴)、Google 和付款处理方之间的操作流程。

图 1:预付费预订流程图
图 1:预付费预订流程图
  • 付款金额必须为服务费用的 100%。换句话说,预订时必须全额支付服务费用。
对服务 Feed 的更改

押金和违约金

押金和违约金的设置方式相同。图 2 显示了用户、您(时间安排合作伙伴)、Google 和付款处理方之间的操作流程。

图 2:收取押金或违约金的预订流程图
图 2:收取押金或违约金的预订流程图

收取押金和违约金旨在确保用户准时赴约。

  • 可提前或晚些时候从用户的信用卡中收取押金。
  • 如果用户未赴约,可向其收取违约金。
  • 如有必要,可同时收取押金和违约金。
  • 即使没有预付款要求,预订服务器也必须以包含 payment_transaction_id(此 ID 必须是唯一的)的 PaymentInformation 对 CreateBooking 请求做出响应。 payment_transaction_id 无需由付款处理方提供,而是可由预订服务器生成。
对服务或可用性 Feed 的更改

可在商家的服务级别或可用性空档级别指定押金和违约金。如果在可用性空档级别指定,则该指定值将替换服务级别的定义。

  • 如需启用押金功能,请在服务级别或可用性空档级别设置 deposit 字段。
  • 如需启用违约金,请在服务级别或可用性空档级别设置 no_show_fee 字段。
  • 在服务级别或可用性空档级别将 require_credit_card 字段设置为 REQUIRE_CREDIT_CARD_CONDITIONAL
  • (可选)将 prepayment_type 设置为 REQUIREDOPTIONAL

需要提供信用卡

还有一些其他用例需要在预订时提供信用卡。

  • 在商家的服务级别或可用性空档级别将 require_credit_card 字段设置为 REQUIRE_CREDIT_CARD_ALWAYS

取消和退款

取消和退款由合作伙伴(您)或用户通过 Action Center 发起。在这两种情况下,您都必须遵守在服务级别设置并在预订结账时告知用户的 CancellationPolicy

如果您未提供 CancellationPolicy,系统会假定在服务级别设置的 min_advance_online_canceling 定义的取消期限内取消的任何订单均可退款。如果未定义 min_advance_online_canceling,则为 0(表示可随时取消)。

如果您必须从 Action Center 停用取消功能,请与您的 Google 联系人讨论。

对 RTO 的更改
  • 向用户退款后,您必须发送一个更新预订 RTU,以更改预订的付款状态。将 update_mask 设置为 status,payment_information.prepayment_status,并设置 payment_information.prepayment_status = PREPAYMENT_REFUNDEDstatus = CANCELED
    • 请使用新的 BookingStatus = CANCELEDPrepaymentStatus = PREPAYMENT_REFUNDED。Maps Booking API 和 gRPC 模板均已弃用枚举值 CANCELED_AUTOMATIC_REFUND
更改预订服务器