Referensi ini menjelaskan opsi objek respons Google Pay API yang akan digunakan dengan aplikasi Anda. Objek respons adalah objek yang ditampilkan oleh metode klien Google Pay API.
PaymentData
Ini adalah objek respons yang ditampilkan oleh Google setelah pembayar menyetujui pembayaran.
PaymentDataRequest.PaymentDataRequest.PaymentDataRequest.| Properti | Jenis | Selalu ada | Deskripsi |
|---|---|---|---|
apiVersion |
angka | Ya | Versi API utama. Nilai dalam respons cocok dengan nilai yang diberikan di |
apiVersionMinor |
angka | Ya | Versi API minor. Nilai dalam respons cocok dengan nilai yang diberikan di |
paymentMethodData |
PaymentMethodData | Ya | Data tentang metode pembayaran yang dipilih. |
email |
string | Tidak | Alamat email, jika emailRequired ditetapkan ke true
di
PaymentDataRequest.
Jika permintaan lain memiliki properti yang ditetapkan ke true, tidak akan ada efeknya. |
shippingAddress |
Alamat | Tidak | Alamat pengiriman, jika shippingAddressRequired ditetapkan
ke true di
|
Contoh
Contoh respons untuk Google Pay API versi 2.0 ini menunjukkan metode pembayaran CARD
yang dipilih di sheet pembayaran Google Pay. Token metode pembayaran telah dibuat untuk gateway example.
{ "apiVersion": 2, "apiVersionMinor": 0, "paymentMethodData": { "type": "CARD", "description": "Visa •••• 1234", "info": { "cardNetwork": "VISA", "cardDetails": "1234", "cardFundingSource": "CREDIT" }, "tokenizationData": { "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" } } }
PaymentMethodData
Objek ini menyediakan data untuk metode pembayaran yang dipilih.
| Properti | Jenis | Selalu ada | Deskripsi |
|---|---|---|---|
type |
string | Ya |
PaymentMethod
type dipilih di sheet pembayaran Google Pay.
|
description |
string | Ya | Pesan yang ditampilkan kepada pengguna untuk menjelaskan metode pembayaran yang mendanai transaksi ini. |
info |
objek | Ya | Nilai properti ini bergantung pada metode pembayaran yang ditampilkan type.
Untuk CARD, lihat CardInfo.
|
tokenizationData |
PaymentMethodTokenizationData | Tidak | Data tokenisasi pembayaran untuk metode pembayaran yang dipilih. |
Contoh
Contoh respons ini menunjukkan cara metode pembayaran CARD yang dipilih di sheet pembayaran Google
Pay menghasilkan token metode pembayaran untuk gateway example.
{ "type": "CARD", "description": "Visa •••• 1234", "info": { "cardNetwork": "VISA", "cardDetails": "1234" }, "tokenizationData": { "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" } }
CardInfo
Objek ini memberikan informasi tentang kartu pembayaran yang dipilih.
| Properti | Jenis | Selalu ada | Deskripsi |
|---|---|---|---|
cardDetails |
string | Ya | Detail tentang kartu. Nilai ini biasanya adalah empat digit terakhir nomor rekening pembayaran yang dipilih. |
assuranceDetails |
AssuranceDetailsSpecifications | Ya | Objek ini memberikan informasi tentang validasi yang dilakukan pada data pembayaran yang ditampilkan jika assuranceDetailsRequired ditetapkan ke true di
CardParameters.
|
cardNetwork |
string | Ya | Jaringan kartu pembayaran dari pembayaran yang dipilih.
Nilai yang ditampilkan cocok dengan format Nilai jaringan kartu ini tidak boleh ditampilkan kepada pembeli. Metode ini digunakan saat
detail kartu pembeli diperlukan. Misalnya, jika dukungan pelanggan memerlukan nilai ini untuk
mengidentifikasi kartu yang digunakan pembeli untuk transaksi mereka. Untuk deskripsi yang dapat dilihat pengguna, gunakan
properti |
billingAddress |
Alamat | Tidak | Alamat penagihan yang terkait dengan metode pembayaran yang diberikan, jika
billingAddressRequired ditetapkan ke true di
CardParameters. |
cardFundingSource |
string | Ya | Sumber pendanaan kartu untuk metode pembayaran yang dipilih.
|
Contoh
Contoh ini menunjukkan kartu di jaringan Visa.
{ "cardNetwork": "VISA", "cardDetails": "1234", "cardFundingSource": "CREDIT", "assuranceDetails": { "cardHolderAuthenticated": false, "accountVerified": true } }
AssuranceDetailsSpecifications
Objek ini memberikan informasi tentang validasi yang telah dilakukan pada kredensial pembayaran yang ditampilkan sehingga pemeriksaan risiko instrumen yang sesuai dapat diterapkan.
| Nama | Jenis | Deskripsi |
|---|---|---|
accountVerified |
boolean | Jika true, menunjukkan bahwa validasi kepemilikan Cardholder telah
dilakukan pada kredensial pembayaran yang ditampilkan. |
cardHolderAuthenticated |
boolean |
Jika Jika |
Anda dapat menerima dan memproses Objek respons meskipun Anda tidak menggunakan kolom assuranceDetails. Untuk menerima objek ini, sertakan
assuranceDetailsRequired: true di
CardParameters.
PaymentMethodTokenizationData
Objek ini menyediakan data tokenisasi untuk metode pembayaran.
| Properti | Jenis | Selalu ada | Deskripsi |
|---|---|---|---|
type |
string | Ya | Jenis tokenisasi yang akan diterapkan ke metode pembayaran yang dipilih.
Nilai ini cocok dengan type yang ditetapkan di
PaymentMethodTokenizationSpecification.
|
token |
string | Tidak | Token metode pembayaran yang dihasilkan.
|
Contoh
Berikut adalah contoh respons yang ditokenisasi yang disiapkan untuk gateway example.
{ "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" }
PaymentAuthorizationResult
Objek ini memberikan informasi tentang hasil otorisasi pembayaran.
| Properti | Jenis | Kebutuhan | Deskripsi |
|---|---|---|---|
transactionState |
String | Wajib | Status transaksi diselesaikan oleh salah satu hasil penjual berikut:
|
error |
PaymentDataError | Opsional | Error yang akan dirender di sheet pembayaran untuk pengguna saat pembayaran perlu dicoba lagi. |
Contoh
Contoh berikut menunjukkan pengembalian hasil pembayaran setelah pembayaran diproses:
{ "transactionState": "ERROR", "error": { "reason": "PAYMENT_DATA_INVALID", "message": "Cannot pay with payment credentials", "intent": "PAYMENT_AUTHORIZATION" } }
PaymentDataError
| Properti | Jenis | Kebutuhan | Deskripsi |
|---|---|---|---|
reason |
String | Wajib | Daftar alasan error yang telah ditetapkan:
|
message |
String | Wajib | Pesan error kepada pengguna yang ditampilkan dalam dialog. |
intent |
String | Wajib | Intent error.
|
Contoh
Contoh ini menunjukkan intent dan pesan error yang akan dirender di sheet pembayaran.
{ "error": { "reason": "SHIPPING_OPTION_INVALID", "message": "This shipping option is invalid for the given address", "intent": "SHIPPING_OPTION" } }
Alamat
Objek ini memberikan informasi tentang alamat pos yang diminta. Semua properti adalah string.
Alamat dapat ditampilkan dalam format MIN,FULL, dan FULL-ISO3166. Properti yang dimiliki setiap format dapat dilihat dalam tabel berikut.
| Properti | Format alamat | Deskripsi |
|---|---|---|
name |
MIN, FULL, FULL-ISO3166 |
Nama lengkap penerima. |
postalCode |
MIN, FULL, FULL-ISO3166 |
Kode pos. |
countryCode |
MIN, FULL, FULL-ISO3166 |
Kode negara ISO 3166-1 alpha-2. |
phoneNumber |
MIN, FULL, FULL-ISO3166 |
Nomor telepon, jika phoneNumberRequired ditetapkan ke
true di
PaymentDataRequest.
|
address1 |
FULL, FULL-ISO3166 |
Baris pertama alamat. |
address2 |
FULL, FULL-ISO3166 |
Baris kedua alamat. |
address3 |
FULL, FULL-ISO3166 |
Baris ketiga alamat. |
locality |
FULL, FULL-ISO3166 |
Kota, kota kecil, lingkungan, atau pinggiran kota. |
administrativeArea |
FULL, FULL-ISO3166 |
Subdivisi negara, seperti negara bagian atau provinsi. |
sortingCode |
FULL, FULL-ISO3166 |
Sort code. |
iso3166AdministrativeArea |
FULL-ISO3166 |
Kode wilayah administratif ISO 3166-2 yang sesuai dengan administrativeArea. |
Contoh
Berikut adalah contoh alamat berformat FULL-ISO3166 di Amerika Serikat dengan beberapa
baris data alamat.
{ "name": "John Doe", "address1": "c/o Google LLC", "address2": "1600 Amphitheatre Pkwy", "address3": "Building 40", "locality": "Mountain View", "administrativeArea": "CA", "countryCode": "US", "postalCode": "94043", "sortingCode": "" "iso3166AdministrativeArea": "US-CA" }
IntermediatePaymentData
Objek ini ditampilkan oleh input onPaymentDataChanged() Google Pay API saat
alamat pengiriman atau opsi pengiriman diubah di sheet pembayaran.
| Properti | Jenis | Kebutuhan | Deskripsi |
|---|---|---|---|
callbackTrigger |
String | Opsional | Menjelaskan alasan callback data pembayaran dipanggil.
|
shippingAddress |
IntermediateAddress | Opsional | Alamat yang dipilih di sheet pembayaran. |
shippingOptionData |
SelectionOptionData | Opsional | Opsi pengiriman yang dipilih di sheet pembayaran. |
paymentMethodData |
IntermediatePaymentMethodData | Opsional | Data metode pembayaran yang dipilih di sheet pembayaran. |
Contoh
Contoh ini menunjukkan payload perantara yang ditampilkan dari Google Pay API untuk perubahan alamat pengiriman.
{ "callbackTrigger": "SHIPPING_ADDRESS", "shippingAddress": { "administrativeArea": "NY", "countryCode": "US", "locality": "New York", "postalCode": "10011" }, "shippingOptionData": { "id": "shipping-001" } }
Contoh ini menunjukkan payload perantara yang ditampilkan saat metode pembayaran berubah.
{ "callbackTrigger": "PAYMENT_METHOD", "paymentMethodData": { "type": "CARD", "info": { "cardNetwork": "VISA", "cardFundingSource": "CREDIT", "billingAddress": { "administrativeArea": "NY", "countryCode": "US", "locality": "New York", "postalCode": "10011" } } } }
IntermediateAddress
Alamat perantara berisi alamat pengiriman yang disamarkan (tanpa baris alamat tingkat jalan atau nama penerima) untuk memungkinkan penghitungan pajak dan opsi pengiriman yang berlaku sebelum pengguna mengizinkan pembayaran.
| Properti | Jenis | Kebutuhan | Deskripsi |
|---|---|---|---|
administrativeArea |
String | Wajib | Subdivisi negara, seperti negara bagian atau provinsi. |
countryCode |
String | Wajib | Kode negara ISO 3166-1 alpha-2. |
locality |
String | Wajib | Kota, kota kecil, lingkungan, atau pinggiran kota. |
postalCode |
String | Wajib | Kode pos yang disamarkan berdasarkan negara. Untuk Kanada dan Inggris Raya, kolom ini hanya berisi tiga karakter pertama. Untuk Amerika Serikat, kolom ini berisi lima digit pertama. |
iso3166AdministrativeArea |
String | Opsional |
Kode wilayah administratif ISO 3166-2 yang sesuai dengan administrativeArea. Hanya ada jika
format alamat pengiriman adalah FULL-ISO3166.
|
Contoh
Contoh ini menunjukkan alamat yang dipilih di sheet pembayaran.
{ "administrativeArea": "NY", "countryCode": "US", "locality": "New York", "postalCode": "10011" "iso3166AdministrativeArea": "US-NY" }
SelectionOptionData
| Properti | Jenis | Kebutuhan | Deskripsi |
|---|---|---|---|
id |
String | Wajib | Kecocokan dengan SelectionOption.id |
Contoh
Contoh ini menunjukkan opsi pengiriman yang dipilih di sheet pembayaran.
{ "id": "shipping-001" }
IntermediatePaymentMethodData
Objek ini berisi informasi terbatas tentang metode pembayaran yang dipilih untuk callback developer.
| Properti | Jenis | Kebutuhan | Deskripsi |
|---|---|---|---|
type |
string | Wajib | Jenis metode pembayaran. Hanya CARD yang didukung untuk callback ini. |
info |
IntermediateCardInfo | Opsional | Informasi tentang kartu yang dipilih. Hanya ada jika type adalah CARD. |
IntermediateCardInfo
Objek ini berisi informasi terbatas tentang kartu yang dipilih, yang digunakan dalam callback developer.
| Properti | Jenis | Kebutuhan | Deskripsi |
|---|---|---|---|
billingAddress |
IntermediateAddress | Opsional | Alamat penagihan yang terkait dengan kartu. Hanya diisi jika alamat penagihan ditetapkan sebagai wajib diisi. |
cardNetwork |
string | Opsional | Jaringan kartu pembayaran dari kartu pembayaran yang dipilih. Nilai yang ditampilkan cocok dengan format Nilai jaringan kartu ini tidak boleh ditampilkan kepada pembeli. |
cardFundingSource |
string | Opsional | Sumber pendanaan kartu untuk kartu pembayaran yang dipilih.
|