ข้อมูลเบื้องต้น
ฟีเจอร์บัตรที่ลิงก์โดยอัตโนมัติช่วยให้คุณส่งบัตรเพิ่มเติมไปยังผู้ใช้ที่มีบัตรของคุณอยู่แล้วใน Google Wallet ได้ นอกจากนี้ คุณยังลิงก์บัตรกับบัตรหลักล่วงหน้าได้เมื่อผู้ใช้บันทึกบัตรหลัก (หลัก) ระบบจะจัดกลุ่มบัตรที่ลิงก์โดยอัตโนมัติไว้กับบัตรหลักโดยจะมีข้อความไฮไลต์เหนือบัตรหลักเพื่อแจ้งให้ผู้ใช้ทราบว่ามีการลิงก์บัตรใหม่แล้ว ระบบรองรับบัตรประเภทต่อไปนี้เป็นบัตรหลักหรือบัตรที่ลิงก์
- ตั๋วกิจกรรม
- บอร์ดดิ้งพาส
- บัตรโดยสาร
- ข้อเสนอ
- บัตรของขวัญ
- บัตรสะสมคะแนน
- บัตรทั่วไป
บัตรหลักที่มีข้อความไฮไลต์ว่าเพิ่มบัตรใหม่แล้ว | บัตรใหม่ที่ลิงก์กับบัตรหลัก |
กรณีการใช้งาน
คุณอาจมีกรณีการใช้งานที่แตกต่างกันสำหรับการลิงก์บัตรกับบัตรที่มีอยู่ ตัวอย่าง
- ลิงก์ข้อเสนอกับบัตรสะสมคะแนนที่มีอยู่
- ลิงก์บัตรกำนัลอาหารกับบอร์ดดิ้งพาสหรือตั๋วกิจกรรม
- ลิงก์บัตรจอดรถกับตั๋วเข้างาน
ข้อควรพิจารณาบางประการเมื่อใช้บัตรที่ลิงก์โดยอัตโนมัติ
- ออบเจ็กต์หลักและออบเจ็กต์ที่ลิงก์ต้องใช้ issuerId เดียวกัน
- ออบเจ็กต์ที่ลิงก์จำกัดไว้ที่ 50 รายการต่อออบเจ็กต์หลัก
- เราไม่รับประกันการส่งบัตรที่ลิงก์โดยอัตโนมัติและถือว่าดำเนินการอย่างดีที่สุด ผู้ใช้สามารถเลือกไม่รับบัตรที่ลิงก์โดยอัตโนมัติได้ หากกรณีการใช้งานมีความสำคัญและผู้ใช้ต้องได้รับบัตรที่ลิงก์ เราขอแนะนำให้สื่อสารผ่านช่องทางอื่นเพื่อให้แน่ใจว่าผู้ใช้เพิ่มบัตรดังกล่าวแล้ว
- การอัปเดต AUP ของ Google Wallet มีคำแนะนำเกี่ยวกับการใช้บัตรที่ลิงก์อัตโนมัติซึ่งต้องปฏิบัติตาม
ขั้นตอนการผสานรวม
หากสร้างออบเจ็กต์หลักไว้แล้ว ให้ข้ามขั้นตอนที่ 1
- สร้างออบเจ็กต์ประเภทบัตรใดก็ได้ที่ระบุไว้พร้อมพารามิเตอร์ที่จำเป็น นี่คือออบเจ็กต์หลัก
- สร้างออบเจ็กต์อีกรายการของบัตรประเภทใดก็ได้ที่แสดง ซึ่งจะเป็นออบเจ็กต์ ที่ลิงก์กันอยู่
- ไม่ว่าจะก่อนหรือหลังบันทึกออบเจ็กต์หลัก ให้อัปเดตออบเจ็กต์หลักด้วยรหัสของออบเจ็กต์ที่ลิงก์ในพารามิเตอร์ linkedObjectIds
มีเพย์โหลดขั้นต่ำที่จำเป็นสำหรับการตั้งค่า 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 อย่างไม่ถูกต้อง ซึ่งอาจรวมถึง
ข้อความ | เหตุผล |
---|---|
ออบเจ็กต์หลักและออบเจ็กต์ที่ลิงก์จะไม่ใช้รหัสผู้ออกคีย์เดียวกัน | คุณแนบออบเจ็กต์ที่ลิงก์กับออบเจ็กต์ของผู้ออกใบอนุญาตรายอื่นไม่ได้ |
ออบเจ็กต์หลักและออบเจ็กต์ที่ลิงก์หมายถึงออบเจ็กต์เดียวกัน | คุณแนบออบเจ็กต์เดียวกับ linkedObject ไม่ได้ |
ไม่มีออบเจ็กต์ที่ลิงก์ | ออบเจ็กต์ที่ลิงก์ควรแทรกลงใน Wallet API อยู่แล้ว |
ออบเจ็กต์ที่ลิงก์มีออบเจ็กต์ที่ลิงก์อื่นอยู่แล้ว ไม่สามารถเพิ่มออบเจ็กต์ที่ลิงก์ที่ซ้อนอยู่ | ออบเจ็กต์ที่ลิงก์ต้องไม่มีออบเจ็กต์ที่ลิงก์อีกรายการ |
ออบเจ็กต์ลิงก์กับออบเจ็กต์อื่นอยู่แล้ว เพิ่มออบเจ็กต์ที่ลิงก์ซึ่งซ้อนกันไม่ได้ | ออบเจ็กต์หลักต้องไม่ออบเจ็กต์ที่ลิงก์ |
ไม่สามารถเพิ่มออบเจ็กต์ที่ลิงก์ได้อีก เนื่องจากเกินขีดจำกัดแล้ว | บัตรหลักมีบัตรที่ลิงก์ครบตามจำนวนที่จำกัดแล้ว |