Method: remittanceStatementDetails

Bir havale ekstresiyle ilgili işlem ayrıntı bilgilerini döndürür.

Bu, sayfalara ayrılmış bir API'dir. Sayfa başına işlem etkinliği sayısı numberOfEvents ile belirtilebilir. Belirtilmezse sayfa başına en fazla 1.000 etkinlik döndürülür. Bu API'ye yapılan her istek, ifadedeki bir sonraki işlem etkinliğini gösteren bir nextEventOffset ve ifadedeki toplam işlem sayısını belirten totalEvents döndürür. Alınan geçerli sayfa ifadenin son işlemlerini içeriyorsa yanıtta nextEventOffset görünmez.

statementId değeri, remittanceStatementNotificationRequest içindeki requestId değeridir

Uç nokta, isteği işlerken bir hatayla karşılaşırsa bu uç noktadan gelen yanıt ErrorResponse türünde olur.

Bu yöntem HTTP 200 döndürmezse bu sorguya verilen yanıtlar boş olabilir. Açık açıklamaya sahip bir ErrorResponse, 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.

Örnek istek:


{
  "requestHeader": {
    "protocolVersion": {
      "major": 1,
      "minor": 0,
      "revision": 0
    },
    "requestId": "statement_detail_request_139932019",
    "requestTimestamp": "1502551332087"
  },
  "paymentIntegratorAccountId": "InvisiCashUSA_USD",
  "statementId": "0123434-statement-abc",
  "numberOfEvents": 4
}

Örnek bir yanıt aşağıdaki gibidir:


{
  "responseHeader": {
    "responseTimestamp": "1481900013178"
  },
  "eventOffset": 0,
  "nextEventOffset": 4,
  "totalEvents": 15,
  "remittanceStatementSummary": {
    "statementDate": "1502521200000",
    "billingPeriod": {
      "startDate": "1502434800000",
      "endDate": "1502434800000"
    },
    "dateDue": "1502348400000",
    "currencyCode": "INR",
    "totalDueByIntegrator": "1076000000",
    "remittanceInstructions": {
      "memoLineId": "stmt-1AB-pp0-invisi"
    }
  },
  "captureEvents": [
    {
      "eventRequestId": "bWVyY2hhbnQgdHJhbnNhY3Rpb24gaWQ",
      "paymentIntegratorEventId": "ioj32SOIjf23oijSDfoij",
      "eventCharge": "700000000",
      "eventFee": "-28000000"
    },
    {
      "eventRequestId": "Ggghvh78200PQ3Yrpb",
      "paymentIntegratorEventId": "iasdf23dSdfijSDfoij",
      "eventCharge": "800000000",
      "eventFee": "-32000000"
    }
  ],
  "refundEvents": [
    {
      "eventRequestId": "liUrreQY233839dfFFb24gaQM",
      "paymentIntegratorEventId": "asd3SDf3f3oijSDfoij",
      "eventCharge": "-200000000",
      "eventFee": "8000000"
    },
    {
      "eventRequestId": "IIghhhUrreQY233839II9qM==",
      "paymentIntegratorEventId": "DFjidoso12FSDFSDE",
      "eventCharge": "-150000000",
      "eventFee": "6000000"
    }
  ]
}

HTTP isteği

POST https://vgw.googleapis.com/secure-serving/gsp/v1/remittanceStatementDetails/:PIAID

İstek içeriği

İstek gövdesi, aşağıdaki yapıya sahip verileri içerir:

JSON gösterimi
{
  "requestHeader": {
    object (RequestHeader)
  },
  "paymentIntegratorAccountId": string,
  "statementId": string,
  "eventOffset": integer,
  "numberOfEvents": integer
}
Alanlar
requestHeader

object (RequestHeader)

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

paymentIntegratorAccountId

string

ZORUNLU: Bu ekstreyle ilgili sözleşmeden doğan kısıtlamaları tanımlayan ödeme entegratörü hesap tanımlayıcısıdır.

statementId

string

ZORUNLU: Ekstre bildiriminin istek kimliği.

eventOffset

integer

İSTEĞE BAĞLI: Bu zaman farkından başlayan etkinlikleri döndürür. Bir istek döndürüldüyse bu değer nextEventOffset olarak ayarlanmalıdır veya bu ilk istekse belirtilmeden bırakılır. eventOffset sıfırsa etkinlikler ilk etkinlikten başlayarak döndürülür. Bu iki ise etkinlikler üçüncü etkinlikten başlayarak döndürülür. Belirtilmemişse eventOffset değerinin sıfır olduğu varsayılır.

numberOfEvents

integer

İSTEĞE BAĞLI: Sayfa başına gösterilecek etkinlik sayısı. Belirtilmemişse veya 1.000'den büyükse bu değer 1.000 olacaktır.

Yanıt gövdesi

