Method: remittanceStatementDetails

Zwraca informacje o szczegółach transakcji dotyczące wyciągu.

Jest to podzielony na strony interfejs API. Liczba zdarzeń transakcji na stronę można podać w polu numberOfEvents. Jeśli wartość nie zostanie podana, na stronie zostanie zwrócony maksymalnie 1000 zdarzeń. Każde żądanie do tego interfejsu API zwróci nextEventOffset wskazujący na następne zdarzenie transakcji w wyciągu, a także totalEvents określające łączną liczbę transakcji w wyciągu. Jeśli bieżąca pobrana strona zawiera ostatnie transakcje dotyczące wyciągu, w odpowiedzi nie będzie danych nextEventOffset.

Wartość statementId to requestId z remittanceStatementNotificationRequest

Jeśli podczas przetwarzania żądania punkt końcowy otrzyma błąd, odpowiedź z tego punktu końcowego będzie typu ErrorResponse.

Jeśli ta metoda nie zwraca kodu HTTP 200, odpowiedzi na to zapytanie mogą być puste. Treść odpowiedzi jest pusta w sytuacjach, gdy można użyć ErrorResponse z wyraźnym opisem, aby ułatwić atakującemu rozpoznanie identyfikatora konta integratora płatności innych integratorów. W takich przypadkach, jeśli klucz podpisywania nie pasuje, nie znaleziono identyfikatora integratora płatności lub klucz szyfrowania jest nieznany, ta metoda zwraca kod HTTP 404 z pustą treścią. Jeśli będzie można zweryfikować podpis w żądaniu, w treści odpowiedzi zostaną zwrócone dodatkowe informacje o błędzie.

Przykładowe żądanie wygląda tak:


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

Przykładowa odpowiedź:


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

Żądanie HTTP

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

Treść żądania

Treść żądania zawiera dane o następującej strukturze:

Zapis JSON
{
  "requestHeader": {
    object (RequestHeader)
  },
  "paymentIntegratorAccountId": string,
  "statementId": string,
  "eventOffset": integer,
  "numberOfEvents": integer
}
Pola
requestHeader

object (RequestHeader)

REQUIRED: wspólny nagłówek dla wszystkich żądań,

paymentIntegratorAccountId

string

WYMAGANE: to identyfikator konta integratora płatności, który określa ograniczenia umowne związane z tym wyciągiem.

statementId

string

WYMAGANE: identyfikator żądania powiadomienia dotyczącego wyciągu.

eventOffset

integer

OPCJONALNIE: zdarzenia zwracane od początku tego przesunięcia. Powinno to być wartość nextEventOffset, jeśli została zwrócona lub pozostawiona nieokreślona, jeśli jest to pierwsze żądanie. Jeśli eventOffset ma wartość 0, zwracane będą zdarzenia rozpoczynające się od pierwszego zdarzenia. Jeśli jest to 2 zdarzenia, będą one zwracane od trzeciego zdarzenia. Jeśli wartość nie zostanie określona, przyjmuje się, że wartość eventOffset wynosi zero.

numberOfEvents

integer

OPCJONALNIE: liczba zdarzeń na stronie. Jeśli wartość nie zostanie określona lub większa niż 1000, będzie to 1000.

Treść odpowiedzi

Obiekt odpowiedzi na metodę szczegółów przelewu.

W przypadku powodzenia treść żądania zawiera dane o następującej strukturze:

Zapis JSON
{
  "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)
    }
  ]
}
Pola
responseHeader

object (ResponseHeader)

WYMAGANE: wspólny nagłówek wszystkich odpowiedzi.

remittanceStatementSummary

object (RemittanceStatementSummary)

WYMAGANE: podsumowanie tej deklaracji.

eventOffset

integer

WYMAGANE: przesunięcie zdarzenia odpowiadające tej odpowiedzi.

nextEventOffset

integer

OPCJONALNIE: przesunięcie następnego zdarzenia do zwrócenia. Jeśli nie określono inaczej, nie ma więcej zdarzeń do pobrania dla tej instrukcji.

totalEvents

integer

WYMAGANE: łączna liczba zdarzeń w tym wyciągu.

totalWithholdingTaxes

string (Int64Value format)

