使用入门
什么是 Google Wallet API?
借助 Google Wallet API,开发者可以在 Google 钱包中创建数字卡券。Google Wallet API 目前支持登机牌、活动门票、会员卡、优惠和公交卡。最近,我们添加了通用卡券类型,以支持更多使用情形。
如何根据业务需求和复杂程度设置开发环境?
以下指南可用于设置开发环境,以满足不同程度的业务复杂性和安全性需求。使用多个服务账号可让开发者创建与 PROD 环境分开的 TEST 环境。
基本设置复杂性
1 个商家控制台账号或 1 个商家控制台父账号与多个发卡机构账号。
- 此选项支持使用 1 个主账号集中管理零个到多个子商家/发卡机构。
- 1 个 Google Cloud 项目。
- 1 个服务账号凭据。
- 一组用户。
平均设置复杂性
1 个父级账号对应多个发卡机构账号。
- 此选项支持使用 1 个主账号集中管理多个子商家。
- 1 个 Google Cloud 项目。
- 每个发卡机构的商家控制台独立用户数。
- 1 个或多个服务账号凭据。
- 每个商家/发卡机构 1 个凭据。
- 每个商家使用不同的凭据访问权限。
复杂设置的复杂性
1 个父级账号对应多个发卡机构账号。
- 此选项支持使用 1 个主账号集中管理多个子商家。
- 1 个或多个 Google Cloud 项目。
- 每个发卡机构的商家控制台唯一身份用户数。
- 1 个或多个服务账号凭据。
- 每个商家/发证机构 1 个 PROD 凭据。
- 每个商家/发行方 1 个 DEV 凭据。
使用卡券
如何删除类或对象?
目前,您无法从 Google 钱包中删除类或对象。不过,用户可以从 Google 钱包中取消关联对象。
如何将多张卡券分组?
使用 GroupingID 可轻松将卡券分组。
如何仅更新通行证的部分内容?
请参阅我们的性能指南,了解如何使用 PATCH 请求执行部分更新。
我可以批量创建卡券吗?
请参阅我们的性能指南,了解如何使用该 API 执行批处理请求。
常规问题
发送到 Google Wallet API 的请求的速率限制是多少?
对 Google Wallet API 的调用频率限制为每秒 20 个请求。
向 Google Wallet API 发送的请求的建议超时时间是多少?
Google Wallet API 没有正式的 SLA,但我们建议将超时时间设置为 10 秒,因为第 99 百分位延迟时间约为 5 秒。另请注意,延迟时间通常取决于外部因素,例如插入包含托管在外部服务器上的图片的某个对象时,提取该图片所需的时间,因为这取决于外部服务器的延迟时间。
为什么禁止在 Google 钱包中的卡券上使用个人图片?
Google 钱包不支持在卡券上显示个人照片,因为根据现行法规,所有消费者都有权选择不收集或处理敏感数据。如果将敏感数据(个人图片)作为有价值的对象(在 JWT 中)的一部分,可能会出现托管问题,即数据可能会公开,这超出了原始同意协议的范围。为确保数据保密性,不允许使用个人图片。我们正在努力,争取在未来支持个人图片。
Google 钱包 API 会返回哪些错误代码?
如需查看 Google Wallet API 返回的错误代码和异常列表,请参阅错误代码。如何启用推送通知?
Google 钱包目前不支持开发者编写的推送通知。 不过,Google 钱包会针对以下卡券及时提供通知。 Google 钱包目前不支持开发者编写的推送通知。
| 纵向 | 通知 | 已触发 | 文档 |
|---|---|---|---|
| 事件 | 即将显示的提醒 | 活动开始前 3 小时 | 文档 |
| 登机牌 | 即将显示的提醒 | 航班起飞前 3 小时 | 文档 |
| 登机牌 | 卡券更新 | 出发地航站楼、登机口、登机时间或起飞时间发生变化 | 文档 |
| 优惠卡 | 到期提醒 | 在优惠卡到期前 48 小时 | 文档 |
| Generic | 即将显示的提醒 | 在“时间间隔”开始前 24 小时 | 文档 |
| Generic | 到期提醒 | “时间间隔”结束前 48 小时 | 文档 |
商家 ID 可以删除吗?
目前,您无法从 Google Pay 和钱包控制台中删除或归档商家 ID。
如何使用 Applinking 功能?
应用链接需要列入许可名单,您可以在此处申请列入许可名单。
Google 钱包是否支持地理围栏?
目前不支持地理围栏。
如何设置会员卡?
您可以按照此指南设置注册和会员回馈活动。
如何向 Google 发送我的公交卡徽标?
请使用此表单向 Google 发送用于列入许可名单的徽标。
如何正确处理 Base64 编码的 userProfile 数据?
确保您在整个流程中使用的是 UTF-8 编码。JSON 字符串会先进行 UTF-8 编码,然后使用 android.util.Base64(包含 NO_WRAP 和 网址_SAFE 选项)进行编码。 这与 RFC 3548 第 4 节相对应。
如何以编程方式创建发卡机构账号?
如需了解如何通过 API 创建发卡机构账号,请参阅此指南。
智能感应
我是否需要使用特殊的 NFC 读取器来读取 Google SmartTap 卡券?
必须是支持智能触碰的终端。点击此处可查看经过认证的提供商名单。
如何让卡券通过 NFC 正常使用?
请按照此配置操作,使您的卡券可通过智能触碰兑换。
JSON Web 令牌 (JWT)
是否有工具可以简化 JWT 的实施和调试?
是的,借助诸如 www.jwt.io 之类的平台可以在开发流程中解码和调试令牌,从而验证您要提交的内容。请注意,Google 没有任何关联公司,也不会特别推荐任何此类第三方。
我的 JWT 链接网址超出了浏览器限制的 1800 个字符数上限。该怎么做?
您可以使用该 API 在创建保存卡券链接 (JWT) 之前 预先创建类和对象 。
问题排查
为什么我的时间设置显示了错误的活动时间?
卡券上显示的时间是活动当地时间,并会根据活动举办地的时间进行偏移。
我制作的卡券上无法呈现我的徽标。哪里可能出了问题?
- 首先,请确保您的徽标符合指南,并以 PNG 格式保存。
- 确保徽标随时可用,且具有高可靠性。请勿重定向到可能会导致 404 错误的图片文件。您的图片应托管在 HTTPS 位置,否则将无法在 Google 钱包中显示。
- 确保在卡券中设置了 API 中标记为必需的所有必填字段。
支持和反馈
如何与技术支持人员联系?
如需更多帮助,请点击 Google Pay 和 Google 钱包控制台左侧边栏中的“与支持团队联系”按钮,与支持团队联系。
如何提供产品反馈?
如需提供产品反馈,请点击开发者网站页面右上角的“发送反馈”按钮,然后选择“产品反馈”。接下来,在文本区域中描述您的反馈,然后点击“发送”。
如何提供文档反馈?
如需提供文档反馈,请点击开发者网站页面右上象限中的“发送反馈”按钮,然后选择“文档反馈”。 接下来,在文本区域中描述您的反馈,然后点击“发送”。