常见问题解答

本页提供了有关 Google Pay API 的一般信息和常见问题解答。

Google Pay API 简介

Google Pay 可让您的应用和网站实现轻松便捷的结账体验。借助 Google Pay API,您的客户可以使用保存在其 Google 账号中的卡在您的应用和网站中进行顺畅结算。

如何获得支持

在 Google Pay & Wallet Console 中注册,然后选择“与支持团队联系”。我们可以帮助您排查集成问题。此外,您可以参阅我们的 Android 问题排查指南和 Web 问题排查指南,自行调试您的集成。

支持的功能

Google Pay API 支持多项功能。

支持的付款方式

Google Pay API 可能会返回卡或网络令牌。

定期结算和订阅

对定期结算的支持与 Google Pay API 响应中返回的支付方式紧密相关。无论是已标记化的卡还是已归档的卡,都可以用于定期结算。要处理定期结算,商家无需按一定频率调用我们的 API。相反,付款凭据会存储在商家端,用于定期付款。商家使用其支付网关 API 来管理定期结算。

如果满足以下条件,Google Pay 支持定期付款:

  • 商家遵守网络规则,例如商家发起的交易。
  • 商家在购买流程中披露付款条款,并由用户接受。

我们还支持金额可变的定期结算。例如,支持移动运营商的每月话费账单。如需了解详情,商家必须与其支付网关代表联系。

自动充值或“充值”

如需处理相同费用的自动充值扣款,商家无需每次都调用我们的 API。付款凭据存储在商家端并重复使用。如需了解详情,商家必须与其支付网关代表联系。

退款

对于取消、退款或争议,商家可以像处理其他付款方式的退款一样处理交易撤销。如需了解详情,商家必须与其处理方代表联系。

捐款筹集

经批准的公益组织 (NPO) 可以集成 Google Pay API 来收取捐款,前提是他们提供文件来证明、认证和验证其公益组织身份。例如,美国公益组织必须提供 IRS 签发的有效 501(c)3 资格证明,才能符合资格要求。

条款及政策

Google Pay 服务条款

所有商家都必须同意并遵守 Google Pay 服务条款。

Google Pay API 使用限制政策

所有商家都必须同意并遵守 Google Pay API 使用限制政策。

“赌博”政策

我们的 Google Pay API 使用限制政策中定义了针对赌博的政策。

我们的赌博政策可能会不时发生变化。所有提交的内容都必须经过审核和批准。

我们接受以下国家/地区的公司进行的赌博业务集成:

  • 澳大利亚
  • 奥地利
  • 加拿大
  • 捷克
  • 法国
  • 格鲁吉亚
  • 德国
  • 希腊
  • 匈牙利
  • 爱尔兰
  • 意大利
  • 日本
  • 荷兰
  • 波兰
  • 葡萄牙
  • 罗马尼亚
  • 西班牙
  • 瑞典
  • 英国

在后期,我们可能会选择将现有的支持范围扩大。

如需获得 Google Pay API 的正式版发布权限以进行博彩集成,您需要完成一系列前提条件:

  • 如果您在上述国家/地区拥有仅限 Android 的赌博集成,则必须先遵守 Google Play 的赌博政策,并完成 Google Play 的审核流程。然后,我们可以评估您的纯 Android 集成,以确定是否授予您 Google Pay API 的正式版发布权限。
  • 如果您仅通过网站集成赌博服务,并且位于上述国家/地区之一,则必须在 Google Pay API 初始配置流程中提交授权许可,以证明您有资格在该国家/地区提供赌博服务。然后,我们可以评估您的纯 Web 集成,以确定是否授予您 Google Pay API 的正式版发布权限。
  • 如果您在上述国家/地区之一同时集成了 Android 和 Web 赌博功能,则必须先遵守 Google Play 的赌博政策,并完成 Google Play 的审核流程。然后,我们可以评估您的 Android 和 Web 集成,以确定是否授予 Google Pay API 的正式版发布权限。

存在特定条件或限制的国家/地区