WYMAGANE: suma wszystkich podatków potrąconych z tego wyciągu.

Ta wartość jest w mikro.

captureEvents[]

object (Event)

WYMAGANE: zestaw zdarzeń przechwytywania.

refundEvents[]

object (Event)

WYMAGANE: zbiór zdarzeń zwrotu środków.

reverseRefundEvents[]

object (Event)

OPCJONALNIE: zestaw zdarzeń odwrotnego zwrotu środków.

chargebackEvents[]

object (Event)

OPCJONALNIE: zbiór obciążeń zwrotnych.

reverseChargebackEvents[]

object (Event)

OPCJONALNIE: zestaw odwrotnych obciążeń zwrotnych.

adjustmentEvents[]

object (Event)

OPCJONALNIE: zestaw zdarzeń korekty. Google może według własnego uznania dodać zdarzenia wyrównania, aby uzgodnić rozbieżności w płatnościach. Na przykład jeśli opłaty zostały obliczone nieprawidłowo za zbiór wcześniejszych transakcji, można zastosować korektę, aby ustanowić integrator jako całość.

Podsumowanie płatności

Obiekt podsumowania płatności.

Zapis JSON
{
  "statementDate": string,
  "billingPeriod": {
    object (BillingPeriod)
  },
  "dateDue": string,
  "currencyCode": string,
  "totalDueByIntegrator": string,
  "remittanceInstructions": {
    object (RemittanceInstructions)
  }
}
Pola
statementDate

string (int64 format)

WYMAGANE: data utworzenia wyciągu (w Ameryce lub Los Angeles).

billingPeriod

object (BillingPeriod)

WYMAGANE: okres rozliczeniowy ujęty w tym zestawieniu.

dateDue

string (int64 format)

OPCJONALNIE: termin płatności. Ta wartość jest wyrażona w milisekundach od początku epoki. Jest to data (i tak zawsze zaczyna się w pierwszej milisekundie dnia w strefie czasowej rozliczeń).

Jest ustawiona, dopóki totalDueByIntegrator ma wartość większą niż 0.

currencyCode

string

WYMAGANE: trzyliterowy kod waluty w standardzie ISO 4217.

totalDueByIntegrator

string (Int64Value format)

WYMAGANE: wartość jest wyrażona w mikroach w walucie currencyCode. Ta wartość jest zawsze dodatnia.

remittanceInstructions

object (RemittanceInstructions)

WYMAGANE: szczegóły dotyczące płatności

Okres rozliczeniowy

Okres rozliczeniowy tego wyciągu.

Zapis JSON
{
  "startDate": string,
  "endDate": string
}
Pola
startDate

string (int64 format)

WYMAGANE: data rozpoczęcia okresu rozliczeniowego. Ta wartość jest wyrażona w milisekundach od początku epoki. Jest to data (i tak zawsze zaczyna się w pierwszej milisekundie dnia w strefie czasowej rozliczeń).

Jest to pierwszy milisekunda dnia okresu rozliczeniowego, 00:00:00.000

endDate

string (int64 format)

WYMAGANE: data zakończenia okresu rozliczeniowego. Ta wartość jest wyrażona w milisekundach od początku epoki.

Jest to ostatni milisekunda ostatniego okresu rozliczeniowego, 23:59:59,999.

Instrukcje dotyczące przelewu

Struktura przechowywania informacji o sposobie opłacania tego powiadomienia.

Zapis JSON
{
  "memoLineId": string
}
Pola
memoLineId

string

WYMAGANE: identyfikator, który jest wymagany w przypadku płatności na potrzeby identyfikacji płatności.

Zdarzenie

Struktura reprezentująca pojedyncze zdarzenie uwzględnione w wyciągu.

Zapis JSON
{
  "eventRequestId": string,
  "paymentIntegratorEventId": string,
  "eventCharge": string,
  "eventFee": string,
  "presentmentChargeAmount": string,
  "presentmentCurrencyCode": string,
  "exchangeRate": string,
  "nanoExchangeRate": string
}
Pola
eventRequestId

string