Havale beyanı ayrıntı 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)
  },
  "remittanceStatementSummary": {
    object (RemittanceStatementSummary)
  },
  "eventOffset": integer,
  "nextEventOffset": integer,
  "totalEvents": integer,
  "totalWithholdingTaxes": string,
  "captureEvents": [
    {
      object (Event)
    }
  ],
  "refundEvents": [
    {
      object (Event)
    }
  ],
  "reverseRefundEvents": [
    {
      object (Event)
    }
  ],
  "chargebackEvents": [
    {
      object (Event)
    }
  ],
  "reverseChargebackEvents": [
    {
      object (Event)
    }
  ],
  "adjustmentEvents": [
    {
      object (Event)
    }
  ]
}
Alanlar
responseHeader

object (ResponseHeader)

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

remittanceStatementSummary

object (RemittanceStatementSummary)

ZORUNLU: Bu havale ekstresinin özeti.

eventOffset

integer

ZORUNLU: Bu yanıtın etkinlik ofseti.

nextEventOffset

integer

İSTEĞE BAĞLI: Döndürülecek bir sonraki etkinliğin ofseti. Belirtilmemişse bu ifade için alınacak başka etkinlik yok.

totalEvents

integer

ZORUNLU: Bu ifadedeki toplam etkinlik sayısı.

totalWithholdingTaxes

string (Int64Value format)

ZORUNLU: Bu beyan için kesinti yapılan tüm vergilerin toplamı.

Bu değer mikro cinsindendir.

captureEvents[]

object (Event)

ZORUNLU: Yakalama etkinlikleri grubu.

refundEvents[]

object (Event)

ZORUNLU: Geri ödeme etkinlikleri grubu.

reverseRefundEvents[]

object (Event)

İSTEĞE BAĞLI: Geri ödeme etkinlikleri grubu.

chargebackEvents[]

object (Event)

İSTEĞE BAĞLI: Ters ibraz etkinlikleri grubu.

reverseChargebackEvents[]

object (Event)

İSTEĞE BAĞLI: Ters ters ibraz etkinlikleri grubu.

adjustmentEvents[]

object (Event)

İSTEĞE BAĞLI: Düzenleme etkinlikleri grubu. Faturalandırma tutarsızlıklarını telafi etmek için Google'ın takdirine bağlı olarak düzenleme etkinlikleri eklenebilir. Örneğin, önceki bir grup işlem için ücretler eksik hesaplanmışsa bir düzenleme bütünleyiciyi bütünleştirmek için bir düzenleme kullanılabilir.

RemittanceStatementSummary

Havale özetiyle ilgili özet nesnesi.

JSON gösterimi
{
  "statementDate": string,
  "billingPeriod": {
    object (BillingPeriod)
  },
  "dateDue": string,
  "currencyCode": string,
  "totalDueByIntegrator": string,
  "remittanceInstructions": {
    object (RemittanceInstructions)
  }
}
Alanlar
statementDate

string (int64 format)

