JSON yanıt nesneleri

Bu referansta, uygulamanızla birlikte kullanabileceğiniz Google Pay API yanıt nesnesi seçenekleri açıklanmaktadır. Yanıt nesneleri, Google Pay API istemci yöntemleri tarafından döndürülen nesnelerdir.

PaymentData

Bu, ödeme yapan kişi ödemeyi onayladıktan sonra Google tarafından döndürülen bir yanıt nesnesidir.

PaymentDataRequest.PaymentDataRequest.PaymentDataRequest.
Mülk Tür Her zaman var Açıklama
apiVersion sayı Evet Ana API sürümü. Yanıttaki değer,
apiVersionMinor sayı Evet Alt API sürümü. Yanıttaki değer,
paymentMethodData PaymentMethodData Evet Seçilen ödeme yöntemiyle ilgili veriler.
email dize Hayır PaymentDataRequest'te PaymentDataRequest. Başka bir istekte özellik true olarak ayarlanmışsa bunun bir etkisi olmaz.
shippingAddress Adres Hayır

Örnek

Google Pay API 2.0 sürümü için bu örnek yanıt, Google Pay ödeme sayfasında seçilen bir CARD ödeme yöntemini gösterir. example ödeme ağ geçidi için bir ödeme yöntemi jetonu oluşturuldu.

{
  "apiVersion": 2,
  "apiVersionMinor": 0,
  "paymentMethodData": {
    "type": "CARD",
    "description": "Visa •••• 1234",
    "info": {
      "cardNetwork": "VISA",
      "cardDetails": "1234",
      "cardFundingSource": "CREDIT"
    },
    "tokenizationData": {
      "type": "PAYMENT_GATEWAY",
      "token": "examplePaymentMethodToken"
    }
  }
}

PaymentMethodData

Bu nesne, seçilen ödeme yöntemiyle ilgili verileri sağlar.

Mülk Tür Her zaman var Açıklama
type dize Evet PaymentMethod Google Pay ödeme sayfasında type seçildi.
description dize Evet

Bu işlemi finanse eden ödeme yöntemini açıklayan, kullanıcılara yönelik mesaj.

info nesne Evet Bu özelliğin değeri, döndürülen ödeme yöntemine type bağlıdır. CARD için CardInfo başlıklı makaleyi inceleyin.
tokenizationData PaymentMethodTokenizationData Hayır Seçilen ödeme yöntemi için ödeme jetonlaştırma verileri.

Örnek

Bu örnek yanıt, Google Pay ödeme sayfasında seçilen bir CARD ödeme yönteminin example ağ geçidi için nasıl ödeme yöntemi jetonu oluşturduğunu gösterir.

{
  "type": "CARD",
  "description": "Visa •••• 1234",
  "info": {
    "cardNetwork": "VISA",
    "cardDetails": "1234"
  },
  "tokenizationData": {
    "type": "PAYMENT_GATEWAY",
    "token": "examplePaymentMethodToken"
  }
}

CardInfo

Bu nesne, seçilen ödeme kartı hakkında bilgi sağlar.

Mülk Tür Her zaman var Açıklama
cardDetails dize Evet Kartla ilgili ayrıntılar. Bu değer genellikle seçilen ödeme hesabı numarasının son dört hanesidir.
assuranceDetails AssuranceDetailsSpecifications Evet Bu nesne, CardParameters.
cardNetwork dize Evet

Seçilen ödemenin ödeme kartı ağı. Döndürülen değerler, CardParameters'daki CardParameters.

Bu kart ağı değeri alıcıya gösterilmemelidir. Alıcının kart bilgileri gerektiğinde kullanılır. Örneğin, müşteri desteği bir alıcının işlemi için kullandığı kartı tanımlamak için bu değere ihtiyaç duyuyorsa. Kullanıcıya gösterilecek bir açıklama için PaymentMethodData'nın description özelliğini kullanın.

billingAddress Adres Hayır CardParameters.
cardFundingSource dize Evet

Seçilen ödeme yöntemi için kart fon kaynağı.

  • UNKNOWN
  • CREDIT
  • DEBIT
  • PREPAID

Örnek

Bu örnekte Visa ağındaki bir kart gösterilmektedir.

{
  "cardNetwork": "VISA",
  "cardDetails": "1234",
  "cardFundingSource": "CREDIT",
  "assuranceDetails": {
    "cardHolderAuthenticated": false,
    "accountVerified": true
  }
}

AssuranceDetailsSpecifications

Bu nesne, döndürülen ödeme kimlik bilgileri üzerinde hangi doğrulamanın gerçekleştirildiği hakkında bilgi sağlar. Böylece uygun araç risk kontrolleri uygulanabilir.

Ad Tür Açıklama
accountVerified boole true ise döndürülen ödeme kimlik bilgisi üzerinde Cardholder sahiplik doğrulamasının yapıldığını gösterir.
cardHolderAuthenticated boole

