背景
如果使用者已在 Google 錢包中儲存現有票證,你就能透過「自動連結票證」功能傳送其他票證給對方。使用者儲存主要 (主要) 票證時,您也可以預先將票證連結至主要票證。系統會將自動連結的票證與主要票證歸為一組,並在主要票證上方顯示附註,告知使用者已連結新票證。系統支援下列憑證類型做為主要或連結憑證:
- 活動票券
- 登機證
- 大眾運輸票證
- 優惠
- 禮物卡
- 會員卡
- 一般票證
|
|
| 主要票證,並顯示已新增票證的附註 | 新票證已連結至主要票證 |
應用實例
將票證連結至現有票證的用途可能不同。例如:
- 將優惠連結至現有會員卡。
- 將餐飲優待券連結至登機證或活動票券。
- 將停車證連結至活動票券。
使用自動連結的票證時,請注意以下事項:
- 主要物件和已連結物件必須使用相同的 issuerId。
- 每個主要物件最多只能連結 50 個物件。
- 系統不保證會自動推送已連結的票證,且會盡力完成這項作業。使用者可以選擇不接收自動連結的票證。如果使用者的情況緊急,且必須收到連結的票證,建議透過其他管道與使用者聯絡,確保對方新增票證。
- Google 錢包 AUP 的更新內容包括自動連結票證的使用指南,請務必遵守。
整合步驟
如果您已建立主要物件,可以略過步驟 1。
- 使用必要參數建立任何列出的票證類型物件。這是主要物件。
- 建立列出的任何票證類型的其他物件。這會是連結的物件。
- 在儲存主要物件之前或之後,請使用 linkedObjectIds 參數中的連結物件 ID 更新主要物件。
如要在主要票證上設定 linkedObjectIds,必須達到最低酬載量。3 個必要參數包括:
- 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 相同的物件。 |
| 連結的物件不存在。 | 連結的物件應已插入 Google 錢包 API。 |
| 連結的物件已連結至其他物件。無法新增巢狀連結物件。 | 連結的物件無法再連結其他物件。 |
| 物件已連結至另一個物件。無法新增巢狀連結物件。 | 主要物件本身不得為連結物件。 |
| 無法再新增連結物件,已達上限。 | 主要票證的連結票證數量已達上限 (50 張)。 |