- Permintaan HTTP
- Isi permintaan
- Isi respons
- RequestHeader
- Versi
- PaymentLookupCriteria
- ArnCriteria
- GoogleTransactionReferenceNumberCriteria
- RequestOriginator
- GetDisputeInquiryReportResultCode
- PurchaseReport
- CustomerAccount
- Pesanan
- Alamat
- Item
- Pajak
- Pembayaran
- Pengembalian dana
- PaymentCardDetails
- AuthResult
Dapatkan laporan yang memberikan informasi untuk memfasilitasi percakapan dukungan pelanggan dengan pengguna terkait potensi sengketa pembayaran.
Jika endpoint mengalami error saat memproses permintaan, respons dari endpoint ini akan berjenis
.ErrorResponse
Respons kueri ini mungkin kosong jika metode ini tidak menampilkan HTTP 200. Isi respons akan kosong jika
dengan deskripsi yang jelas dapat digunakan untuk membantu penyerang memahami ID akun integrator pembayaran dari integrator lain. Dalam situasi ini, jika kunci penandatanganan tidak cocok, ID integrator pembayaran tidak ditemukan, atau kunci enkripsi tidak diketahui, metode ini akan menampilkan HTTP 404 dengan isi kosong. Jika tanda tangan permintaan dapat diverifikasi, informasi tambahan terkait error tersebut akan ditampilkan dalam isi respons.ErrorResponse
Contoh permintaan terlihat seperti ini:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 1,
"revision": 0
},
"requestId": "HsKv5pvtQKTtz7rdcw1YqE",
"requestTimestamp": "1519996751331"
},
"paymentIntegratorAccountId": "InvisiCashUSA",
"paymentLookupCriteria": {
"googleTransactionReferenceNumberCriteria": {
"googleTransactionReferenceNumber": "714545417102363157911822",
"authorizationCode": "111111"
}
},
"existingGoogleClaimId": "138431383281",
"requestOriginator": {
"organizationId": "ISSUER_256",
"organizationDescription": "Community Bank of Some City",
"agentId": "982749"
}
}
Contoh respons terlihat seperti ini:
{
"responseHeader": {
"responseTimestamp": "1519996752221"
},
"result": "SUCCESS",
"googleClaimId": "138431383281",
"report": {
"customerAccount": {
"customerEmail": "example@gmail.com",
"customerName" : "Example Customer"
},
"order": {
"timestamp": "1517992525972",
"orderId": "SOP.8976-1234-1234-123456..99",
"currencyCode": "USD",
"subTotalAmount": "206990000",
"totalAmount": "212990000",
"shippingAddress": {
"name": "Example Customer",
"addressLine": ["123 Main St"],
"localityName": "Springfield",
"administrativeAreaName": "CO",
"postalCodeNumber": "80309",
"countryCode": "US"
},
"taxes": [
{
"description": "Colorado Sales Tax",
"amount": "6000000"
}
],
"items": [
{
"description": "Super cool gizmo",
"merchant": "HTC",
"googleProductName": "Google Store",
"quantity": "2",
"totalPrice": "198000000"
},
{
"description": "Gizmo charger",
"merchant": "HTC",
"googleProductName": "Google Store",
"quantity": "1",
"totalPrice": "8990000"
}
]
},
"payment": {
"billingAddress" : {
"name": "Example Customer",
"addressLine": ["123 Main St"],
"localityName": "Springfield",
"administrativeAreaName": "CO",
"postalCodeNumber": "80309",
"countryCode": "US"
},
"amount": "100000000",
"refunds": [
{
"amount": "9250000",
"initiatedTimestamp": "1518811245384"
}
],
"cardDetails": {
"authResult": "APPROVED"
}
}
}
}
Permintaan HTTP
POST https://vgw.googleapis.com/secure-serving/gsp/v1/getDisputeInquiryReport/:PIAID
Isi permintaan
Isi permintaan memuat data dengan struktur berikut:
Representasi JSON |
---|
{ "requestHeader": { object ( |
Kolom | |
---|---|
requestHeader |
WAJIB: Header umum untuk semua permintaan. |
paymentIntegratorAccountId |
WAJIB: ID akun integrator pembayaran yang mengidentifikasi pemanggil dan batasan kontraktual terkait untuk interaksi ini. |
paymentLookupCriteria |
WAJIB: Kriteria yang menunjukkan pembayaran yang harus dicari untuk pertanyaan ini. |
existingGoogleClaimId |
OPSIONAL: String yang dibuat Google yang ditampilkan oleh panggilan sebelumnya ke Jika hal ini tidak ada, ID klaim baru akan dibuat. Pemanggil dapat memberikan ID klaim yang diisi di sini atau dihasilkan akan ditampilkan di kolom Tidak valid untuk memberikan |
requestOriginator |
WAJIB: Informasi tentang organisasi atau subgrup organisasi yang berasal dari permintaan ini. |
Isi respons
Payload respons untuk metode getDisputeInquiryReport
.
Jika berhasil, isi respons memuat data dengan struktur berikut:
Representasi JSON |
---|
{ "responseHeader": { object ( |
Kolom | |
---|---|
responseHeader |
WAJIB: Header umum untuk semua respons. |
result |
WAJIB: Hasil panggilan ini. |
googleClaimId |
OPSIONAL: String yang dibuat Google yang mengidentifikasi sengketa pelanggan ini secara unik. (Ditampilkan jika dan hanya jika Jika |
report |
OPSIONAL: Detail yang relevan dengan sengketa pembayaran yang diidentifikasi dalam permintaan. (Ditampilkan jika dan hanya jika |
RequestHeader
Objek header yang ditentukan pada semua permintaan yang dikirim ke server.
Representasi JSON |
---|
{
"requestId": string,
"requestTimestamp": string,
"userLocale": string,
"protocolVersion": {
object ( |
Kolom | |
---|---|
requestId |
WAJIB: ID unik permintaan ini. String ini memiliki panjang maksimal 100 karakter, dan hanya berisi karakter "a-z", "A-Z", "0-9", ":", "-", dan "_". |
requestTimestamp |
WAJIB: Stempel waktu permintaan ini yang dinyatakan sebagai milidetik sejak epoch. Penerima harus memverifikasi bahwa stempel waktu ini adalah ± 60 detik dari 'sekarang'. Stempel waktu permintaan ini tidak idempoten setelah percobaan ulang. |
userLocale |
TIDAK DIGUNAKAN LAGI: Kode bahasa ISO 639-2 Alpha 3 dua atau tiga huruf secara opsional diikuti dengan tanda hubung dan kode negara ISO 3166-1 Alpha-2, misalnya 'pt', 'pt-BR', 'fil', atau 'fil-PH'. Gunakan ini untuk membantu mendorong kolom |
protocolVersion |
WAJIB: Versi permintaan ini. |
Versi
Objek versi yang merupakan bentuk terstruktur dari struktur versi a.b.c
klasik. Versi utama nomor yang sama dijamin kompatibel. Perhatikan bahwa minor dan revisi dapat sering berubah dan tanpa pemberitahuan. Integrator harus mendukung semua permintaan untuk versi utama yang sama.
Representasi JSON |
---|
{ "major": integer, "minor": integer, "revision": integer } |
Kolom | |
---|---|
major |
WAJIB: Versi utama. Hal ini ditandai untuk permintaan kompatibilitas dengan versi yang berbeda tidak dijamin kompatibel. |
minor |
WAJIB: Versi minor. Hal ini menunjukkan perbaikan bug yang signifikan. |
revision |
WAJIB: Versi minor. Hal ini menunjukkan perbaikan bug minor. |
PaymentLookupCriteria
Penampung untuk kriteria yang dapat secara unik mencari pembayaran. Satu (dan hanya satu) kolom anggota harus diisi.
Representasi JSON |
---|
{ // Union field |
Kolom | |
---|---|
Kolom union
|
|
arnCriteria |
OPSIONAL: Pencarian berdasarkan Nomor Referensi Akuisisi (ARN). |
googleTransactionReferenceNumberCriteria |
OPSIONAL: Pencarian berdasarkan Nomor Referensi Transaksi Google. |
ArnCriteria
Kriteria pencarian pembayaran berdasarkan Acquirer Reference Number (ARN).
Representasi JSON |
---|
{ "acquirerReferenceNumber": string, "authorizationCode": string } |
Kolom | |
---|---|
acquirerReferenceNumber |
WAJIB: Nomor Referensi Akuisisi (ARN) yang mengidentifikasi pembayaran secara unik. Harus terdiri dari 23 digit. |
authorizationCode |
WAJIB: Kode Otorisasi untuk transaksi. |
GoogleTransactionReferenceNumberCriteria
Kriteria pencarian pembayaran berdasarkan Nomor Referensi Transaksi yang dibuat Google.
Representasi JSON |
---|
{ "googleTransactionReferenceNumber": string, "authorizationCode": string } |
Kolom | |
---|---|
googleTransactionReferenceNumber |
WAJIB: Nomor Referensi Transaksi yang dibuat Google yang mengidentifikasi pembayaran secara unik. |
authorizationCode |
WAJIB: Kode Otorisasi untuk transaksi. |
RequestOriginator
Informasi tentang organisasi atau subgrup organisasi, dan secara opsional karyawan, tempat permintaan ini berasal. Hal ini memungkinkan Google mengidentifikasi masalah atau penyalahgunaan dan menerapkan kontrol pada tingkat yang lebih terperinci daripada paymentIntegratorAccountId
. Fungsi ini sangat berguna jika pemanggil adalah penyedia layanan perantara yang mendapatkan permintaan dari beberapa klien eksternal.
Representasi JSON |
---|
{ "organizationId": string, "organizationDescription": string, "agentId": string } |
Kolom | |
---|---|
organizationId |
WAJIB: ID perusahaan, organisasi, atau grup organisasi tempat permintaan ini berasal. Harus unik dalam |
organizationDescription |
WAJIB: Nama atau deskripsi organisasi yang dapat dibaca manusia dan dapat digunakan untuk memudahkan komunikasi antara karyawan Google dan integrator terkait organisasi tersebut. |
agentId |
OPSIONAL: ID unik untuk agen tertentu (karyawan) organisasi yang diidentifikasi oleh |
GetDisputeInquiryReportResultCode
Hasil panggilan metode getDisputeInquiryReport
.
Enum | |
---|---|
UNKNOWN_RESULT |
Jangan pernah menetapkan nilai default ini. |
SUCCESS |
Pembayaran ditemukan dan laporan diberikan. |
PAYMENT_NOT_FOUND |
Pembayaran yang diminta tidak ditemukan. |
PAYMENT_TOO_OLD |
Pembayaran yang diminta ditemukan, tetapi laporan tidak diberikan karena usia pembayaran. |
ORDER_CANNOT_BE_RETURNED |
Pembayaran yang diminta adalah bagian dari pesanan yang sudah ada, tetapi tidak dapat dikembalikan. Alasannya mencakup kasus pesanan dihapus atas permintaan pemiliknya. |
NO_ADDITIONAL_DETAILS |
Pembayaran yang diminta ditemukan, tetapi laporan tidak tersedia. |
PurchaseReport
Laporan yang berisi detail yang relevan terkait pembelian yang dikaitkan dengan pembayaran yang diminta.
Representasi JSON |
---|
{ "customerAccount": { object ( |
Kolom | |
---|---|
customerAccount |
WAJIB: Informasi mengenai pelanggan dan akunnya. |
order |
WAJIB: Informasi mengenai urutan pembayaran yang dilakukan. |
payment |
OPSIONAL: Informasi mengenai pembayaran. Catatan: Beberapa pembayaran dapat dilakukan untuk satu pesanan, tetapi hanya akan berisi info pembayaran yang diidentifikasi dalam permintaan asli. Tidak tersedia untuk semua jenis pesanan. |
CustomerAccount
Informasi tentang akun pelanggan
Representasi JSON |
---|
{ "customerEmail": string, "customerName": string } |
Kolom | |
---|---|
customerEmail |
WAJIB: Alamat email yang terkait dengan Akun Google pelanggan. |
customerName |
WAJIB: Nama pelanggan. |
Pesan
Informasi tentang pesanan.
Representasi JSON |
---|
{ "timestamp": string, "orderId": string, "currencyCode": string, "subTotalAmount": string, "totalAmount": string, "shippingAddress": { object ( |
Kolom | |
---|---|
timestamp |
OPSIONAL: Stempel waktu saat pesanan dibuat, dinyatakan sebagai milidetik sejak epoch. Tidak tersedia untuk semua jenis pesanan. |
orderId |
OPSIONAL: String yang secara unik mengidentifikasi pesanan ini. Tidak tersedia untuk semua jenis pesanan. |
currencyCode |
OPSIONAL: Kode mata uang 3 huruf ISO 4217 untuk semua jumlah dalam urutan ini. Tidak tersedia untuk semua jenis pesanan. |
subTotalAmount |
OPSIONAL: Jumlah total pesanan ini sebelum pajak, yang dinyatakan sebagai micros dari mata uang yang ditentukan dalam |
totalAmount |
OPSIONAL: Jumlah total pesanan ini termasuk pajak, yang dinyatakan sebagai micros dari mata uang yang ditentukan dalam |
shippingAddress |
OPSIONAL: Alamat pengiriman untuk item fisik dalam pesanan ini. |
items[] |
WAJIB: Daftar item yang merupakan bagian dari pesanan ini. |
taxes[] |
WAJIB: Daftar item yang merupakan bagian dari pesanan ini. Daftar ini mungkin kosong. |
Alamat
Struktur yang menyimpan informasi tentang alamat.
Representasi JSON |
---|
{ "name": string, "addressLine": [ string ], "localityName": string, "administrativeAreaName": string, "postalCodeNumber": string, "countryCode": string } |
Kolom | |
---|---|
name |
OPSIONAL: Nama lengkap pelanggan. |
addressLine[] |
OPSIONAL: Kolom ini berisi teks Alamat yang tidak terstruktur. |
localityName |
OPSIONAL: Ini adalah istilah yang sulit dipahami, tetapi umumnya mengacu pada bagian kota dari alamat. Di wilayah dunia dengan lokalitas yang tidak didefinisikan dengan baik atau tidak cocok dengan struktur ini (misalnya, Jepang dan China), biarkan localityName kosong dan gunakan addressLine. Contoh: US city, IT comune, UK post city. |
administrativeAreaName |
OPSIONAL: Subdivisi administratif tingkat teratas negara ini" Contoh: negara bagian AS, wilayah IT, provinsi CN, prefektur JP." |
postalCodeNumber |
OPSIONAL: Meskipun namanya, nilai postalCodeNumber sering kali berupa alfanumerik. Contoh: "94043", "SW1W", "SW1W 9TQ". |
countryCode |
OPSIONAL: Kode negara alamat pelanggan, diharapkan adalah ISO-3166-1 Alpha-2. |
Item
Informasi tentang item dalam pesanan.
Representasi JSON |
---|
{ "description": string, "merchant": string, "quantity": string, "totalPrice": string, "googleProductName": string } |
Kolom | |
---|---|
description |
OPSIONAL: Deskripsi item yang dibeli. Tidak tersedia untuk semua jenis pesanan. |
merchant |
WAJIB: Penjual, artis, atau pembuat item. |
quantity |
OPSIONAL: Jumlah yang diurutkan untuk item ini. Kolom ini akan dihilangkan jika kuantitas bilangan bulat tidak berlaku untuk produk (misalnya produk yang diukur mungkin memiliki kuantitas pecahan). |
totalPrice |
OPSIONAL: Harga total item ini, yang dinyatakan sebagai micros dari mata uang yang ditentukan dalam |
googleProductName |
WAJIB: Nama layanan produk Google untuk item tersebut. |
Pajak
Informasi tentang pajak yang berlaku untuk pesanan ini.
Representasi JSON |
---|
{ "description": string, "amount": string } |
Kolom | |
---|---|
description |
WAJIB: Deskripsi pajak. |
amount |
WAJIB: Jumlah pajak, yang direpresentasikan sebagai micros dari mata uang yang ditentukan dalam |
Pembayaran
Informasi tentang pembayaran.
Representasi JSON |
---|
{ "billingAddress": { object ( |
Kolom | |
---|---|
billingAddress |
WAJIB: Alamat penagihan untuk pembayaran ini. |
amount |
WAJIB: Jumlah pembayaran ini, yang dinyatakan sebagai micros dari mata uang yang ditentukan dalam |
refunds[] |
WAJIB: Daftar pengembalian dana yang dilakukan untuk pembayaran ini. Daftar ini mungkin kosong. |
Kolom union
|
|
cardDetails |
OPSIONAL: Detail pembayaran khusus untuk FoP kartu kredit & debit. |
Pengembalian Dana
Informasi tentang pengembalian dana yang dilakukan atas pembayaran.
Representasi JSON |
---|
{ "amount": string, "initiatedTimestamp": string } |
Kolom | |
---|---|
amount |
WAJIB: Jumlah yang dikembalikan, jumlah positif micros dari mata uang yang ditentukan dalam |
initiatedTimestamp |
WAJIB: Stempel waktu saat pengembalian dana dimulai, dinyatakan sebagai milidetik sejak epoch. |
PaymentCardDetails
Detail pembayaran khusus untuk kartu kredit & debit.
Representasi JSON |
---|
{
"authResult": enum ( |
Kolom | |
---|---|
authResult |
WAJIB: Hasil autentikasi pembayaran. |
AuthResult
Hasil autentikasi pembayaran.
Enum | |
---|---|
UNKNOWN_RESULT |
Jangan pernah menetapkan nilai default ini. |
APPROVED |
Otorisasi Disetujui. |
DENIED |
Otorisasi ditolak. |
NOT_ATTEMPTED |
Otorisasi tidak dicoba. |