Langkah 1: Siapkan Sandbox

Sandbox adalah lingkungan pengujian untuk layanan identitas Google Wallet. Mode ini menggunakan ID pengujian, bukan ID asli, sehingga Anda dapat membangun dan men-debug integrasi tanpa menyentuh data produksi.

Secara default, Google Wallet berjalan dalam mode produksi dengan ID asli. Pada langkah ini, Anda akan mengalihkan perangkat pengujian ke mode sandbox dan mengonfigurasi server untuk permintaan dan respons sandbox.

Langkah-langkah di halaman ini

Sebelum memulai

Langkah A: Minta akses sandbox untuk akun pengujian Anda

Opsi untuk beralih antara sandbox dan produksi disembunyikan secara default. Untuk mengaktifkan tombol di perangkat pengujian, Akun Google Anda harus ditambahkan ke daftar yang diizinkan sandbox:

  1. Isi formulir Permintaan Akses Sandbox Google Pay dengan Akun Google yang Anda gunakan di Google Wallet.
  2. Jika Anda melakukan pengujian dari negara atau wilayah tempat ID digital belum diluncurkan secara resmi, kirimkan juga alamat Gmail akun pengujian Anda ke wallet-identity-rp-support@google.com.

Langkah B: Alihkan perangkat Anda ke mode sandbox

  1. Buka aplikasi Setelan di perangkat pengujian Android Anda.
  2. Ketuk Akun Google / foto profil Anda di bagian paling atas layar (menampilkan nama Anda dan "Layanan dan preferensi Google").
  3. Jika diminta, pilih profil Anda, lalu ketuk Semua layanan.
  4. Buka kategori Lainnya, lalu ketuk Lingkungan TapAndPay. Jika Anda tidak melihat TapAndPay Environment, mulai ulang perangkat dan mulai lagi dari langkah 1. Jika masih tidak ada, pastikan akun Anda ada dalam daftar yang diizinkan sandbox (Langkah A).
  5. Ketuk menu drop-down, lalu pilih SANDBOX.

    Pemilih lingkungan TapAndPay

  6. Dialog akan memberi tahu Anda bahwa lingkungan telah berubah. Ketuk Oke dan mulai ulang perangkat Anda.

    Screenshot konfirmasi perubahan lingkungan

  7. Buka Google Wallet setelah memulai ulang. Jika Anda melihat dialog berikut, hentikan paksa dan buka kembali Google Wallet agar disinkronkan ke lingkungan sandbox:

    Dialog paksa berhenti Google Wallet

Langkah C: Konfirmasi bahwa perangkat Anda dalam mode sandbox

  1. Buka aplikasi Google Wallet .
  2. Di kanan atas, ketuk foto profil atau akun Anda > Setelan Wallet.
  3. Buka bagian bawah halaman. Jika Anda melihat pesan konfirmasi yang bertuliskan SANDBOX, berarti perangkat Anda dikonfigurasi untuk panggilan sandbox. Jika Anda tidak melihat pesan, berarti mode produksi sedang aktif.
Mode produksi
Gambar 1: Mode produksi
Mode sandbox
Gambar 2: Mode sandbox

Beberapa perangkat tidak menampilkan Google Wallet di Setelan Google. Untuk membuka setelan Google Wallet di perangkat tersebut, gunakan adb dengan perintah berikut:

adb shell am start -n com.google.android.gms/com.google.android.gms.tapandpay.settings.TapAndPaySettingsActivity

Beralih kembali ke produksi

Ulangi Langkah B, tetapi pilih PRODUCTION, bukan SANDBOX.

Perangkat Wear OS

Untuk mengaktifkan mode sandbox di perangkat Wear OS yang terhubung, tambahkan file kosong dan mulai ulang:

adb shell touch /sdcard/Download/android_pay_env_override_sandbox
adb reboot

Untuk beralih kembali ke produksi, hapus file dan mulai ulang:

adb shell rm /sdcard/Download/android_pay_env_override_sandbox
adb reboot

Langkah D: Konfigurasi server Anda untuk sandbox

Konfigurasi sandbox dua arah yang menampilkan permintaan OpenID4VP bertanda tangan keluar dan verifikasi kredensial pengujian Utopia masuk

