用例

本指南概述了您可以使用 Google Pay API for Passes 在“活动门票”类别与您的客户进行互动的几种方式,具体如下所述:

创建可保存多个卡券的按钮

如果用户购买了多张卡券,并且他们可能会将所有卡券保存到 Google Pay,那么一种很有用的做法是让用户只需点击一下保存到 Google Pay 按钮或链接,即可保存许多对象。可以在要签名的 JSON Web 令牌(JWT)中定义多个对象或类。

JWT 必须采用以下任一格式:

  • 仅使用预先插入的类和对象。
  • 仅使用完全在 JWT 中定义的对象和类资源。

如需通过示例了解如何为多个卡券创建按钮,请参阅保存多位参与者按钮。如需详细了解卡券的界面表示法,请参阅给活动门票分组

给活动门票分组

如果多个 EventTicketObject 对象符合特定条件,Google Pay 应用会将它们标识为一个组。无论是否使用 class.eventID 属性,都可以做到这一点。

有些功能在用于组(而非单个对象)时会具有不同的工作方式,例如状态通知,或在界面上排列为多个用户保存的多个卡券时。

使用 class.eventId 分组

class.eventId 属性可用于对门票进行分组,且不受其他属性的限制。例如,如果两个 EventTicketObject 对象都具有 class.eventId = "foo",那么即使它们的 class.eventNameclass.dateTime.start 不同,也会被视为同组。

使用 class.eventID 时,只要下列属性保持一致,对象即可被视为同组。

  • 发卡机构 ID(来自 Google Pay API for Passes Merchant Center)
  • class.eventId

不使用 class.eventId 分组

如果没有为 EventTicketObject 对象设置 class.eventId,则仅在下列所有属性一致的情况下,这些对象才会被视为同组:

  • 发卡机构 ID(来自 Google Pay API for Passes Merchant Center)
  • class.eventName
  • class.dateTime.start

针对即将开始的活动发出通知

Google Pay 会在活动开始前三小时向用户发送通知。开始时间由 class.dateTime.start 确定。

要接收此通知,用户必须启用通知功能。为此,他们需要转至“设置”>“通知”并启用卡券的动态

通知显示在两个位置,即锁定屏幕和通知区域。

锁定屏幕

如果用户设置为在锁定屏幕上显示通知,会收到如下格式的状态通知(该格式不可修改):
Your upcoming event
Expand for more options

如果用户点击通知并解锁设备,Google Pay 应用中会显示他们的卡券。

如果用户有多张卡券,只显示即将可用的卡券。如果他们根据给活动门票分组保存了多张活动门票,通知仅会显示组中的一张门票。但是,用户点击这张门票后,他们可以左右滑动以查看其他已分组的门票。

通知区域

通知显示条形码和其他选项。用户可以点按通知以在 Google Pay 应用中查看卡券。

用户打开状态通知后,该状态通知不会自动关闭。自动关闭功能将于活动结束 60 分钟后执行。如果未提供 class.dateTime.end 时间,则使用 class.dateTime.start 时间。

处理过期卡券

在 Google Pay 应用的“卡券”标签页下,有一个“过期卡券”部分,其中包含所有已归档或无效的卡券。如果活动门票至少满足下列一个条件,系统就会将其移至“过期卡券”部分:

  • 活动门票的 object.validTimeInterval.end.date 已过。在 object.validTimeInterval.end.date 后 24 小时内,卡券可随时移至“过期卡券”。
  • 自活动门票的 class.dateTime.end 起已过去至少 72 小时。如果未指定 class.dateTime.end,则改用 class.dateTime.start
  • EventTicketObjectstate 字段标记为 ExpiredInactiveCompleted

用户保存某张卡券后,可以通过引用其 objectId 链接到该卡券。

可以使用以下链接来引用卡券:

https://pay.google.com/gp/v/object/{<issuerId>}.{<ObjectId>}

您可以使用 Google Pay 应用或网络浏览器查看卡券。