背景
「自動連結票證」功能可讓您傳送其他票證,給已在 Google 錢包中已有票證的使用者。您也可以在使用者儲存「主要」(主要) 票證時,預先連結主要票證。自動連結的票證會以主要票證分組,並在主要票證上方顯示摘要,告知使用者新票證已連結。主要或連結的票證支援下列票證類型;
- 活動票券
- 登機證
- 大眾運輸票證
- 合作提案
- 禮物卡
- 會員卡/證
- 一般票證
應用實例
將票證連結至現有票證的方式可能不同。以下是幾個例子:
- 將優惠連結至現有的會員卡。
- 將餐券連結至登機證或活動票券。
- 將停車證連結至活動票券。
使用自動連結的票證時,請注意下列事項
- 主要物件和已連結的物件必須使用相同的頒發機構 ID。
- 每個主要物件最多只能有 50 個連結物件。
- 我們不保證會自動推送連結的票證,也無法保證會盡全力。使用者可以選擇不接收自動連結的票證。如果用途很重要,且使用者必須收到連結票證,建議您透過其他管道進行通訊,確保使用者新增票證。
- Google 錢包使用限制的更新內容包括使用自動連結的票證的使用指南,請務必遵守。
整合步驟
如果您已建立 primary 物件,可以略過步驟 1。
- 為列出的任何票證類型建立物件,且該物件必須包含必要參數。此為「primary」物件。
- 為列出的任何票證類型建立另一個物件。這會成為「linked」物件。
- 請在主要物件儲存前後,使用 linkObjectIds 參數中連結物件的 ID,更新主要物件。
如要在主要票證上設定 linkObjectIds,必須有最低酬載。三個必要參數包括:
- ISSUERID.PRIMARY_OBJECT_ID
- ISSUERID.PRIMARY_CLASS_ID
- ISSUERID.LINKED_OBJECT_ID
將已連結物件新增至票證物件的 JSON 要求範例
… { "id": "ISSUERID.PASS_OBJECTID", "classId": "ISSUERID.PASS_CLASSID", "barcode": { "type": "qrCode", "value": "QR code" }, "linkedObjectIds": {"ISSUERID.LINKED_PASS_OBJECTID"} } …
將物件連結至票證物件之後的 JSON 回應範例
… "state": "active", "linkedObjectIds": { "ISSUERID.LINKED_PASS_OBJECTID" } …
預期的行為
成功收到回應後,已更新票證的裝置應會收到連結的票證。此連結的票證會與主要票證分為一組。使用者只要向右滑動,就能看到已連結的票證。
例外狀況處理
不當使用 API 時可能會發生錯誤,這些錯誤包括:
訊息 | 原因 |
---|---|
主要物件和連結的物件不會共用相同的核發機構 ID。 | 您無法將已連結的物件附加至其他發卡機構的物件。 |
主要物件和已連結的物件指的是同一個物件。 | 您無法附加相同的物件做為 linkedObject。 |
連結的物件不存在。 | 連結的物件應插入 Wallet API。 |
連結的物件已有其他連結的物件。無法新增巢狀連結物件。 | 已連結的物件不得有其他已連結的物件。 |
物件已連結至其他物件。無法新增巢狀連結物件。 | 主要物件不能單獨成為連結的物件。 |
無法新增任何連結的物件,已超過上限。 | 主要票證的連結數量已達上限 (50 個), |