Di sandbox, server Anda memerlukan dua hal:

  1. Minta kredensial penandatanganan yang dipercaya oleh sandbox Google Wallet:
    • Pihak Pengandalkan: Gunakan pasangan kunci pengujian sandbox Google yang telah dipercaya dan metadata contoh berikut. Anda tidak perlu mengirimkan formulir.
    • Registrar Verifikator: Tanda tangani permintaan dengan sertifikat entitas akhir yang diterbitkan oleh Root CA Sandbox Anda sendiri (setelah Google menambahkannya ke trust store sandbox), dan buat gw_rp_metadata_bytes Anda sendiri seperti yang dijelaskan dalam Langkah 3.A: Konfigurasi Profil Sertifikat CA & Metadata CBOR Anda.
  2. Trust anchor verifikasi respons: Pihak Pengguna dan Registrar Verifikator harus menambahkan sertifikat Sandbox Utopia ke trust store server mereka untuk memvalidasi respons dari ID pengujian sandbox.

Kunci & metadata pengujian Sandbox (Pihak Pengandalkan)

Untuk menguji permintaan bertanda tangan di lingkungan Sandbox tanpa mendaftarkan kunci produksi Anda sendiri, Anda dapat menggunakan key pair pengujian berikut. Kunci ini telah dipercaya sebelumnya di lingkungan Sandbox.

Petunjuk

  1. Gunakan kunci pribadi pengujian untuk menandatangani permintaan Anda (JWS).
  2. Sematkan sertifikat publik pengujian di header x5c permintaan Anda.
  3. Tetapkan client_id ke x509_hash sertifikat ini. Lihat Permintaan Bertanda Tangan untuk mengetahui detail tentang cara menghitung hash.
  4. Tetapkan gw_rp_metadata_bytes di client_metadata ke Metadata Pihak Pengandalkan pengujian berikut (Base64url CBOR).

Kunci Pribadi (PEM):

-----BEGIN PRIVATE KEY-----
MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQggRmIZIHQhXcYIeZ7
KSqS/WwJrsOetdI8ZE4HG0fd+3uhRANCAAR3GR6mdt/NOErO7+XtKqo7orgXWPMI
jEQDeE1PP4KWXTBAhuewPvF8uOiYakz5Jqd1kEFKfiecZEZRrLnC7U+e
-----END PRIVATE KEY-----

Metadata Pihak Pengandel (CBOR Base64url):

2BhY56Juc2NoZW1hX3ZlcnNpb25idjFnZGlzcGxheaNsZGlzcGxheV9uYW1leBhURVNUIFVTRSBPTkxZIFNhbmRib3ggUlBobG9nb191cml4YWh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pL3Byb2R1Y3Rsb2dvcy9nb29nbGVnL3Y2L3dlYi02NGRwL2xvZ29fZ29vZ2xlZ19jb2xvcl8xeF93ZWJfNjRkcC5wbmdycHJpdmFjeV9wb2xpY3lfdXJpeCNodHRwczovL3BvbGljaWVzLmdvb2dsZS5jb20vcHJpdmFjeQ

Metadata Pihak Pengandalkan (CBOR Dump):

#24# .bstr

{
  "schema_version": "v1",
  "display": {
    "display_name": "TEST USE ONLY Sandbox RP",
    "logo_uri": "https://fonts.gstatic.com/s/i/productlogos/googleg/v6/web-64dp/logo_googleg_color_1x_web_64dp.png",
    "privacy_policy_uri": "https://policies.google.com/privacy"
  }
}

