- Permintaan HTTP
- Isi Permintaan
- Isi respons
- RequestHeader
- Versi
- OrderLookupCriteria
- ArnCriteria
- GoogleTransactionReferenceNumberCriteria
- RequestOriginator
- ResponseHeader
- GetOrderDetailsResultCode
- Pesanan
- Item
- Pajak
Mendapatkan pesanan yang memberikan dasar kepada partner Google untuk menagih pengguna akhir.
Jika endpoint mengalami error saat memproses permintaan, respons dari endpoint ini akan berjenis .ErrorResponse
Respons untuk kueri ini boleh kosong jika metode ini tidak menampilkan HTTP 200. Isi respons kosong dalam situasi saat dengan deskripsi yang jelas dapat digunakan untuk membantu penyerang memahami ID akun integrator pembayaran dari integrator lain. Dalam situasi ini, saat 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 dikirimkan dalam isi respons.ErrorResponse
Contoh permintaan terlihat seperti:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 1,
"revision": 0
},
"requestId": "HsKv5pvtQKTtz7rdcw1YqE",
"requestTimestamp": "1519996751331"
},
"paymentIntegratorAccountId": "IntegratorFakeAccount",
"orderLookupCriteria": {
"googleTransactionReferenceNumberCriteria": {
"googleTransactionReferenceNumber": "714545417102363157911822",
"authorizationCode": "111111"
}
},
"requestOriginator": {
"organizationId": "ISSUER_256",
"organizationDescription": "Community Bank of Some City"
}
}
Contoh respons akan terlihat seperti ini:
{
"responseHeader": {
"responseTimestamp": "1519996752221"
},
"result": "SUCCESS",
"order": {
"timestamp": "1517992525972",
"orderId": "UPG.DEFC.X6F4.MEOM.CDWF",
"currencyCode": "USD",
"subTotalAmount": "399000000",
"totalAmount": "459000000",
"taxes": [],
"items": [
{
"description": "YouTube TV membership",
"merchant": "fake org",
"googleProductName": "YouTube TV",
"quantity": "1",
"totalPrice": "399000000"
},
{
"description": "Showtime",
"merchant": "fake org",
"googleProductName": "YouTube TV",
"quantity": "1",
"totalPrice": "6000000"
}
]
}
}
Permintaan HTTP
POST https://vgw.googleapis.com/secure-serving/gsp/v1/getOrderDetails/: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. |
orderLookupCriteria |
WAJIB: Kriteria yang menunjukkan urutan yang akan dicari. |
requestOriginator |
OPSIONAL: Informasi tentang organisasi atau subgrup organisasi yang berasal dari permintaan ini (jika integrator memanggil kami atas nama organisasi lain). |
Isi respons
Payload respons untuk metode getOrderDetails.
Jika berhasil, isi respons memuat data dengan struktur berikut:
| Representasi JSON |
|---|
{ "responseHeader": { object ( |
| Kolom | |
|---|---|
responseHeader |
WAJIB: Header umum untuk semua respons. |
result |
WAJIB: Hasil dari panggilan ini. |
order |
OPSIONAL: Informasi mengenai urutan pembayaran yang dilakukan. (Tampilkan 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 diwakili sebagai milidetik sejak epoch. Penerima harus memverifikasi bahwa stempel waktu ini adalah ± 60 detik dari 'sekarang'. Stempel waktu permintaan ini tidak idempoten saat percobaan ulang. |
userLocale |
TIDAK DIGUNAKAN LAGI: Kode bahasa dua atau tiga huruf ISO 639-2 Alpha 3 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 dari nomor yang sama dijamin kompatibel. Perlu diketahui bahwa revisi kecil 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 akan kompatibel. |
minor |
WAJIB: Versi minor. Hal ini menunjukkan perbaikan bug yang signifikan. |
revision |
WAJIB: Versi minor. Ini menunjukkan perbaikan {i>bug<i} minor. |
OrderLookupCriteria
Kriteria pencarian pesanan.
| Representasi JSON |
|---|
{ // Union field |
| Kolom | |
|---|---|
Kolom union
|
|
dcb3CorrelationId |
Cari berdasarkan ID korelasi DCB yang dibuat Google yang mengidentifikasi pembayaran secara unik. Nilai ini dibuat oleh Google dan dikirim ke integrator pembayaran tagihan operator selama panggilan Auth. |
arnCriteria |
Cari berdasarkan Nomor Referensi Acquirer (ARN). |
googleTransactionReferenceNumberCriteria |
Cari berdasarkan Nomor Referensi Transaksi Google. |
ArnCriteria
Kriteria pencarian pembayaran berdasarkan Nomor Referensi Acquirer (ARN).
| Representasi JSON |
|---|
{ "acquirerReferenceNumber": string, "authorizationCode": string } |
| Kolom | |
|---|---|
acquirerReferenceNumber |
WAJIB: Nomor Referensi Acquirer (ARN) yang mengidentifikasi pembayaran secara unik. Panjangnya harus 23 digit. |
authorizationCode |
WAJIB: Kode Otorisasi untuk transaksi. |
GoogleTransactionReferenceNumberCriteria
Kriteria pencarian pembayaran berdasarkan Nomor Referensi Transaksi yang dibuat oleh 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 tempat permintaan ini berasal. Hal ini memungkinkan Google mengidentifikasi masalah atau penyalahgunaan dan menerapkan kontrol pada tingkat yang lebih terperinci daripada paymentIntegratorAccountId. Hal ini sangat berguna jika pemanggil adalah penyedia layanan perantara yang mendapatkan permintaan dari beberapa klien eksternal.
| Representasi JSON |
|---|
{ "organizationId": string, "organizationDescription": 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, yang dapat digunakan untuk memudahkan komunikasi antara karyawan Google dan integrator terkait organisasi tersebut. |
ResponseHeader
Objek header yang ditentukan pada semua respons yang dikirim dari server.
| Representasi JSON |
|---|
{ "responseTimestamp": string } |
| Kolom | |
|---|---|
responseTimestamp |
WAJIB: Stempel waktu respons ini direpresentasikan sebagai milidetik sejak epoch. Penerima harus memverifikasi bahwa stempel waktu ini adalah ± 60 detik dari 'sekarang'. |
GetOrderDetailsResultCode
Hasil dari panggilan metode getOrderDetails.
| Enum | |
|---|---|
GET_ORDER_DETAILS_RESULT_CODE_UNKNOWN |
Jangan pernah menetapkan nilai default ini! |
SUCCESS |
Pesanan ditemukan dan dikembalikan. |
ORDER_CANNOT_BE_RETURNED |
Pesanan yang diminta sudah ada, tetapi tidak dapat dikembalikan. Alasannya mencakup kasus saat pesanan dihapus atas permintaan pemiliknya. |
PAYMENT_TOO_OLD |
Pembayaran yang diminta ditemukan, tetapi detail pesanan tidak diberikan karena usia pembayaran. |
PAYMENT_NOT_FOUND |
Pembayaran yang diminta tidak ditemukan. |
NO_ADDITIONAL_DETAILS |
Pembayaran yang diminta ditemukan, tetapi detail pesanan tidak tersedia. |
Pesan
Informasi tentang pesanan.
| Representasi JSON |
|---|
{ "timestamp": string, "orderId": string, "currencyCode": string, "subTotalAmount": string, "totalAmount": string, "items": [ { object ( |
| Kolom | |
|---|---|
timestamp |
OPSIONAL: Stempel waktu saat pesanan dibuat, direpresentasikan sebagai milidetik sejak epoch. Hanya tersedia untuk jenis pesanan tertentu. |
orderId |
OPSIONAL: String yang mengidentifikasi urutan ini secara unik. Hanya tersedia untuk jenis pesanan tertentu. |
currencyCode |
OPSIONAL: Kode mata uang 3 huruf ISO 4217 untuk semua jumlah dalam pesanan ini. Hanya tersedia untuk jenis pesanan tertentu. |
subTotalAmount |
OPSIONAL: Jumlah total pesanan ini sebelum pajak, yang diwakili sebagai mikro mata uang yang ditentukan dalam |
totalAmount |
OPSIONAL: Jumlah total pesanan ini termasuk pajak, yang direpresentasikan sebagai mikro mata uang yang ditentukan dalam |
items[] |
WAJIB: Daftar item yang merupakan bagian dari pesanan ini. |
taxes[] |
OPSIONAL: Daftar pajak yang merupakan bagian dari pesanan ini. |
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. Hanya tersedia untuk jenis pesanan tertentu. |
merchant |
WAJIB: Penjual, artis, atau pembuat item. |
quantity |
OPSIONAL: Jumlah yang dipesan untuk item ini. Kolom ini akan dihapus jika kuantitas bilangan bulat tidak berlaku untuk produk tersebut (misalnya, produk yang diukur mungkin memiliki kuantitas pecahan). |
totalPrice |
OPSIONAL: Harga total item ini, yang dinyatakan sebagai mikro mata uang yang ditentukan dalam |
googleProductName |
WAJIB: Nama layanan produk Google untuk item. |
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 ditampilkan dalam mikro mata uang yang ditentukan dalam |