本文档列出了您在使用 Google Wallet API 时应熟悉的常见术语和概念。
传球数
通过
卡券是卡券对象的实例,可发放给用户以保存到其 Google 钱包。Google Wallet API 支持多种常用卡券类型,包括登机牌、活动门票和身份证等。Google Wallet API 还提供了一个通用卡券类型,可用于创建不受其他明确支持的卡券。
在大多数情况下,卡券是同时使用卡券类和卡券对象创建的。
卡券颁发者
卡券发行方是一个实体,此类实体负责创建卡券并将其发行给用户,以将其保存在 Google 钱包中。卡券发行方拥有卡券,并且可以创建、颁发和更新卡券。卡券发行方可以是个人开发者、公司和组织,也可以是代表他人创建和签发卡券的集合商家,例如专门为零售商提供活动门票或优惠券的公司。
卡券类
卡券类可以视为据以创建卡券的共享模板。卡券类定义了一些属性,这些属性将包含在使用该类的所有卡券中。卡券发行方可以创建多个类,每个类都有自己的一组独特属性,这些属性定义样式和外观等属性以及智能触碰、注册和登录等附加功能。
在大多数情况下,若要创建卡券,分别提供一个卡券类来定义卡券模板,并提供一个卡券对象来定义要签发的各个卡券的细节。
卡券对象
卡券对象用于定义向用户发放并保存到其 Google 钱包的单个卡券。卡券对象通常包含特定于用户的信息。例如,虽然卡券类可以定义特定商店的礼品卡卡券,但卡券对象会提供如余额或到期日期等特定的详细信息。
与可在多个卡券实例之间共享的卡券类不同,对于签发的每个卡券,您都必须创建一个卡券对象。
私人凭证
您使用 Google Wallet API 创建的一些卡券可能包含敏感用户数据。这些卡券需要额外的保护来帮助保障用户数据安全,并使用通用私人凭证类型在 Google Wallet API 中以不同方式管理这些凭证。如果您的卡券包含敏感数据(如 Google Wallet API 使用限制政策中所定义),且在初始配置过程中可能需要接受额外的隐私控制和审核,则应使用通用私人凭证。
智能触碰
智能触碰是 Google 专有的近距离无线通信协议,用于在移动设备和 NFC 终端之间传输数据。借助智能感应技术,用户可以兑换 Google 钱包中保存的卡券,只需将手机靠近任何兼容的 NFC 终端即可。
如需对您的卡券使用智能触碰协议,您必须与支持智能触碰的终端提供商建立合作关系。
API 和 SDK
Google 钱包 API
Google Wallet API 是 Google 提供的一项服务,可用于创建和签发卡券,供用户保存至其 Google 钱包。该 API 可通过多种不同的方式使用,包括 Google Wallet REST API、Google Wallet Android SDK 和 Google 钱包控制台。
Google 钱包 REST API
Google Wallet REST API 是一个通过向 Google Wallet API 发送 HTTP 请求的方式,以编程方式创建和管理卡券的接口。
若要使用 Google Wallet REST API,您还需要一个 Google Cloud 帐号,以便创建一个服务帐号,用于验证向 Google Wallet REST API 发出的请求。
Google 钱包 Android SDK
Google Wallet Android SDK 提供了一系列用于在 Android 应用中使用 Google Wallet API 的便捷方法,例如创建和签发卡券。
添加到 Google 钱包
“添加到 Google 钱包”按钮
“Add to Google Wallet”按钮是 Google 批准的资源,可用于向用户展示卡券。当用户点击或点按该按钮时,系统应触发“添加到 Google 钱包”链接,开始将签发的卡券添加到用户的 Google 钱包。
建议您尽可能使用“添加到 Google 钱包”按钮,因为用户熟悉这种界面元素,知道该如何与之互动。
如需查看有关使用该按钮的资源和准则,请参阅 Google Wallet API 品牌推广指南。
“添加到 Google 钱包”链接
通过“添加到 Google 钱包”链接,您可以通过普通超链接向用户发放卡券。您可在能使用超链接的任何位置(例如电子邮件、短信、网站和移动应用)使用此限定符。
“添加到 Google 钱包”链接是通过将已签名的 JWT 附加到网址 https://pay.google.com/gp/v/save/
来创建的。
发行方账号
演示模式
创建发卡机构帐号时,帐号将处于“演示模式”,直到您获准进行发布访问。在演示模式下,您可以创建卡券,但只能将其发放给具有发卡机构帐号“管理员”或“开发者”角色的用户,或已在 Google 钱包控制台中添加为测试帐号的用户。
在“演示模式”下,您发放的所有卡券的标题都会自动以“[仅限于测试]”字样开头,表示卡券仅用于测试目的。
测试账号
当您的发卡机构帐号处于“演示模式”时,如果您想将卡券发放给没有您帐号的“管理员”或“开发者”角色的用户,则必须在 Google 钱包控制台中将他们添加为测试帐号。以测试账号身份注册的用户将能够将您签发的卡券添加到其 Google 钱包。当您在“演示模式”下测试您的卡券时,此功能会非常有用。
商家资料
要为 Google Wallet API 创建发卡机构帐号,您必须在注册 Google Pay & Wallet Console 时设置商家资料。商家资料可向 Google 提供有关您的公司或组织的基本信息,并且是获得发布访问权限的必要前提。
发布权限
您必须先获得发布权限,然后才能签发卡券,供任何用户保存到其 Google 钱包。如需获准获得发布权限,您必须创建至少一个卡券类,并拥有完整的商家资料。想要使用 Google 钱包 Android SDK 签发卡券的发卡机构还必须为其应用提交 SHA-1 指纹。
如需申请发布权限,请转到 Google 钱包控制台,然后点击“申请发布权限”按钮。Google 电子钱包团队会审核您的请求,并在您获得发布权限后通知您。
身份验证
JSON Web 令牌 (JWT)
JSON Web 令牌是一种常用的业界标准,用于以 JSON 对象的形式安全地传输信息。使用 Google Wallet API 时,您需要对要用于创建卡券实例的 JWT(发音为“jot”)格式的卡券对象的详细信息进行编码,然后在请求中将该 JWT 发送到 Google Wallet API。
在将 JWT 发送到 Google Wallet API 之前,通过使用共享密钥为其签名可确保 JWT 安全。如果您使用的是 Google Wallet REST API,则签名密钥是您的 Google Cloud 服务账号密钥。如果您使用的是 Google 钱包 Android SDK,则签名密钥就是您的 Android 应用的 SHA-1 指纹。
服务账号
Google Cloud 服务帐号是一种特殊的帐号,通常由应用或计算工作负载(而不是个人)使用。对于 Google Wallet API,您将使用服务帐号对发送到 Google Wallet REST API 的请求进行身份验证。
服务账号是在 Google Cloud 控制台中创建的。如需使用服务账号,您还需要在 Cloud 控制台中启用 Google Wallet API,以允许该服务账号向 Google Wallet REST API 发出请求。
服务账号密钥
服务账号密钥是您用来对 Google Wallet REST API 调用进行身份验证的凭据。服务账号密钥被视为具有高度敏感性,因此必须保密,因为您可以使用 Google Wallet REST API 访问帐号中的多项卡券发行方功能,包括创建卡券类和卡券对象。
SHA-1 指纹
Android 应用签名证书的 SHA-1 指纹是您使用 Google Wallet Android SDK 时用于对 Google Wallet API 调用进行身份验证的凭据。证书的 SHA-1 指纹是使用 Gradle 或 keytool 生成的。如需使用指纹验证您的请求,您必须在 Google 钱包控制台中注册指纹。