Public Certificate (PEM):

Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number:
            97:99:aa:8b:09:93:5a:20:c1:8b:27:6c:e2:da:91:97:f2:b7:79:8d
        Signature Algorithm: ecdsa-with-SHA256
        Issuer: O=Google, OU=Wallet, CN=TEST USE ONLY Sandbox RP
        Validity
            Not Before: Jun  2 00:39:54 2026 GMT
            Not After : Jun  2 00:39:54 2027 GMT
        Subject: O=Google, OU=Wallet, CN=TEST USE ONLY Sandbox RP
        Subject Public Key Info:
            Public Key Algorithm: id-ecPublicKey
                Public-Key: (256 bit)
                pub:
                    04:77:19:1e:a6:76:df:cd:38:4a:ce:ef:e5:ed:2a:
                    aa:3b:a2:b8:17:58:f3:08:8c:44:03:78:4d:4f:3f:
                    82:96:5d:30:40:86:e7:b0:3e:f1:7c:b8:e8:98:6a:
                    4c:f9:26:a7:75:90:41:4a:7e:27:9c:64:46:51:ac:
                    b9:c2:ed:4f:9e
                ASN1 OID: prime256v1
                NIST CURVE: P-256
        X509v3 extensions:
            X509v3 Subject Key Identifier:
                29:CA:DA:07:9B:1F:68:FA:80:01:E1:68:E3:38:E8:5A:5C:28:B1:6A
            X509v3 Authority Key Identifier:
                29:CA:DA:07:9B:1F:68:FA:80:01:E1:68:E3:38:E8:5A:5C:28:B1:6A
            X509v3 Basic Constraints: critical
                CA:TRUE
            1.3.6.1.4.1.11129.10.1:
                . ...?..!H.Z\j...uT2. .u.:.O.... 0
    Signature Algorithm: ecdsa-with-SHA256
    Signature Value:
        30:46:02:21:00:91:94:fa:b9:85:82:92:bd:6a:98:44:73:ec:
        30:26:1f:92:01:8f:5b:06:d7:8f:21:34:dc:76:f0:89:3c:04:
        8c:02:21:00:ae:3e:9d:46:99:bd:63:7a:cc:59:30:66:48:d0:
        75:cc:c9:82:07:ca:39:f1:f0:df:2b:07:7b:32:b9:5b:3f:0a

-----BEGIN CERTIFICATE-----
MIICFDCCAbmgAwIBAgIVAJeZqosJk1ogwYsnbOLakZfyt3mNMAoGCCqGSM49BAMC
MEUxDzANBgNVBAoMBkdvb2dsZTEPMA0GA1UECwwGV2FsbGV0MSEwHwYDVQQDDBhU
RVNUIFVTRSBPTkxZIFNhbmRib3ggUlAwHhcNMjYwNjAyMDAzOTU0WhcNMjcwNjAy
MDAzOTU0WjBFMQ8wDQYDVQQKDAZHb29nbGUxDzANBgNVBAsMBldhbGxldDEhMB8G
A1UEAwwYVEVTVCBVU0UgT05MWSBTYW5kYm94IFJQMFkwEwYHKoZIzj0CAQYIKoZI
zj0DAQcDQgAEdxkepnbfzThKzu/l7SqqO6K4F1jzCIxEA3hNTz+Cll0wQIbnsD7x
fLjomGpM+SandZBBSn4nnGRGUay5wu1PnqOBhTCBgjAdBgNVHQ4EFgQUKcraB5sf
aPqAAeFo4zjoWlwosWowHwYDVR0jBBgwFoAUKcraB5sfaPqAAeFo4zjoWlwosWow
DwYDVR0TAQH/BAUwAwEB/zAvBgkrBgEEAdZ5CgEEIgQg5taUP70bIUiJWlxqkwYP
dVQyoyCvdaw62E8u4ASBIDAwCgYIKoZIzj0EAwIDSQAwRgIhAJGU+rmFgpK9aphE
c+wwJh+SAY9bBtePITTcdvCJPASMAiEArj6dRpm9Y3rMWTBmSNB1zMmCB8o58fDf
Kwd7MrlbPwo=
-----END CERTIFICATE-----

Root certificate IACA sandbox (semua partner)

ID pengujian yang disediakan di sandbox ditandatangani oleh Otoritas Penerbit Sandbox Google (Utopia). Untuk memvalidasi tanda tangan issuerAuth secara kriptografis pada respons yang ditampilkan dari tanda pengenal digital ID pengujian sandbox, tambahkan root certificate ini ke trust store pemverifikasi Anda (jangan percayai di lingkungan produksi):

Lingkungan Penerbit / Negara Jenis Kredensial Root Certificate IACA
Sandbox Utopia Tanda pengenal digital (com.google.wallet.idcard.1) Download sertifikat Utopia Sandbox

Untuk root certificate IACA produksi di seluruh negara bagian dan negara AS yang didukung, lihat Penerbit & Sertifikat IACA yang Didukung.

Waktu beroperasi sandbox

Lingkungan sandbox tidak memiliki SLA waktu beroperasi seperti lingkungan produksi kami. Jika Anda mengalami error yang Anda duga terkait dengan pemadaman layanan sandbox, tunggu satu hari kerja Amerika Serikat sebelum menghubungi kami. Pemadaman layanan biasanya akan teratasi dengan sendirinya dalam jangka waktu tersebut. Karena potensi periode nonaktif, jangan rancang proses rilis penting Anda agar bergantung pada lingkungan sandbox.

Langkah berikutnya

Langkah 2: Buat ID Pengujian →