ZORUNLU: Bu bildirimin oluşturulduğu tarih (Amerika/Los Angeles'ta).

billingPeriod

object (BillingPeriod)

ZORUNLU: Bu ekstrenin yer aldığı fatura dönemidir.

dateDue

string (int64 format)

İSTEĞE BAĞLI: Havalenin yapılması gereken tarih. Bu değer, epoch'tan itibaren milisaniye cinsinden temsil edilir. Bu bir tarihtir (ve bu nedenle faturalandırma saat dilimine göre her zaman günün ilk milisaniyesinde başlar).

Bu, totalDueByIntegrator değeri 0'dan büyük olduğu sürece ayarlanır.

currencyCode

string

ZORUNLU: ISO 4217 3 harfli para birimi kodu.

totalDueByIntegrator

string (Int64Value format)

ZORUNLU: Bu değer mikro cinsinden currencyCode para birimi cinsindendir. Bu değer her zaman pozitifdir.

remittanceInstructions

object (RemittanceInstructions)

ZORUNLU: Ödemenin nasıl yapılacağına ilişkin ayrıntılar

BillingPeriod

Bu ekstrenin fatura dönemi.

JSON gösterimi
{
  "startDate": string,
  "endDate": string
}
Alanlar
startDate

string (int64 format)

ZORUNLU: Fatura döneminin başlangıç tarihi. Bu değer, epoch'tan itibaren milisaniye cinsinden temsil edilir. Bu bir tarihtir (ve bu nedenle faturalandırma saat dilimine göre her zaman günün ilk milisaniyesinde başlar).

Bu değer, fatura dönemi gününün ilk milisaniyesi olan 00:00:00.000'dır.

endDate

string (int64 format)

ZORUNLU: Fatura döneminin bitiş tarihi. Bu değer, epoch'tan itibaren milisaniye cinsinden temsil edilir.

Bu değer, fatura döneminin son gününün son milisaniyesi olan 23:59:59.999'dur.

RemittanceInstructions

Bu havale bildiriminin nasıl ödeneceğine dair bilgilerin bulunduğu yapı.

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

string

ZORUNLU: Havale kimliği ödemesi için not satırına eklenmesi zorunlu olan tanımlayıcı.

Etkinlik

Havale beyanında yer alan tek bir etkinliği temsil eden yapı.

JSON gösterimi
{
  "eventRequestId": string,
  "paymentIntegratorEventId": string,
  "eventCharge": string,
  "eventFee": string,
  "presentmentChargeAmount": string,
  "presentmentCurrencyCode": string,
  "exchangeRate": string,
  "nanoExchangeRate": string
}
Alanlar
eventRequestId

string

ZORUNLU: Yakalama veya geri ödeme etkinlikleri için Google'ın istekle birlikte gönderdiği requestId bu olacaktır. Ters geri ödeme, ters ibraz ve ters ters ibraz etkinlikleri için bu, Ödeme Entegratörü'nün söz konusu etkinlikle ilgili bildirimle birlikte gönderdiği requestId olacaktır. Düzenlemeler için bu, Google tarafından düzenleme etkinliğine atanan benzersiz bir kimlik olacaktır.

paymentIntegratorEventId

string

ZORUNLU: Bu etkinlik için döndürülen ödeme entegrasyon uzmanını tanımlayın. Bu, bir yakalama için capture çağrısına verilen yanıttaki paymentIntegratorTransactionId; geri ödeme için ise bir refund çağrısına verilen yanıttaki paymentIntegratorRefundId.

Bu alanın uzunluğu değişkendir. Bir entegrasyon aracı olarak, bu etkinlik için sağladığınız kimlik burada gösterilir. Karşılık gelen etkinlik için entegratör tarafından bir değer sağlanmadıysa bu alan, eventRequestId alanıyla aynı değeri içerir.

Ters geri ödeme, ters ibraz ve ters ters ibraz etkinlikleri için, Ödeme Entegratörünün etkinlik bildirimiyle birlikte gönderdiği requestId olur.

Bu alanın uzunluğu ve biçimi, her kimliğin kaynak alanına bağlıdır. Uzunluk ve karakter kümesi gereksinimleriyle ilgili ayrıntılar için her kaynak alanının dokümanlarına bakın. Özellikle bu alanın, entegratör tarafından oluşturulan kimliklerden farklı maksimum uzunluk gereksinimlerine sahip olabilecek, Google tarafından oluşturulan kimlikler içerebileceğini unutmayın.

eventCharge

string (Int64Value format)

ZORUNLU: İfade tarafından tanımlanan para birimi kodudur. Negatifse bu değer, Google'dan ödeme entegratörüne geçişin parasal değerini gösterir. Bu pozitifse ödeme entegrasyon uzmanından Google ile iletişime geçmiştir.

Örneğin, yakalama işlemleri her zaman pozitif, geri ödeme işlemleri ise her zaman negatif olur. Ters geri ödeme ve ters ters ibraz etkinlikleri her zaman olumlu yönde olacaktır. Ters ibraz etkinlikleri her zaman olumsuz olur.

Bu değer mikro cinsindendir.

eventFee

string (Int64Value format)

ZORUNLU: İfade tarafından tanımlanan para birimi kodudur. Negatifse bu değer, Google'dan ödeme entegratörüne geçişin parasal değerini gösterir. Bu pozitifse ödeme entegrasyon uzmanından Google ile iletişime geçmiştir.

Örneğin, bir anlaşmada Google'ın ödeme entegrasyon sağlayıcısına transactionCharge tutarının% 1'ini ödeyeceğini ve işlemin geri ödenmesinden sonra bu% 1'lik tutarı geri alacağını belirten bir anlaşmada yakalama ücreti eksi, geri ödeme sonrasında ise iade ücreti pozitif olacaktır.

Bu değer mikro cinsindendir.

presentmentChargeAmount

string (Int64Value format)

İSTEĞE BAĞLI: Döviz kurundan önceki bugünkü (işlem) para birimi cinsinden işlem tutarı. Bu alanda da eventCharge alanıyla aynı işaret kuralı kullanılır.

Bu değer mikro cinsindendir.

presentmentCurrencyCode

string

İSTEĞE BAĞLI: Sunum (işlem) para birimini gösteren, ISO 4217 3 harfli para birimi kodu.

exchangeRate

string (Int64Value format)

İSTEĞE BAĞLI: Vadeli ödeme tutarını ödeme (fatura) tutarına dönüştürmek için kullanılan döviz kuru.

Bu değer, mikro temel noktalardır (1 temel nokta = 0,0001 = %0,01). Diğer bir deyişle, döviz kurunu elde etmek için bu alanı 10^10'a bölün.

nanoExchangeRate

string (Int64Value format)

İSTEĞE BAĞLI: Vadeli ödeme tutarını takas (fatura) tutarına dönüştürmek için kullanılan döviz kuru. Nano bazlı tutar olarak ifade edilir.

Bu değer, nano temel noktalardır (1 temel nokta = 0,0001 = %0,01). Diğer bir deyişle, döviz kurunu elde etmek için bu alanı 10^13'e bölün.

Hem bu alan hem de exchangeRate doldurulur. Bu döviz kurları, farklı kesinlik değerleriyle ifade edilen eşdeğer döviz kurlarıdır. Gelecekteki sürümlerde exchangeRate çıkarılarak nanoExchangeRate kullanılacaktır.