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

ที่มา

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

  • ตั๋วกิจกรรม
  • บอร์ดดิ้งพาส
  • บัตรโดยสาร
  • ข้อเสนอ
  • บัตรของขวัญ
  • บัตรสะสมคะแนน
  • บัตรทั่วไป

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

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

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

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

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

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

หากสร้างออบเจ็กต์หลักไว้แล้ว ให้ข้ามขั้นตอนที่ 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 ใบแล้ว