複数の搭乗券をグループ化する

グループ化 ID を使用する

デフォルトでは、1 つの「Google ウォレットに追加」リンクに複数のパスを追加しても、ユーザーの Google ウォレット アプリでパスがグループ化されることはありません。ただし、すべてのパスに同じグループ化 ID を指定することでパスをグループ化できます。グループ化されたパスは Google ウォレット アプリに一緒に表示されます。パスのグループを選択すると、各パスがカルーセルに表示されます。

パスをグループ化できる状況は以下のとおりです。

  • 最初のプロビジョニング時
  • update メソッドまたは patch メソッドを使用する場合

グループにパスを追加するには、パス オブジェクトの groupingInfo.groupingId プロパティを設定する必要があります。同じ groupingId 値を持つパス オブジェクトは、別々に追加された場合でも、すべて自動的にグループ化されます。

以下の例では、ユーザーに次回の購入でポイントカードとクーポンを利用してもらうために、両方をグループ化しています。

loyaltyObject = {
  "classId": "ISSUER_ID.GIFT_CARD_CLASS_SUFFIX",
  "id": "ISSUER_ID.GIFT_CARD_OBJECT_SUFFIX",
  "state": "ACTIVE",
  "groupingInfo": {
    # Note the same groupingId value
    "groupingId": "combinedGiftCardAndOfferId",
    "sortIndex": 1
  },
  "barcode": {
    "type": "QR_CODE",
    "value": "QR code"
  },
  "accountId": "Account id",
  "accountName": "Account name",
  "loyaltyPoints": {
  "label": "Points",
    "balance": {
      "int": 800
    }
  }
}

offerObject = {
  "classId": "ISSUER_ID.OFFER_CLASS_SUFFIX",
  "id": "ISSUER_ID.OFFER_OBJECT_SUFFIX",
  "state": "ACTIVE",
  "groupingInfo": {
    # Note the same groupingId value
    "groupingId": "combinedGiftCardAndOfferId",
    "sortIndex": 2
  },
  "barcode": {
      "type": "QR_CODE",
      "value": "QR code",
  },
}

搭乗券の自動グループ化

搭乗券は、個別に使用されるのではなく、グループで使用されることがあります。たとえば、乗り継ぎの待ち時間や複数の経由地を含むフライトのチケットをグループ化するようなケースがこれに該当します。

搭乗券には、以下のプロパティの値が同じ場合にパスを自動的にグループ化するロジックが追加で備わっています。

  • FlightClass.flightHeader.carrier.carrierIataCode
  • FlightClass.flightHeader.flightNumber
  • FlightClass.localScheduledDepartureDateTime
  • FlightObject.reservationInfo.confirmationCode
  • FlightObject.id の発行者 ID の部分

2 枚の搭乗券の間でこれらのプロパティのいずれかが異なっている場合、搭乗券はグループ化されません(groupingInfo を使用してグループ化する場合を除く)。このように、クラスとオブジェクトのプロパティはどちらも自動グループ化に影響します。この特性を利用して、異なるクラスの搭乗券をグループ化することができます(同じ旅程に含まれる別々のフライトが異なる運航会社によるものである場合など)。