Untuk mengaktifkan sesi pengguna yang lancar (misalnya, mengakses manfaat program loyalitas, penawaran yang dipersonalisasi) dan checkout yang diautentikasi, Anda harus menerapkan kemampuan Penautan Identitas menggunakan OAuth 2.0. Jika Anda tidak menerapkan penautan identitas, Anda harus mendukung checkout tamu.
Konsultasikan dengan tim hukum Anda jika ada pertanyaan terkait peraturan privasi dan praktik izin.
Persyaratan Inti
- Protokol: Terapkan alur Kode Otorisasi OAuth 2.0 (RFC 6749 2.3.1).
- Autentikasi Klien: Harus mendukung Autentikasi Dasar HTTP
(
client_secret_basic) di Endpoint Token. - Cakupan: Anda harus mendukung cakupan UCP standar yang ditentukan di bagian ini.
- Penemuan: Anda harus menghosting file metadata di
/.well-known/oauth-authorization-server(RFC 8414) agar Platform dapat menemukan endpoint Anda.
Cakupan
Anda harus menerapkan cakupan berikut, yang memberikan izin untuk semua operasi siklus proses checkout (Dapatkan, Buat, Perbarui, Hapus, Batalkan, Selesaikan).
- Nama Cakupan:
ucp:scopes:checkout_session
Pengalaman Pengguna: Anda harus menampilkan cakupan yang diminta sebagai satu layar izin yang digabungkan (misalnya, "Izinkan Google mengelola sesi checkout Anda"), bukan tombol teknis terperinci.
Penautan yang Disederhanakan Google
Penautan yang Disederhanakan Google adalah tambahan opsional untuk OAuth 2.0 standar. Fitur ini
memanfaatkan pernyataan JWT untuk menggabungkan pemeriksaan niat dan pertukaran token di
endpoint token OAuth 2.0 (niat check, create, get).
Penautan yang Disederhanakan Google direkomendasikan untuk pengalaman pengguna yang lancar. Fitur ini memungkinkan pengguna menautkan akun atau membuat akun baru menggunakan profil Google mereka tanpa keluar dari antarmuka Google. Karena alur terjadi sepenuhnya dalam UI Google, frontend penautan tidak diperlukan. Hal ini mengurangi overhead pengembangan, menghilangkan pengalihan browser, dan dapat meningkatkan rasio konversi.
- Spesifikasi: Penerapan harus mengikuti Persyaratan untuk Penautan yang Disederhanakan.
- Standar: Meskipun mengambil konsep dari RFC 7523, cara kerjanya berbeda untuk meningkatkan keamanan.
Metadata Server Otorisasi (Contoh JSON)
Anda harus memublikasikan objek JSON ini di
https://[your-domain]/.well-known/oauth-authorization-server
Contoh:
{
"issuer": "https://merchant.example.com",
"authorization_endpoint": "https://merchant.example.com/oauth2/authorize",
"token_endpoint": "https://merchant.example.com/oauth2/token",
"revocation_endpoint": "https://merchant.example.com/oauth2/revoke",
"scopes_supported": [
"ucp:scopes:checkout_session"
],
"response_types_supported": [
"code"
],
"grant_types_supported": [
"authorization_code",
"refresh_token"
],
"token_endpoint_auth_methods_supported": [
"client_secret_basic"
],
"service_documentation": "https://merchant.example.com/docs/oauth2"
}