true ise döndürülen ödeme kimlik bilgisi üzerinde kimlik ve doğrulama (ID&V) işlemlerinin gerçekleştirildiğini gösterir.

false ise kart işlemlerinde olduğu gibi riske dayalı kimlik doğrulama yapılabilir. Bu riske dayalı kimlik doğrulama, geçerli olduğu durumlarda 3D Secure protokolüyle ek kimlik doğrulama adımını içerebilir ancak bununla sınırlı değildir.

assuranceDetails alanını kullanmasanız bile yanıt nesnesini alıp işleyebilirsiniz. Bu nesneyi almak için istek nesnesinin CardParameters.

PaymentMethodTokenizationData

Bu nesne, ödeme yöntemi için jeton oluşturma verileri sağlar.

Mülk Tür Her zaman var Açıklama
type dize Evet Seçilen ödeme yöntemine uygulanacak jetonlaştırma türü. Bu değer, PaymentMethodTokenizationSpecification içinde ayarlanan type ile eşleşir. PaymentMethodTokenizationSpecification.
token dize Hayır

Oluşturulan ödeme yöntemi jetonu.

  • PAYMENT_GATEWAY: Ödeme ağ geçidiniz tarafından verilen ücretlendirilebilir bir jeton içeren JSON nesnesi dizesi.
  • DIRECT: Şifre çözme için protocolVersion, signature ve signedMessage. Daha fazla bilgi için Ödeme yöntemi jeton yapısı bölümüne bakın.

Örnek

Bu, example ödeme ağ geçidi için hazırlanmış, token ile simgeleştirilmiş bir yanıt örneğidir.

{
  "type": "PAYMENT_GATEWAY",
  "token": "examplePaymentMethodToken"
}

PaymentAuthorizationResult

Bu nesne, ödeme yetkilendirme sonucu hakkında bilgi sağlar.

Mülk Tür Gereklilik Açıklama
transactionState Dize Zorunlu İşlemin durumu, aşağıdaki satıcı sonuçlarından biriyle çözülür:
  • SUCCESS
  • ERROR
error PaymentDataError İsteğe bağlı Ödemenin yeniden denenmesi gerektiğinde kullanıcı için ödeme sayfasında gösterilecek hata.

Örnek

Aşağıdaki örnekte, bir ödeme işlendikten sonra döndürülen ödeme sonucu gösterilmektedir:

{
  "transactionState": "ERROR",
  "error": {
    "reason": "PAYMENT_DATA_INVALID",
    "message": "Cannot pay with payment credentials",
    "intent": "PAYMENT_AUTHORIZATION"
  }
}

PaymentDataError

Mülk Tür Gereklilik Açıklama
reason Dize Zorunlu

Önceden tanımlanmış hata nedenlerinin listesi:

  • PAYMENT_DATA_INVALID
  • SHIPPING_ADDRESS_INVALID
  • SHIPPING_ADDRESS_UNSERVICEABLE
  • SHIPPING_OPTION_INVALID
  • OTHER_ERROR
message Dize Zorunlu Kullanıcıya bir iletişim kutusunda gösterilen hata mesajı.
intent Dize Zorunlu

Hatanın amacı.

  • PAYMENT_AUTHORIZATION
  • SHIPPING_ADDRESS
  • SHIPPING_OPTION

Örnek

Bu örnekte, ödeme sayfasında gösterilecek hata amacı ve mesajı gösterilmektedir.

{
  "error": {
    "reason": "SHIPPING_OPTION_INVALID",
    "message": "This shipping option is invalid for the given address",
    "intent": "SHIPPING_OPTION"
  }
}

Adres

Bu nesne, istenen posta adresi hakkında bilgi sağlar. Tüm özellikler dizedir.

Adresler MIN,FULL ve FULL-ISO3166 biçimlerinde döndürülebilir. Her biçime ait özellikler aşağıdaki tabloda görülebilir.

Mülk Adres biçimi Açıklama
name MIN, FULL ve FULL-ISO3166 Alıcının tam adı.
postalCode MIN, FULL ve FULL-ISO3166 Posta kodu.
countryCode MIN, FULL ve FULL-ISO3166 ISO 3166-1 alfa-2 ülke kodu.
phoneNumber MIN, FULL ve FULL-ISO3166 PaymentDataRequest'te PaymentDataRequest.
address1 FULL, FULL-ISO3166 Adresin ilk satırı.
address2 FULL, FULL-ISO3166 Adresin ikinci satırı.
address3 FULL, FULL-ISO3166 Adresin üçüncü satırı.
locality FULL, FULL-ISO3166 Şehir, kasaba, mahalle veya banliyö.
administrativeArea FULL, FULL-ISO3166 Eyalet veya il gibi bir ülke alt bölümü.
sortingCode FULL, FULL-ISO3166 Sıralama kodu.
iso3166AdministrativeArea FULL-ISO3166 administrativeArea'ya karşılık gelen ISO 3166-2 bağlı olduğu yer kodu.