如果赌博集成符合以下条件,则允许在所列国家/地区使用:

国家/地区 Android 集成资格条件 网站集成资格要求
保加利亚 是,但有限制:
  • 重定向到网站的应用符合条件。
  • 禁止发布不重定向到网站的应用。
是
塞浦路斯 是,但有限制:
  • 州彩票符合条件。
  • OPAP Cyprus Limited 符合条件。
  • 禁止宣传在线赌场。
  • 禁止提供老虎机。
  • 禁止赛马博彩。
  • 禁止赛狗博彩。
  • 禁止宣传点差交易。
  • 禁止宣传博彩交易所。
是,但有限制:
  • 州彩票符合条件。
  • OPAP Cyprus Limited 符合条件。
  • 禁止宣传在线赌场。
  • 禁止提供老虎机。
  • 禁止赛马博彩。
  • 禁止赛狗博彩。
  • 禁止宣传点差交易。
  • 禁止使用博彩交易所。
芬兰 是,但有限制:
  • Veikkaus Oy 符合条件。
是,但有限制:
  • Veikkaus Oy 符合条件。
哈萨克斯坦 可以,但有限制:
  • 彩票符合条件。
  • 体育博彩符合条件。
  • 总和器符合条件。
  • 禁止宣传在线赌场。
  • 禁止提供电子赌场。
可以,但有限制:
  • 彩票符合条件。
  • 体育博彩符合条件。
  • 总和器符合条件。
  • 禁止宣传在线赌场。
  • 禁止宣传电子赌场。
波兰 否 是,但有限制:
  • 持牌赌博服务提供商符合条件。
南非 可以,但有限制:
  • 在线体育博彩符合条件。
是,但有限制:
  • 在线体育博彩符合条件。

如果您将 Google Pay API 扩展到之前未获批准的国家/地区,请与我们联系以获得扩展批准。 请注意,您需要为计划提供赌博相关服务的每个国家/地区提供有效的赌博经营许可证。我们不允许将 Google Pay API 用于面向未成年人或根据当地法律禁止赌博的其他个人的赌博服务。

医疗保健政策

我们的医疗保健政策在 Google Pay API 使用限制政策中进行了定义。

请准备好在入驻时提供相关许可,以验证您的医疗保健用例。所有提交的内容都需经过审核和批准。

金融服务政策

我们的金融服务政策在 Google Pay API 使用限制政策中进行了定义。

在完成初始配置以验证您的金融服务使用情形时,请准备好分享相关许可。所有提交的内容都需经过审核和批准。

常规常见问题解答

以下常见问题解答适用于商家:

我通过一家大型 PSP 来管理所有风险和增强型客户身份验证。关于 GPay,我应该了解哪些信息?

Google Pay API 会以签名的加密载荷返回付款方式。返回的支付方式包括 PAN 或由设备 PAN (DPAN) 和密文组成的令牌化卡。

令牌化卡载荷无需额外的步骤或验证即可处理。

包含 PAN 的卡载荷需要通过内部或 PSP 提供的解决方案进行 3D 安全验证。

如果您的 PSP 负责管理所有风险和 SCA 逻辑,请确保您的 Google Pay API 集成包含以下属性:

  • merchantInfo.merchantName(Android、Web):商家名称呈现在付款页面中。
  • transactionInfo.countryCode(Android、Web):这表示交易的处理位置。您必须指定收单银行所在国家/地区。
  • transactionInfo.totalPrice(Android、Web):交易的价值,可以选择在小数点后保留两位小数。
