บัตรที่ลิงก์อัตโนมัติ

ฉากหลัง

ฟีเจอร์บัตรที่ลิงก์อัตโนมัติช่วยให้คุณส่งบัตรเพิ่มเติมไปยังผู้ใช้ที่มีบัตรของคุณอยู่แล้วใน Google Wallet ได้ นอกจากนี้ คุณยัง ลิงก์บัตรล่วงหน้ากับบัตรหลักได้เมื่อผู้ใช้บันทึกบัตรหลัก (หลัก) ระบบจะจัดกลุ่มบัตรที่ลิงก์อัตโนมัติกับบัตรหลักโดยมี ข้อความที่ด้านบนของบัตรหลักเพื่อแจ้งให้ผู้ใช้ทราบว่ามีการลิงก์บัตรใหม่ แล้ว ระบบรองรับบัตรประเภทต่อไปนี้เป็นบัตรหลักหรือบัตรที่ลิงก์

  • ตั๋วกิจกรรม
  • บอร์ดดิ้งพาส
  • บัตรโดยสาร
  • ข้อเสนอ
  • บัตรของขวัญ
  • บัตร Loyalty Pass
  • บัตรทั่วไป
ตัวอย่างหลักของบัตรที่ลิงก์อัตโนมัติ ตัวอย่างที่ 2 ของบัตรที่ลิงก์อัตโนมัติ
บัตรหลักที่มีข้อความว่ามีการเพิ่มบัตรใหม่ บัตรใหม่ที่ลิงก์กับบัตรหลัก

กรณีการใช้งาน

คุณอาจมีกรณีการใช้งานที่แตกต่างกันสำหรับการลิงก์บัตรกับบัตรที่มีอยู่ ตัวอย่าง เช่น

  • ลิงก์ข้อเสนอกับบัตรสะสมคะแนนที่มีอยู่
  • ลิงก์บัตรกำนัลอาหารกับบอร์ดดิ้งพาสหรือตั๋วเข้างาน
  • ลิงก์บัตรจอดรถกับตั๋วเข้างาน

ข้อควรพิจารณาบางประการเมื่อใช้บัตรที่ลิงก์อัตโนมัติ

  • ออบเจ็กต์หลักและออบเจ็กต์ที่ลิงก์ต้องใช้ issuerId เดียวกัน
  • โดยมีขีดจํากัดของออบเจ็กต์ที่ลิงก์ 50 รายการต่อออบเจ็กต์หลัก
  • การพุชบัตรที่ลิงก์โดยอัตโนมัติไม่รับประกันและถือเป็นการดำเนินการอย่างเต็มความสามารถ ผู้ใช้สามารถเลือกไม่รับบัตรที่ลิงก์อัตโนมัติได้ หากกรณีการใช้งานมีความสำคัญและผู้ใช้ต้องได้รับบัตรที่ลิงก์ไว้ เราขอแนะนำให้สื่อสารผ่านช่องทางอื่นเพื่อให้แน่ใจว่าผู้ใช้ได้เพิ่มบัตรแล้ว
  • การอัปเดตนโยบายการใช้งานที่ยอมรับได้ของ Google Wallet รวมถึงคำแนะนำเกี่ยวกับการใช้บัตรที่ลิงก์อัตโนมัติซึ่งต้องปฏิบัติตาม

ขั้นตอนการผสานรวม

หากสร้างออบเจ็กต์หลักแล้ว คุณสามารถข้ามขั้นตอนที่ 1 ได้

  1. สร้างออบเจ็กต์ของบัตรประเภทใดก็ได้ที่แสดง พร้อมพารามิเตอร์ที่จำเป็น นี่คือออบเจ็กต์หลัก
  2. สร้างออบเจ็กต์อื่นของบัตรประเภทใดก็ได้ที่ระบุไว้ นี่คือออบเจ็กต์ที่ลิงก์
  3. ไม่ว่าจะก่อนหรือหลังบันทึกออบเจ็กต์หลัก ให้อัปเดต ออบเจ็กต์หลักด้วยรหัสของออบเจ็กต์ที่ลิงก์ในพารามิเตอร์ linkedObjectIds

ต้องมีเพย์โหลดขั้นต่ำเพื่อตั้งค่า linkedObjectIds ในบัตรหลัก พารามิเตอร์ที่จำเป็น 3 รายการ ได้แก่

  1. ISSUERID.PRIMARY_OBJECT_ID
  2. ISSUERID.PRIMARY_CLASS_ID
  3. 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 ใบแล้ว