- HTTP isteği
- İstek gövdesi
- Yanıt metni
- RequestHeader
- Sürüm
- OrderLookupCriteria
- ArnCriteria
- GoogleTransactionReferenceNumberCriteria
- RequestOriginator
- ResponseHeader
- GetOrderDetailsResultCode
- Sipariş
- Öğe
- Vergi
Google iş ortaklarına, son kullanıcılardan ödeme alınması için temel sağlayan bir talimat alın.
Uç nokta, isteği işlerken bir hatayla karşılaşırsa bu uç noktadan gelen yanıt türünde olur.ErrorResponse
Bu yöntem HTTP 200 döndürmezse bu sorguya verilen yanıtlar boş olabilir. Açık açıklamaya sahip bir , saldırganların diğer entegratörlerin ödeme entegrasyon hesap tanımlayıcılarını anlamasına yardımcı olmak için kullanılabileceği durumlarda yanıt gövdesi boştur. İmzalama anahtarının eşleşmediği, ödeme entegratörü tanımlayıcısının bulunamadığı veya şifreleme anahtarının bilinmediği durumlarda bu yöntem, gövdesi boş bir HTTP 404 döndürür. İstek imzası doğrulanabilirse yanıt gövdesinde hatayla ilgili ek bilgiler döndürülür.ErrorResponse
Örnek istek:
{
"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"
}
}
Örnek bir yanıt aşağıdaki gibidir:
{
"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"
}
]
}
}
HTTP isteği
POST https://vgw.googleapis.com/secure-serving/gsp/v1/getOrderDetails/:PIAID
İstek içeriği
İstek gövdesi, aşağıdaki yapıya sahip verileri içerir:
| JSON gösterimi |
|---|
{ "requestHeader": { object ( |
| Alanlar | |
|---|---|
requestHeader |
ZORUNLU: Tüm istekler için ortak başlık. |
paymentIntegratorAccountId |
ZORUNLU: Arayanı ve bu etkileşim için ilişkili sözleşme kısıtlamalarını tanımlayan ödeme entegratörü hesap tanımlayıcısı. |
orderLookupCriteria |
ZORUNLU: Aranacak sırayı belirten kriterler. |
requestOriginator |
İSTEĞE BAĞLI: Bu isteğin kaynağı olan kuruluş veya kuruluş alt grubuyla ilgili bilgiler (entegratör bizi başka bir kuruluş adına arıyorsa). |
Yanıt gövdesi
getOrderDetails yöntemi için yanıt yükü.
Başarılı olursa yanıt metni aşağıdaki yapıyla birlikte verileri içerir:
| JSON gösterimi |
|---|
{ "responseHeader": { object ( |
| Alanlar | |
|---|---|
responseHeader |
ZORUNLU: Tüm yanıtlar için ortak başlık. |
result |
ZORUNLU: Bu çağrının sonucu. |
order |
İSTEĞE BAĞLI: Ödemenin yapıldığı siparişle ilgili bilgiler. (Yalnızca |
RequestHeader
Sunucuya gönderilen tüm isteklerde tanımlanan başlık nesnesi.
| JSON gösterimi |
|---|
{
"requestId": string,
"requestTimestamp": string,
"userLocale": string,
"protocolVersion": {
object ( |
| Alanlar | |
|---|---|
requestId |
ZORUNLU: Bu isteğin benzersiz tanımlayıcısı. Bu dize, en fazla 100 karakter uzunluğunda olabilir ve yalnızca "a-z", "A-Z", "0-9", ":", "-" ve "_" karakterlerini içerir. |
requestTimestamp |
ZORUNLU: Bu isteğin, dönemden bu yana geçen milisaniye cinsinden temsil edilen zaman damgası. Alıcı, bu zaman damgasının ± 60 sn. "şimdi" olduğunu doğrulamalıdır. Bu istek zaman damgası, yeniden denemeler sonrasında belirleyici değil. |
userLocale |
KULLANIMDAN KALDIRILDI: İsteğe bağlı olarak kısa çizgi ve ISO 3166-1 Alpha-2 ülke kodu (ör. "pt", "pt-BR", "fil" veya "fil-PH") ile devam eden, iki veya üç harfli ISO 639-2 Alpha 3 dil kodu. Yanıttaki |
protocolVersion |
ZORUNLU: Bu isteğin sürümü. |
Sürüm
Klasik a.b.c sürüm yapısının yapılandırılmış bir biçimi olan sürüm nesnesi. Aynı sayının ana sürümlerinin uyumlu olacağı garanti edilir. Küçük çaplı ve düzeltmelerin sık sık ve önceden bildirimde bulunulmaksızın değişebileceğini unutmayın. Entegratör, aynı ana sürüm için tüm istekleri desteklemelidir.
| JSON gösterimi |
|---|
{ "major": integer, "minor": integer, "revision": integer } |
| Alanlar | |
|---|---|
major |
ZORUNLU: Ana sürüm. Bu, farklı sürümlere sahip uyumluluk istekleri için işaretlenmiştir ve bunların uyumlu olacağı garanti edilmez. |
minor |
ZORUNLU: Alt sürüm. Bu, önemli hata düzeltmelerini gösterir. |
revision |
ZORUNLU: Alt sürüm. Bu, küçük hata düzeltmelerini ifade eder. |
OrderLookupCriteria
Sipariş arama ölçütleri.
| JSON gösterimi |
|---|
{ // Union field |
| Alanlar | |
|---|---|
Birleştirme alanı
|
|
dcb3CorrelationId |
Google tarafından oluşturulan ve ödemeyi benzersiz şekilde tanımlayan DCB korelasyon kimliğine göre arama yapın. Bu değer, Google tarafından oluşturulmuş ve Auth araması sırasında operatör faturalandırması entegratörüne gönderilmiştir. |
arnCriteria |
Alıcı Referans Numarası'na (ARN) göre arama. |
googleTransactionReferenceNumberCriteria |
Google Transaction Referans Numarası'na göre arama yapın. |
ArnCriteria
Alıcı Referans Numarası'na (ARN) dayalı ödeme arama ölçütleri.
| JSON gösterimi |
|---|
{ "acquirerReferenceNumber": string, "authorizationCode": string } |
| Alanlar | |
|---|---|
acquirerReferenceNumber |
ZORUNLU: Ödemeyi benzersiz şekilde tanımlayan Alıcı Referans Numarası (ARN). 23 haneli olmalıdır. |
authorizationCode |
ZORUNLU: İşlem için Yetkilendirme Kodu. |
GoogleTransactionReferenceNumberCriteria
Google tarafından oluşturulan İşlem Referans Numarası'na dayalı ödeme arama ölçütleri.
| JSON gösterimi |
|---|
{ "googleTransactionReferenceNumber": string, "authorizationCode": string } |
| Alanlar | |
|---|---|
googleTransactionReferenceNumber |
ZORUNLU: Google tarafından oluşturulan ve ödemeyi benzersiz bir şekilde tanımlayan İşlem Referans Numarası'dır. |
authorizationCode |
ZORUNLU: İşlem için Yetkilendirme Kodu. |
RequestOriginator
Bu isteğin geldiği kuruluş veya kuruluş alt grubuyla ilgili bilgiler. Bu sayede Google, sorunları veya kötüye kullanımı tespit edip paymentIntegratorAccountId'ye kıyasla daha ayrıntılı denetimler uygulayabilir. Bu, özellikle arayan kişinin, birden fazla harici istemciden gelen istekleri sağlayan bir aracı servis sağlayıcı olması durumunda kullanışlıdır.
| JSON gösterimi |
|---|
{ "organizationId": string, "organizationDescription": string } |
| Alanlar | |
|---|---|
organizationId |
ZORUNLU: Bu isteğin geldiği şirket, kuruluş veya kuruluş grubunun tanımlayıcısı. Bu |
organizationDescription |
ZORUNLU: Kuruluşla ilgili olarak Google çalışanları ve entegrasyon uzmanı arasındaki iletişimi kolaylaştırmak için kullanılabilecek, kuruluşun kullanıcılar tarafından okunabilen adı veya açıklaması. |
ResponseHeader
Sunucudan gönderilen tüm yanıtlarda tanımlanan başlık nesnesi.
| JSON gösterimi |
|---|
{ "responseTimestamp": string } |
| Alanlar | |
|---|---|
responseTimestamp |
ZORUNLU: Bu yanıtın, dönemden bu yana geçen milisaniye cinsinden temsil edilen zaman damgasıdır. Alıcı, bu zaman damgasının ± 60 sn. "şimdi" olduğunu doğrulamalıdır. |
GetOrderDetailsResultCode
getOrderDetails yöntem çağrısının sonucu.
| Sıralamalar | |
|---|---|
GET_ORDER_DETAILS_RESULT_CODE_UNKNOWN |
Bu varsayılan değeri asla ayarlamayın. |
SUCCESS |
Sipariş bulundu ve iade edildi. |
ORDER_CANNOT_BE_RETURNED |
İstenen mevcut sipariş, ancak iade edilemez. Nedenler arasında, sahibinin talebi üzerine mahkeme emrinin kaldırıldığı durumlar yer alır. |
PAYMENT_TOO_OLD |
İstenen ödeme bulundu, ancak ödemenin tarihi nedeniyle sipariş ayrıntıları sağlanmadı. |
PAYMENT_NOT_FOUND |
İstenen ödeme bulunamadı. |
NO_ADDITIONAL_DETAILS |
İstenen ödeme bulundu, ancak sipariş ayrıntıları yok. |
Sipariş
Siparişle ilgili bilgiler.
| JSON gösterimi |
|---|
{ "timestamp": string, "orderId": string, "currencyCode": string, "subTotalAmount": string, "totalAmount": string, "items": [ { object ( |
| Alanlar | |
|---|---|
timestamp |
İSTEĞE BAĞLI: Siparişin verildiği zamanı gösteren zaman damgası. Zaman damgasından bu yana geçen milisaniye cinsinden belirtilir. Tüm sipariş türleri için kullanılamaz. |
orderId |
İSTEĞE BAĞLI: Bu siparişi benzersiz şekilde tanımlayan bir dize. Tüm sipariş türleri için kullanılamaz. |
currencyCode |
İSTEĞE BAĞLI: Bu siparişteki tüm tutarlar için ISO 4217 3 harfli para birimi kodu. Tüm sipariş türleri için kullanılamaz. |
subTotalAmount |
İSTEĞE BAĞLI: Bu siparişin vergi öncesi toplam tutarı. |
totalAmount |
İSTEĞE BAĞLI: Bu siparişin vergi dahil toplam tutarı. |
items[] |
ZORUNLU: Bu siparişin bir parçası olan öğelerin listesi. |
taxes[] |
İSTEĞE BAĞLI: Bu siparişin bir parçası olan vergilerin listesi. |
Öğe
Siparişteki bir öğeyle ilgili bilgiler.
| JSON gösterimi |
|---|
{ "description": string, "merchant": string, "quantity": string, "totalPrice": string, "googleProductName": string } |
| Alanlar | |
|---|---|
description |
İSTEĞE BAĞLI: Satın alınan öğenin açıklaması. Tüm sipariş türleri için kullanılamaz. |
merchant |
ZORUNLU: Öğenin satıcısı, sanatçısı veya üreticisi. |
quantity |
İSTEĞE BAĞLI: Bu öğenin sipariş edilen miktar. Tam sayı miktarları ürün için geçerli değilse bu alan atlanır (örneğin, sayaçlı ürünlerin kesirli miktarları olabilir). |
totalPrice |
İSTEĞE BAĞLI: Bu öğenin, |
googleProductName |
ZORUNLU: Öğeyle ilgili Google ürün hizmetinin adı. |
Vergi
Bu sipariş için geçerli olan vergiyle ilgili bilgiler.
| JSON gösterimi |
|---|
{ "description": string, "amount": string } |
| Alanlar | |
|---|---|
description |
ZORUNLU: Vergiyle ilgili açıklama. |
amount |
ZORUNLU: |