WYMAGANE: w przypadku zdarzeń przechwytywania lub zwrotu środków jest to plik requestId, który Google wysyła w odpowiedzi na żądanie. W przypadku zwrotu środków w ramach zwrotu środków, obciążenia zwrotnego i zwrotu środków będzie to plik requestId, który Integrator wysyła wraz z powiadomieniem o tym zdarzeniu. Jest to unikalny identyfikator przypisywany przez Google do zdarzenia korekty.

paymentIntegratorEventId

string

WYMAGANE: identyfikator integratora płatności zwrócony dla tego zdarzenia. W przypadku przechwytywania jest to paymentIntegratorTransactionId z odpowiedzi na wywołanie capture. W przypadku zwrotu jest to paymentIntegratorRefundId z odpowiedzi na wywołanie refund.

To pole może mieć różną długość, ponieważ tutaj wszystko jest podane w formie integratora. Jeśli integrator odpowiedniego zdarzenia nie podał wartości, to pole będzie zawierać tę samą wartość co pole eventRequestId.

W przypadku zwrotu środków w ramach zwrotu środków, obciążenia zwrotnego i zwrotu środków będzie to plik (requestId) wysłany przez integratora płatności z powiadomieniem o zdarzeniu.

Długość i format tego pola zależy od pola źródłowego każdego identyfikatora. Szczegółowe informacje o wymaganiach dotyczących długości i zbioru znaków znajdziesz w dokumentacji każdego pola źródłowego. Pamiętaj, że to pole może czasami zawierać identyfikatory wygenerowane przez Google, które mogą mieć inne wymagania niż maksymalne długość.

eventCharge

string (Int64Value format)

WYMAGANE: kod waluty zdefiniowany przez wyrażenie. Jeśli ta wartość jest ujemna, jest to wartość pieniężna przeniesiona z Google do integratora płatności. Jeśli kwota jest dodatnia, jest to płatność od integratora płatności należnej od Google.

Na przykład transakcje przechwytywania zawsze będą dodatnie, a zwroty środków zawsze będą ujemne. Zwroty środków w ramach odwrotnego zwrotu środków i odwrotnego obciążenia zwrotnego będą zawsze dodatnie. Zdarzenia obciążenia zwrotnego będą zawsze ujemne.

Ta wartość jest w mikro.

eventFee

string (Int64Value format)

WYMAGANE: kod waluty zdefiniowany przez wyrażenie. Jeśli ta wartość jest ujemna, jest to wartość pieniężna przeniesiona z Google do integratora płatności. Jeśli kwota jest dodatnia, jest to płatność od integratora płatności należnej od Google.

Jeśli na przykład zgodnie z umową firma Google zapłaci integratorowi płatności 1% kwoty transactionCharge, a o zwrot środków za tę transakcję 1%, opłata za przechwycenie będzie ujemna, a po zwrocie środków – zwrot dodatni.

Ta wartość jest w mikro.

presentmentChargeAmount

string (Int64Value format)

OPCJONALNIE: kwota transakcji w walucie przed transakcją walutową. To pole jest zgodne z konwencją znaku z pola eventCharge.

Ta wartość jest w mikro.

presentmentCurrencyCode

string

OPCJONALNY: trzyliterowy kod waluty w standardzie ISO 4217 wskazujący walutę, w której prezentowana jest transakcja.

exchangeRate

string (Int64Value format)

OPCJONALNIE: kurs wymiany użyty do przeliczania kwoty prezentacji na kwotę rozliczenia (faktury).

Ta wartość jest wyrażana w mikro (punktach bazowych = 0,0001 = 0,01%). Oznacza to, że aby uzyskać kurs wymiany, podziel to pole przez 10^10.

nanoExchangeRate

string (Int64Value format)

OPCJONALNIE: kurs wymiany użyty do przeliczania kwoty prezentacji na kwotę rozliczenia (faktury) wyrażony w punktach nanona podstawie.

Wartość jest podawana w nano punktach (1 punkt = 0,0001 = 0,01%). Oznacza to, że aby uzyskać kurs wymiany, podziel to pole przez 10^13.

Zarówno to pole, jak i ExchangeRate zostaną wypełnione. Są to równoważne kursy wymiany walut. W kolejnych wersjach parametr „ExchangeRate” zostanie usunięty i zastąpiony nanoExchangeRate.