如何获取 Google 商家 ID?
在 Google 批准您的网站后,您便可以获得 Google 商家 ID。如需启动该流程,请登录 Google Pay & Wallet Console,然后创建 Google Pay API 集成。您需要提供完全限定网域列表以及子网域,以便调用 Google Pay API。
我们能否在多个品牌和渠道(网站/应用)中使用同一个商家 ID?
支持在多个品牌和平台(例如 Web 和 Android)中使用单个 Merchant ID,并且通常建议这样做以简化对账。
商家如何在其应用和网站中提升用户对 Google Pay 的接受程度?
如要突出显示对 Google Pay 的支持,请务必使用我们的 Android 和网页品牌推广指南中提供的资源。
如果您有 Android 集成,可以在 Play 商店说明中注明您现在支持 Google Pay。对于网页集成,您可以直接向商家网站添加说明。
电子商务平台可以支持 Google Pay 吗?
是的,Google Pay API 支持电子商务平台。代表其商家托管结账页面的付款处理方、网关或电子商务平台合作伙伴可以使用 Google Pay 的托管结账功能。
哪些支付服务机构支持 Google Pay?
如需查找支持 Google Pay 的处理方列表,请查看我们的 Google Pay 处理方列表。
Google Pay 支持哪些国家和地区?
请查看使用 Google Pay 支持在线付款或应用内付款的 受支持国家/地区列表。
Google Pay 令牌 (CRYPTOGRAM_3DS) 支持哪些国家和地区?
请参阅我们的寻找支持实体店内购物和感应式购买的支付方式页面,查看支持 Google Pay 支付标记的国家/地区列表以及每个国家/地区支持此类支付标记 (CRYPTOGRAM_3DS) 的银行。该页面同时列出了受支持和不受支持的卡。
Google Play 应用内购结算与 Google Pay API 有何区别?
在 Android 应用中销售数字商品和服务的 Google Play 开发者必须使用 Google Play 应用内购结算,如 Play 开发者政策中心中所指定。应用内购结算的示例包括虚拟游戏商品、应用功能或内容,以及云软件产品。如需详细了解应用内购结算,请参阅 Google Play 结算服务概览页面。
当用在应用中时,Google Pay API 仅适用于实体商品和服务。
Google Pay 会收取费用吗?
Google Pay 不会向使用 Google Pay API 进行付款的用户、商家和开发者额外收取费用。具体而言,商家仍需向其付款处理方支付手续费。
Google 会采取哪些措施来验证凭据和防范欺诈?
添加到 Google 的所有卡都会经过验证授权,以验证卡详细信息,包括卡验证码 (CVC)。Google 还会根据付款方式数据、Google 账号个人资料、交易记录、位置和设备信息运行专有风险引擎。但是,商家必须继续使用当前的欺诈和风险评估工具处理 Google Pay 交易。
移动应用 WebView 是否支持 Google Pay?
Android WebView 完全支持 Google Pay,并可模拟移动网络体验,前提是您添加了必要的 WebKit 依赖项。不过,在 iOS WebView 上,由于 iOS 对第三方 Cookie 的限制,isReadyToPay API 将始终返回 false。Android 应用和 WebView 中的网站网域都必须获得正式版发布权限。如需了解具体的实现详情,请参阅使用 Android WebView 或使用 iOS WKWebview 文档。
我的处理器未列出。我还能与 Google Pay 集成吗?
Google Pay 持续与电子商务平台和付款处理方建立合作伙伴关系。 如果您在 g.co/pay/processors 中找不到您的处理方,可以提交申请。当处理器可供使用时,您会收到通知。
如果我已有付款处理方或付款平台提供商,如何启用 Google Pay?
Google Pay 与各种支付服务提供商和 电子商务平台提供商合作。每个平台都提供了量身定制的具体文档,帮助您快速上手,同时还提供了主要教程,让您轻松入门。
如果我是受支持的支付处理方,如何大规模向我的商家提供 Google Pay?
受支持的付款处理方可以实现我们的托管结算解决方案,以进行 Web 集成。 借助托管的结账流程,您的客户可以向其客户提供 Google Pay,并跳过 Google Pay 的单独注册流程。

首先,您必须加入受支持的付款处理方。如需集成托管结账解决方案,请与帮助您完成初始配置的 Google 技术联系人联系。

如果我在结账流程中提供配送服务,Google Pay 如何为用户提供不同的配送选项和不同的价格?
对于 Web 集成,您需要一个送货地址,并在 PaymentDataRequest 对象、PaymentOptions 对象和 PaymentDataCallbacks 对象中显示不同的运费选项和价格。如需查看示例情况,请参阅动态价格更新演示。

