Payment Handler API
memungkinkan penyedia pembayaran menyediakan pengalaman pembayaran kustom mereka untuk penjual, bersama dengan Payment Request API. Saat Payment Request API diinisialisasi melalui
konstruktor new PaymentRequest()
, API tersebut akan memicu peristiwa canmakepayment
secara diam-diam dengan
origin penjual dan data arbitrer ke
service worker yang terdaftar untuk Payment Handler API.
Komunikasi lintas origin ini tidak memerlukan gestur pengguna dan tidak
menampilkan antarmuka pengguna.
Chrome akan menghapus kolom identifikasi dari peristiwa canmakepayment
dan memulai uji coba origin dari Chrome 108.
Informasi di halaman ini hanya berlaku untuk penyedia aplikasi pembayaran yang menggunakan Payment Handler API. Jika tidak menggunakannya, Anda dapat melewati petunjuk ini.
Apa yang berubah?
Saat penjual memanggil new PaymentRequest()
, service worker terdaftar
menerima peristiwa canmakepayment
(CanMakePaymentEvent
)
yang berisi informasi berikut:
topOrigin
paymentRequestOrigin
methodData
modifiers
Header ini akan dihapus dan pekerja layanan hanya akan menerima peristiwa
canmakepayment
tanpa informasi tambahan.
Deteksi fitur
Untuk mendeteksi apakah peristiwa canmakepayment
berubah dalam kode service worker, periksa properti masing-masing seperti berikut:
self.addEventListener(e => {
if (e.paymentRequestOrigin) {...}
if (e.topOrigin) {...}
if (e.methodData && e.methodData.length > 0) {...}
if (e.modifiers && e.modifiers.length > 0) {...}
...
});
Mencoba perubahan secara lokal
Untuk mengaktifkan perubahan secara lokal untuk tujuan pengembangan:
- Gunakan Chrome 108, 109, atau 110.
- Masukkan
chrome://flags/#clear-identity-in-can-make-payment
di kolom URL. - Aktifkan tanda.
- Luncurkan kembali Chrome.
Dengan mengaktifkan tanda, kolom identitas dalam peristiwa canmakepayment
akan dikosongkan (dan
Intent IS_READY_TO_PAY
Android).
Mengaktifkan perubahan dalam produksi
Anda juga dapat mengaktifkan perubahan dalam produksi untuk tujuan pengujian sebelum perubahan tersebut benar-benar diterapkan di Chrome. Mekanisme ini disebut uji coba origin.
Uji coba origin memungkinkan Anda mencoba fitur baru dan memberikan masukan tentang kegunaan, kepraktisan, dan efektivitasnya kepada komunitas standar web. Untuk informasi selengkapnya, lihat Panduan Uji Coba Origin untuk Developer Web. Untuk mendaftar ke uji coba origin ini atau uji coba origin lainnya, buka halaman pendaftaran.
Untuk mendaftarkan uji coba origin:
- Minta token untuk origin Anda.
- Tambahkan token ke file JavaScript pekerja layanan Anda menggunakan header HTTP
Origin-Trial
. Menyetel header HTTP memerlukan akses untuk mengonfigurasi server Anda. Header respons yang dihasilkan akan terlihat seperti:
Origin-Trial: Auw/tjTQ2eJQ911wiMHi1Bb7i71...
Untuk melihat token uji coba origin di file pekerja layanan,
gunakan DevTools
atau perintah curl
seperti berikut:
$ curl --head <Service Worker JS file URL> | grep -i origin-trial
origin-trial: Auw/tjTQ2eJQ911wiMHi1Bb7i71...
Mengaktifkan kembali kolom identitas secara lokal setelah Chrome 111
Jika Anda menggunakan Chrome 111 atau yang lebih baru, kolom identitas dalam peristiwa
canmakepayment
akan dibiarkan kosong. Untuk mengaktifkan kembali kolom secara lokal, Anda dapat melakukan hal berikut:
- Gunakan Chrome 111 atau yang lebih baru.
- Masukkan
chrome://flags/#add-identity-in-can-make-payment
di kolom URL. - Aktifkan tanda.
- Luncurkan kembali Chrome.
Langkah berikutnya
Perubahan ini direncanakan untuk diaktifkan secara default mulai Chrome 111. Anda dapat mulai melakukan pengujian hari ini untuk bersiap menghadapi perubahan waktu peluncuran.