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