Method: asynchronousCapture

Müşterinin hesabı ile entegratör arasında para transferi işleminin başlatılmasını tetikler. Entegratör isteği onaylamalı ve yakalamayı tamamlamak için yapılması gereken işlemleri (ör. kullanıcıdan PIN alma) gerçekleştirmelidir. Entegratör, CaptureResult Notification API'yi çağırarak yakalamanın nihai sonucunu Google'a bildirir.

Başlık içindeki requestId ve paymentIntegratorAccountId kombinasyonu kimlik anahtarıdır ve bu işlemi benzersiz şekilde tanımlar. Bu işlemdeki tüm mutasyonlar (geri ödemeler) captureRequestId alanındaki requestId değerini doldurur.

Uç nokta, isteği işlerken bir hatayla karşılaşırsa bu uç noktanın yanıt gövdesi ErrorResponse türünde olmalıdır.

Örnek bir istek şu şekilde görünür:


{
  "requestHeader": {
    "protocolVersion": {
      "major": 1,
      "minor": 1,
      "revision": 0
    },
    "requestId": "bWVyY2hhbnQgdHJhbnNhY3Rpb24gaWQ",
    "requestTimestamp": "1502220196077"
  },
  "paymentIntegratorAccountId": "InvisiCashIN_INR",
  "upiDetails": {
      "vpa": "foo@icici"
  },
  "transactionDescription": "Google - Music",
  "currencyCode": "INR",
  "amount": "728000000"
}

Örnek bir yanıt şöyle görünür:


{
  "responseHeader": {
    "responseTimestamp": "1481900013178"
  },
  "result": "ACKNOWLEDGED",
  "paymentIntegratorTransactionId": "aW50ZWdyYXRvciB0cmFuc2FjdGlvbiBpZA"
}

HTTP isteği

POST https://www.integratorhost.example.com/v1/asynchronousCapture

İstek içeriği

İstek gövdesi, aşağıdaki yapıyla birlikte veriler içerir:

JSON gösterimi
{
  "requestHeader": {
    object (RequestHeader)
  },
  "paymentIntegratorAccountId": string,
  "transactionDescription": string,
  "currencyCode": string,
  "amount": string,

  // Union field fopDetails can be only one of the following:
  "upiDetails": {
    object (UpiDetails)
  },
  "tokenizedInstrumentDetails": {
    object (TokenizedInstrumentDetails)
  }
  // End of list of possible types for union field fopDetails.
}
Alanlar
requestHeader

object (RequestHeader)

ZORUNLU: Tüm istekler için ortak başlık.

paymentIntegratorAccountId

string

ZORUNLU: Bu işlemle ilgili sözleşmeden doğan kısıtlamaları tanımlayan ödeme entegratörü hesap kimliğidir.

transactionDescription

string

ZORUNLU: Müşterinin ekstresine eklenebilecek işlem açıklamasıdır. requestHeader içinde bulunan userLocale'ye göre yerelleştirilmiş. Bu biçim önceden haber verilmeksizin değiştirilebilir ve hiçbir zaman ayrıştırılmamalıdır.

currencyCode

string

ZORUNLU: ISO 4217 3 harfli para birimi kodu

amount

string (Int64Value format)

ZORUNLU: Para biriminin mikro cinsinden satın alma tutarı.

fopDetails alanı.

fopDetails şunlardan yalnızca biri olabilir:

upiDetails

object (UpiDetails)

İSTEĞE BAĞLI: UPI araçlarına özel ödeme ayrıntıları.

tokenizedInstrumentDetails

object (TokenizedInstrumentDetails)

İSTEĞE BAĞLI: Token atanmış araçlara özel ödeme ayrıntıları.

Yanıt gövdesi

Yakalama yöntemi için yanıt nesnesi.

Başarılı olursa yanıt metni aşağıdaki yapıyla birlikte verileri içerir:

JSON gösterimi
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "paymentIntegratorTransactionId": string,
  "result": enum (AsynchronousCaptureResultCode)
}
Alanlar
responseHeader

object (ResponseHeader)

ZORUNLU: Tüm yanıtlar için ortak başlık.

paymentIntegratorTransactionId

string

ZORUNLU: Bu tanımlayıcı entegratöre özeldir ve entegratör tarafından oluşturulur. Bu, entegratörün bu işlemi bildiği tanımlayıcıdır.

Kolaylık sağlaması açısından bu tanımlayıcı havale ayrıntılarına eklenmiştir.

result

enum (AsynchronousCaptureResultCode)

ZORUNLU: Eşzamansız yakalama çağrısının sonucu.

UpiDetails

Fotoğrafın çekileceği UPI hesabıyla ilgili ayrıntılar.

JSON gösterimi
{
  "vpa": string
}
Alanlar
vpa

string

ZORUNLU: UPI protokolü kullanılarak para taşımak için kullanılan, kullanıcının Sanal Ödeme Adresi (VPA). Örneğin, foo@icici.

TokenizedInstrumentDetails

Fotoğrafın çekileceği hesapla ilgili ayrıntılar.

JSON gösterimi
{
  "googlePaymentToken": string
}
Alanlar
googlePaymentToken

string

ZORUNLU: Bu her iki şirketin birbirleri arasındaki satın alma işlemlerinde hesaplarını tanımlamak için kullanacağı jetondur.

AsynchronousCaptureResultCode

eşzamansızCapture için sonuç kodları.

Sıralamalar
UNKNOWN_RESULT Bu varsayılan değeri hiçbir zaman ayarlamayın.
ACKNOWLEDGED Yakalama istendi ve entegratör, yakalamanın başarılı mı yoksa reddedildi mi olduğunu belirlemek için ek adımlar gerçekleştirecek. Entegratör yakalama işleminin sonucunu öğrendikten sonra captureResultNotification API'sini çağırarak Google'a sonucu bildirir.
ACCOUNT_CLOSED

Kullanıcının entegratörde bulunan hesabı kapatıldı.

Bu değerin döndürülmesi, kullanıcının aracının Google tarafından kapatılmasına neden olur. Kullanıcı, ilişkilendirme akışını tekrar gerçekleştirerek yeni bir araç eklemeye zorlanır.

ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER

Kullanıcının entegratördeki hesabı kapatıldı ve hesabın ele geçirildiğinden şüpheleniliyor.

Bu değerin döndürülmesi, kullanıcının aracının Google tarafından kapatılmasına neden olur. Kullanıcı, ilişkilendirme akışını tekrar gerçekleştirerek yeni bir araç eklemeye zorlanır.

ACCOUNT_ON_HOLD Hesap beklemede.
ACCOUNT_CLOSED_FRAUD

Kullanıcının entegratördeki hesabı sahtekarlık nedeniyle kapatıldı.

Bu değerin döndürülmesi, kullanıcının aracının Google tarafından kapatılmasına neden olur. Kullanıcı, ilişkilendirme akışını tekrar gerçekleştirerek yeni bir araç eklemeye zorlanır.