对于 Android 集成,您需要在 PaymentDataRequest 对象中提供送货地址。

如何接收通过 Google Pay 完成的购买交易的款项?
Google Pay API 通过将用户的付款信息传递给您的支付服务提供商来促进交易。它不参与资金流动,旨在与您现有的支付基础架构搭配使用。
获得正式版发布权限需要满足哪些要求?
商家必须在 Google Pay & Wallet Console 中创建商家资料,并上传其购买流程的屏幕截图以供审核。托管 Google Pay API 的每个域名都必须单独提交以供审批,因为系统不接受通配符域名(例如 *.merchant.com)。 如需了解详情,请参阅Android页面(Android 和/或 Web)。
如何了解集成提交的状态,以及在审核流程结束后是否需要进行任何更改?
提交 Google Pay API 集成以供审核后,您会收到一封包含审核结果的电子邮件。如果您的集成符合我们的《使用限制政策》和品牌推广指南,则会获得批准,并在 Google Pay & Wallet Console 中显示为有效状态。如果需要更改,状态会显示为需要更多信息,并且电子邮件会提供在您重新提交之前需要修正的详细信息。如果您对提交的内容有任何疑问,可以直接通过 Google Pay & Wallet Console 与支持团队联系。
如果我看到错误消息,该如何排查 Google Pay API 集成存在的问题?
如需了解常见错误代码和解决方法,请参阅我们的 Android 和网站问题排查指南。如果您还有其他问题,请通过 Google Pay & Wallet Console 与支持团队联系。
如何自定义 Google Pay API 集成以限制银行卡?
卡片的所有自定义设置都可在 CardParameters 对象中找到,适用于 Android 和 Web。例如,您可以选择要允许的卡组织和发卡机构所在国家/地区。
什么是 Google Pay API?
借助 Google Pay API,您的客户只需按下按钮即可使用保存在其 Google 账号中的支付方式完成付款。该 API 可为保存数亿张卡的数百万用户提供简单的结账体验。它提供了更高的安全性,客户付款数据从 Google 服务器到您的付款处理方会进行端到端加密。集成过程非常简单,可与您现有的付款处理堆栈配合使用,只需几行代码即可实现。
Google Pay API 和 Google Wallet API 之间有什么关系?
Google Pay API 和 Google Wallet API 是两个独立的 API。借助 Google Pay API,您的客户可以在您的网站或 Android 应用中使用 Google Pay 作为支付方式。借助 Google Wallet API,开发者可以针对各种应用场景创建和管理数字卡券。例如,会员卡、票券、通行证、健康记录和其他可自定义的内容。如需详细了解 Google Wallet API,请访问 Google Wallet API 开发者文档。

当前的 Google Pay API 版本是什么?如何处理更新?
当前版本在 Android 和 网页文档中列出。Google 已维护此版本多年,仅添加了新功能和可选字段。对 API 所做的任何更新都向后兼容,以确保当前集成不会中断。
哪些平台支持 DPAN (CRYPTOGRAM_3DS),哪些平台支持 FPAN (PAN_ONLY)?
DPAN 仅适用于 Android,并且只能在 Android 设备或 Android 移动网络/WebView 上结账时使用。桌面版网站和 iOS 设备不支持 DPAN,默认情况下会返回 PAN_ONLY。
如何区分 DPAN 和 FPAN,以及应如何处理它们?
assuranceDetails 对象旨在帮助商家确定交易是否需要通过 3D 安全验证进行升级,以满足增强型客户身份验证 (SCA) 要求,而不是严格区分 DPAN 和 FPAN。如需接收这些详细信息,商家必须在其 Google Pay API 请求中将 assuranceDetailsRequired: true 添加到卡参数中。
cardHolderAuthenticated 和 accountVerified 有何区别?
如果请求中将 assuranceDetailsRequired 设置为 true,则响应将包含两个属性:
  • accountVerified:表示用于付款的卡是真实的,并且账号信誉良好。不过,仅凭此验证无法提供授权保护。
  • cardHolderAuthenticated:表示用户使用其 Android 设备开始交易,并使用了预配的基于设备的网络令牌。