Örnek

Bu, Amerika Birleşik Devletleri'nde birden fazla açık adres verisi satırı içeren örnek bir FULL-ISO3166 biçimli adrestir.

{
  "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

Bu nesne, ödeme sayfasında kargo adresi veya kargo seçenekleri değiştirildiğinde Google Pay API onPaymentDataChanged() girişi tarafından döndürülür.

Mülk Tür Gereklilik Açıklama
callbackTrigger Dize İsteğe bağlı

Ödeme verileri geri çağırma işlevinin çağrılma nedenini açıklar.

  • INITIALIZE
  • SHIPPING_ADDRESS
  • SHIPPING_OPTION
  • PAYMENT_METHOD
shippingAddress IntermediateAddress İsteğe bağlı Ödeme sayfasında seçilen adres.
shippingOptionData SelectionOptionData İsteğe bağlı Ödeme sayfasında seçilen kargo seçeneği.
paymentMethodData IntermediatePaymentMethodData İsteğe bağlı Ödeme sayfasında seçilen ödeme yöntemi verileri.

Örnekler

Bu örnekte, kargo adresi değişiklikleri için Google Pay API'den döndürülen ara yük gösterilmektedir.

{
  "callbackTrigger": "SHIPPING_ADDRESS",
  "shippingAddress": {
    "administrativeArea": "NY",
    "countryCode": "US",
    "locality": "New York",
    "postalCode": "10011"
  },
  "shippingOptionData": {
    "id": "shipping-001"
  }
}

Bu örnekte, ödeme yöntemi değiştiğinde döndürülen ara yük gösterilmektedir.

{
  "callbackTrigger": "PAYMENT_METHOD",
  "paymentMethodData": {
    "type": "CARD",
    "info": {
      "cardNetwork": "VISA",
      "cardFundingSource": "CREDIT",
      "billingAddress": {
        "administrativeArea": "NY",
        "countryCode": "US",
        "locality": "New York",
        "postalCode": "10011"
      }
    }
  }
}

IntermediateAddress

Ara adres, kullanıcı ödemeyi onaylamadan önce geçerli vergi ve kargo seçeneklerinin hesaplanabilmesi için düzenlenmiş bir kargo adresi (sokak düzeyinde adres satırları veya alıcı adları olmadan) içerir.

Mülk Tür Gereklilik Açıklama
administrativeArea Dize Zorunlu Eyalet veya il gibi bir ülke alt bölümü.
countryCode Dize Zorunlu ISO 3166-1 alfa-2 ülke kodu.
locality Dize Zorunlu Şehir, kasaba, mahalle veya banliyö.
postalCode Dize Zorunlu Ülkeye göre sansürlenmiş posta kodu. Kanada ve Birleşik Krallık için bu yalnızca ilk üç karakteri içerir. ABD için bu, ilk beş haneyi içerir.
iso3166AdministrativeArea Dize İsteğe bağlı administrativeArea'ya karşılık gelen ISO 3166-2 bağlı olduğu yer kodu. Yalnızca kargo adresi biçimi FULL-ISO3166 ise gösterilir.

Örnek

Bu örnekte, ödeme sayfasında seçilen adres gösterilmektedir.

{
  "administrativeArea": "NY",
  "countryCode": "US",
  "locality": "New York",
  "postalCode": "10011"
  "iso3166AdministrativeArea": "US-NY"
}

SelectionOptionData

Mülk Tür Gereklilik Açıklama
id Dize Zorunlu SelectionOption.id ile eşleşiyor

Örnek

Bu örnekte, ödeme sayfasında seçilen kargo seçeneği gösterilmektedir.

{
  "id": "shipping-001"
}

IntermediatePaymentMethodData

Bu nesne, geliştirici geri çağırmaları için seçilen ödeme yöntemi hakkında sınırlı bilgi içerir.

Mülk Tür Gereklilik Açıklama
type dize Zorunlu Ödeme yönteminin türü. Bu geri çağırma için yalnızca CARD desteklenir.
info IntermediateCardInfo İsteğe bağlı Seçili kartla ilgili bilgiler. Yalnızca type, CARD ise gösterilir.

IntermediateCardInfo

Bu nesne, geliştirici geri çağırmalarında kullanılan seçili kart hakkında sınırlı bilgi içerir.

Mülk Tür Gereklilik Açıklama
billingAddress IntermediateAddress İsteğe bağlı Kartla ilişkili fatura adresi. Yalnızca fatura adresi zorunlu olarak ayarlandığında doldurulur.
cardNetwork dize İsteğe bağlı

Seçilen ödeme kartının ödeme kartı ağı. Döndürülen değerler, CardParameters.

Bu kart ağı değeri alıcıya gösterilmemelidir.

cardFundingSource dize İsteğe bağlı

Seçilen ödeme kartının fon kaynağı.

  • UNKNOWN
  • CREDIT
  • DEBIT
  • PREPAID