Kartu Tertaut Otomatis
Tetap teratur dengan koleksi
Simpan dan kategorikan konten berdasarkan preferensi Anda.
Latar belakang
Fitur Kartu Tertaut Otomatis memungkinkan Anda mengirim kartu tambahan kepada pengguna yang sudah memiliki kartu Anda yang ada di Google Wallet mereka. Anda juga dapat
melakukan pra-penautan kartu ke kartu utama saat pengguna menyimpan kartu utama
(utama). Kartu yang ditautkan Otomatis dikelompokkan dengan kartu utama dengan
info di atas kartu utama yang memberi tahu pengguna bahwa kartu baru telah
ditautkan. Jenis kartu berikut didukung sebagai kartu utama atau kartu tertaut;
- Tiket acara
- Tiket pesawat
- Tiket multi-trip
- Penawaran
- Kartu hadiah
- Kartu loyalitas
- Kartu umum
|
|
Kartu utama dengan info bahwa kartu baru telah ditambahkan
|
Kartu baru yang ditautkan ke kartu utama
|
Kasus Penggunaan
Anda mungkin memiliki kasus penggunaan yang berbeda untuk menautkan kartu ke kartu yang ada. Beberapa
contohnya meliputi:
- Tautkan penawaran ke kartu loyalitas yang ada.
- Tautkan voucher makanan ke boarding pass atau tiket acara.
- Menautkan kartu parkir ke tiket acara.
Beberapa pertimbangan saat menggunakan Kartu Tertaut Otomatis
- Objek utama dan objek tertaut harus menggunakan issuerId yang sama.
- Ada batas 50 objek tertaut per objek utama.
- Meneruskan kartu tertaut secara otomatis tidak dijamin dan dianggap sebagai
upaya terbaik. Pengguna dapat memilih untuk tidak menerima Kartu yang ditautkan Otomatis. Jika kasus penggunaannya
penting dan pengguna harus menerima kartu yang ditautkan, sebaiknya
komunikasikan melalui saluran lain untuk memastikan pengguna menambahkan kartu.
- Pembaruan pada AUP Google Wallet
mencakup panduan tentang penggunaan Kartu yang ditautkan Otomatis yang harus dipatuhi.
Langkah-Langkah Integrasi
Jika sudah membuat objek utama, Anda dapat melewati langkah 1.
- Buat objek dari jenis kartu apa pun yang tercantum
dengan parameter yang diperlukan. Ini adalah objek utama.
- Buat objek lain dari jenis kartu apa pun yang tercantum. Ini akan menjadi objek
tertaut.
- Sebelum atau setelah objek utama disimpan, perbarui
objek utama dengan ID objek tertaut di parameter linkedObjectIds.
Ada payload minimum yang diperlukan untuk menetapkan linkedObjectIds pada kartu
utama. 3 parameter yang diperlukan meliputi;
- ISSUERID.PRIMARY_OBJECT_ID
- ISSUERID.PRIMARY_CLASS_ID
- ISSUERID.LINKED_OBJECT_ID
Contoh Permintaan JSON untuk menambahkan objek tertaut ke objek kartu
…
{
"id": "ISSUERID.PASS_OBJECTID",
"classId": "ISSUERID.PASS_CLASSID",
"barcode": {
"type": "qrCode",
"value": "QR code"
},
"linkedObjectIds": {"ISSUERID.LINKED_PASS_OBJECTID"}
}
…
Contoh Respons JSON setelah menautkan objek ke objek kartu
…
"state": "active",
"linkedObjectIds": {
"ISSUERID.LINKED_PASS_OBJECTID"
}
…
Perilaku yang diharapkan
Setelah menerima respons berhasil, perangkat dengan kartu yang Anda perbarui
akan menerima kartu tertaut. Kartu tertaut ini akan dikelompokkan bersama
dengan kartu utama. Pengguna dapat melihat kartu yang ditautkan dengan menggeser ke kanan.
Penanganan pengecualian
Kemungkinan error dapat terjadi dengan penggunaan API yang salah yang dapat
mencakup;
Kirim pesan |
Alasan |
Objek utama dan objek tertaut tidak memiliki ID penerbit
yang sama. |
Anda tidak dapat melampirkan objek tertaut ke objek penerbit lain. |
Objek utama dan objek tertaut merujuk ke objek yang sama. |
Anda tidak dapat melampirkan objek yang sama dengan linkedObject. |
Objek yang ditautkan tidak ada. |
Objek tertaut seharusnya sudah disisipkan ke Wallet
API. |
Objek tertaut sudah memiliki objek tertaut lain. Tidak dapat menambahkan objek tertaut
bertingkat. |
Objek tertaut tidak boleh memiliki objek tertaut lain. |
Objek sudah ditautkan ke objek lain. Tidak dapat menambahkan objek tertaut
bertingkat. |
Objek utama tidak dapat menjadi objek tertaut dengan sendirinya. |
Tidak dapat menambahkan objek tertaut lagi, batas terlampaui. |
Batas 50 kartu tertaut telah tercapai untuk kartu
utama. |
Kecuali dinyatakan lain, konten di halaman ini dilisensikan berdasarkan Lisensi Creative Commons Attribution 4.0, sedangkan contoh kode dilisensikan berdasarkan Lisensi Apache 2.0. Untuk mengetahui informasi selengkapnya, lihat Kebijakan Situs Google Developers. Java adalah merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2025-09-04 UTC.
[null,null,["Terakhir diperbarui pada 2025-09-04 UTC."],[[["\u003cp\u003eAuto Linked Passes enable you to send additional passes to users who already have an existing pass from your organization in their Google Wallet, pre-linking them for a seamless user experience.\u003c/p\u003e\n"],["\u003cp\u003eThis feature supports various pass types including Event tickets, Boarding passes, Transit passes, Offers, Gift cards, Loyalty passes, and Generic passes, offering flexibility for different use cases.\u003c/p\u003e\n"],["\u003cp\u003eWhen utilizing Auto Linked Passes, ensure the primary and linked objects share the same issuerId and be aware of the 50 linked object limit per primary object.\u003c/p\u003e\n"],["\u003cp\u003eWhile automatic delivery of linked passes is best-effort and user-configurable, the feature offers a convenient way to provide users with related passes, enhancing their experience with your services.\u003c/p\u003e\n"]]],["Auto Linked Passes enable grouping additional passes with an existing primary pass in Google Wallet. Supported pass types include event tickets, boarding passes, and loyalty passes. To link passes, create primary and linked objects, then update the primary object with the linked object's ID using the `linkedObjectIds` parameter. Both objects must share the same `issuerId`. There is a limit of 50 linked passes. Errors may occur if linked objects are from different issuers or the 50 limit is reached.\n"],null,["# Auto Linked Passes\n\n#### Background\n\nThe Auto Linked Passes feature lets you send additional passes to a\nuser who already has your existing pass in their Google Wallet. You can also\npre-link passes to a primary pass when a user saves the **primary**\n(main) pass. The Auto Linked Pass is grouped with the primary pass with a\ncallout above the primary pass informing the user that a new pass has been\nlinked. The following pass types are supported as primary or linked passes;\n\n- Event ticket\n- Boarding pass\n- Transit pass\n- Offer\n- Gift card\n- Loyalty pass\n- Generic pass\n\n|--------------------------------------------------------------|-------------------------------------|\n| | |\n| Primary pass with the callout that a new pass has been added | New pass linked to the primary pass |\n\n#### Use Cases\n\nYou may have different use cases for linking passes to an existing pass. Some\nexamples include:\n\n- Link an offer to an existing loyalty card.\n- Link a meal voucher to a boarding pass or event ticket.\n- Link a parking pass to an event ticket.\n\n#### Some considerations when using Auto Linked Passes\n\n- The primary object and linked object must use the same issuerId.\n- There is a limit of 50 linked objects per primary object.\n- Pushing linked passes automatically is not guaranteed and considered best-effort. Users can opt out of receiving Auto Linked Passes. If the use case is critical and the user must receive the linked pass, we recommend communicating through another channel to ensure the user adds the pass.\n- Updates to the [Google Wallet AUP](https://payments.developers.google.com/terms/aup) include guidance on the use of Auto Linked Passes which must be adhered to.\n\n#### Integration Steps\n\nIf you have already created a **primary** object you can skip step 1.\n\n1. Create an [object](/wallet/generic/use-cases/create) of any pass type listed with the required parameters. This is the **primary** object.\n2. Create another object of any pass type listed. This is going to be the **linked** object.\n3. Either before or after the primary object is saved, [update](/wallet/generic/use-cases/update) the primary object with the ID of the linked object in the linkedObjectIds parameter.\n\nThere is a minimum payload required to set the linkedObjectIds on a primary\npass. The 3 required parameters include;\n\n1. ISSUERID.PRIMARY_OBJECT_ID\n2. ISSUERID.PRIMARY_CLASS_ID\n3. ISSUERID.LINKED_OBJECT_ID\n\n#### Example JSON Request to add a linked object to a pass object\n\n```carbon\n ...\n {\n \"id\": \"ISSUERID.PASS_OBJECTID\",\n \"classId\": \"ISSUERID.PASS_CLASSID\",\n \"barcode\": {\n \"type\": \"qrCode\",\n \"value\": \"QR code\"\n },\n \"linkedObjectIds\": {\"ISSUERID.LINKED_PASS_OBJECTID\"}\n }\n ...\n```\n\n#### Example JSON Response after linking an object to a pass object\n\n```scdoc\n …\n \"state\": \"active\",\n \"linkedObjectIds\": {\n \"ISSUERID.LINKED_PASS_OBJECTID\"\n }\n …\n```\n\n#### Expected behavior\n\nAfter receiving a successful response, devices with the pass you updated\nshould receive the linked pass. This linked pass will be grouped together with\nthe primary pass. Users can see the linked pass by swiping right.\n\n#### Exception handling\n\nPotential errors may happen with incorrect use of the API which can\ninclude;\n\n| **Message** | **Reason** |\n|------------------------------------------------------------------------------------|----------------------------------------------------------------------|\n| Primary object and linked object don't share the same issuer ID. | You cannot attach a linked object to another issuer's object. |\n| Primary object and linked object refer to the same object. | You cannot attach the same object as the linkedObject. |\n| Linked object does not exist. | The linked object should already be inserted into the Wallet API. |\n| Linked object already has another linked object. Cannot add nested linked objects. | Linked objects cannot have another linked object. |\n| Object is already linked to another object. Cannot add nested linked objects. | Primary object cannot be a linked object by itself. |\n| Cannot add any more linked objects, limit exceeded. | The limit of 50 linked passes has been reached for the primary pass. |"]]