我们如何使用这些标志来触发 3D Secure?
商家应使用这些标志来构建其 3D Secure 触发逻辑。如果 cardHolderAuthenticated 和 accountVerified 都返回 true,则表示凭据非常安全且符合 SCA 标准,您无需升级交易以进行进一步的 3DS 身份验证。
如果商家设置了 assuranceDetailsRequired: true,是否会收到电子商务令牌?
不可以,电子商务令牌在 PSP 级别进行控制。
Google Pay 交易是否符合责任转移条件?
责任转移功能是否可用取决于支付卡网络。 如需了解详情,请参阅启用 Visa Liability Shift。
如何识别“先买后付”(BNPL) 交易?
目前,没有针对 BNPL 交易的特定标识符。它们在您的系统中将显示为常规 FPAN 凭据。
Google 能否提供测试卡来测试 SCA 场景?
Google Pay API 无法直接提供任何 SCA 测试卡。您的支付服务提供商 (PSP) 应该能够在沙盒环境中使用其测试卡套件来满足您的测试需求。
加密支付凭据的失效时间或存留时间 (TTL) 是多少?
加密的 Google Pay 载荷会在整整一周后过期。处理延迟授权或异步处理的商家必须确保在载荷过期之前,在此时间范围内通过其支付服务提供商 (PSP) 授权付款。
如何处理购买后操作,例如退款和重新授权?
Google Pay 不参与资金流动,仅作为令牌化凭证的传递通道。初始交易发生后,您的支付服务提供商 (PSP) 会将加密载荷中的支付信息映射到其自己的专有令牌(例如“商家令牌”或“客户资料 ID”)。所有购买后互动和资金流动完全由您和您的 PSP 管理。
动态定价如何与商家发起的交易搭配使用?
目前,商家发起的交易 (MIT) 不支持动态定价。这是一个已知限制。
在 WebView 中使用 Google Pay 需要哪些内容安全政策 (CSP) 配置?

如果您使用的是内容安全政策 (CSP),请务必为 connect-src 指令设置正确的值,以允许在 WebView 中使用 Google Pay。例如:

Content-Security-Policy: connect-src pay.google.com google.com account.google.com www.google.com
  
如何将内容安全政策 (CSP) 随机数与 Google Pay Web API 搭配使用?

如果您的网站强制执行严格的 CSP,要求为脚本执行和动态注入的样式提供 Nonce,请执行以下操作:

  1. 在加载 pay.js 的 <script> 标记中添加 CSP nonce 属性:

    <script
      async
      src="https://pay.google.com/gp/p/js/pay.js"
      nonce="your-nonce-value"
      onload="onGooglePayLoaded()">
    </script>
  2. 在实例化 PaymentsClient 时,在 PaymentOptions 中传递 nonce 属性:

    const paymentsClient = new google.payments.api.PaymentsClient({
      environment: 'TEST',
      nonce: 'your-nonce-value'
    });
          

Google Pay 会将此 nonce 属性应用于所有动态注入的 <style> 和 <script> 元素,包括由 createButton() 创建的按钮样式。

Google Pay API 在结账期间是否会使用或要求使用 NID Cookie?

不会。NID Cookie 既不用于 Google Pay API 结账流程,也不支持该流程。

NID Cookie 与 Google 服务器端服务相关联,旨在为未登录 Google 账号的用户存储个性化数据。

基本服务功能(包括安全性、欺诈防范和服务可靠性)独立于 NID Cookie 运行。Google Pay API 旨在为商家和用户提供安全可靠的体验,无论是否存在此 Cookie。

Google 致力于保护隐私,并确保按照 Google 的隐私权政策和技术和 Cookie 政策处理这些 Cookie。 这些资源可能有助于您准备合规性文档,并进一步提高对用户的透明度。