Method: remittanceStatementDetails

Zwraca szczegółowe informacje o transakcji zwrotu dotyczące wyciągu z przelewu.

Jest to interfejs API z podziałem na strony. Liczbę zdarzeń transakcji na stronie można określić za pomocą parametru numberOfEvents. Jeśli nie podasz tej wartości, na stronie zostanie zwróconych maksymalnie 1000 wydarzeń. Każde żądanie wysłane do tego interfejsu API zwróci wartość nextEventOffset wskazującą następne zdarzenie transakcji w wyciągu oraz wartość totalEvents określającą łączną liczbę transakcji w wyciągu. Jeśli bieżąca pobrana strona zawiera ostatnie transakcje z wyciągu, w odpowiedzi nie będzie znaku nextEventOffset.

Wartość statementId to requestId z elementu remittanceStatementNotificationRequest.

Jeśli podczas przetwarzania żądania w punkcie końcowym wystąpi błąd, odpowiedź z tego punktu końcowego będzie typu ErrorResponse.

Odpowiedzi na to zapytanie mogą być puste, jeśli ta metoda nie zwraca kodu HTTP 200. Treść odpowiedzi jest pusta w sytuacjach, w których ErrorResponse z jasnym opisem mogłoby pomóc osobie atakującej w poznaniu identyfikatora konta integratora płatności innych integratorów. W takich sytuacjach, gdy klucz podpisu 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 sygnaturę żądania można było zweryfikować, w treści odpowiedzi zostaną zwrócone dodatkowe informacje o błędzie.

Przykładowe żądanie:


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

WYMAGANY: wspólny nagłówek wszystkich żądań.

paymentIntegratorAccountId

string

WYMAGANE: identyfikator konta integratora płatności, który określa ograniczenia umowne dotyczące tego oświadczenia.

statementId

string

WYMAGANY: identyfikator żądania powiadomienia o wyciągu.

eventOffset

integer

OPCJONALNIE: zwraca zdarzenia zaczynające się od tego przesunięcia. Wartość tego parametru powinna być ustawiona na nextEventOffset, jeśli została zwrócona, lub pozostawiona bez zmian, jeśli jest to pierwsza prośba. Jeśli wartość eventOffset wynosi zero, zwracane będą wydarzenia począwszy od pierwszego. Jeśli ta wartość wynosi 2, zwracane będą wydarzenia począwszy od trzeciego. Jeśli nie podasz tej wartości, przyjmiemy, że eventOffset wynosi zero.

numberOfEvents

integer

OPCJONALNIE: liczba zdarzeń do wyświetlenia na stronie. Jeśli nie podasz żadnej wartości lub będzie ona większa niż 1000, zostanie użyta wartość 1000.

Treść odpowiedzi

Obiekt odpowiedzi dla metody szczegółów wyciągu z płatności.

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)

WYMAGANY: wspólny nagłówek dla wszystkich odpowiedzi.

remittanceStatementSummary

object (RemittanceStatementSummary)

WYMAGANE: podsumowanie tego wyciągu z przelewu.

eventOffset

integer

WYMAGANE: przesunięcie zdarzenia w 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 tego wyciągu.

totalEvents

integer

WYMAGANY: łączna liczba zdarzeń w tym zestawieniu.

totalWithholdingTaxes

string (Int64Value format)

WYMAGANE: suma wszystkich podatków potrąconych w tym oświadczeniu.

Ta wartość jest podana w częściach milionowych.

captureEvents[]

object (Event)

WYMAGANE: zestaw zdarzeń rejestrowania.

refundEvents[]

object (Event)

WYMAGANE: zestaw zdarzeń zwrotu środków.

reverseRefundEvents[]

object (Event)

OPCJONALNIE: zestaw zdarzeń zwrotu środków.

chargebackEvents[]

object (Event)

OPCJONALNIE: zestaw zdarzeń obciążenia zwrotnego.

reverseChargebackEvents[]

object (Event)

OPCJONALNIE: zestaw zdarzeń cofnięcia obciążenia zwrotnego.

adjustmentEvents[]

object (Event)

OPCJONALNIE: zbiór zdarzeń korekty. Wydarzenia korekty mogą być dodawane według uznania Google w celu wyrównania rozbieżności w rozliczeniach. Jeśli na przykład opłaty za zestaw wcześniejszych transakcji zostały obliczone w nieprawidłowy sposób, można użyć korekty, aby zrekompensować to integratorowi.

RemittanceStatementSummary

Obiekt podsumowujący dotyczący wyciągu z 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 (w strefie czasowej Ameryka/Los Angeles), kiedy zostało utworzone to oświadczenie.

billingPeriod

object (BillingPeriod)

WYMAGANE: okres rozliczeniowy, którego dotyczy ten wyciąg.

dateDue

string (int64 format)

OPCJONALNE: data płatności. Jest ona podawana w milisekundach od początku epoki. Jest to data (a więc zawsze zaczyna się od pierwszej milisekundy dnia w strefie czasowej rozliczeń).

Jest ona ustawiana, o ile wartość totalDueByIntegrator jest większa od 0.

currencyCode

string

WYMAGANY: trzyliterowy kod waluty w formacie ISO 4217.

totalDueByIntegrator

string (Int64Value format)

WYMAGANE: ta wartość jest podana w mikrach w walucie currencyCode. Ta wartość jest zawsze dodatnia.

remittanceInstructions

object (RemittanceInstructions)

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

BillingPeriod

Okres rozliczeniowy, którego dotyczy to zestawienie.

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

string (int64 format)

WYMAGANE: data rozpoczęcia okresu rozliczeniowego. Jest ona podawana w milisekundach od początku epoki. Jest to data (a więc zawsze zaczyna się od pierwszej milisekundy dnia w strefie czasowej rozliczeń).

Jest to pierwsza milisekunda dnia okresu rozliczeniowego, czyli 00:00:00.000.

endDate

string (int64 format)

WYMAGANE: data zakończenia okresu rozliczeniowego. Jest ona podawana w milisekundach od początku epoki.

Jest to ostatnia milisekunda ostatniego dnia okresu rozliczeniowego, czyli 23:59:59.999.

RemittanceInstructions

Struktura zawierająca informacje o tym, jak zapłacić za powiadomienie o przelewie.

Zapis JSON
{
  "memoLineId": string
}
Pola
memoLineId

string

WYMAGANE: identyfikator, który musi być umieszczony w wierszu notatki w przypadku płatności w celu identyfikacji przelewu.

Zdarzenie

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

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

string

WYMAGANY: w przypadku zdarzeń związanych z pobieraniem środków lub zwrotem będzie to requestId, które Google wysyła wraz z prośbą. W przypadku zdarzeń związanych ze zwrotem środków, obciążeniem zwrotnym i cofnięciem obciążenia zwrotnego będzie to requestId, które integrator płatności wysyła z powiadomieniem o tym zdarzeniu. W przypadku korekt będzie to unikalny identyfikator przypisany przez Google do zdarzenia korekty.

paymentIntegratorEventId

string

WYMAGANE: identyfikator zwrócony przez integratora płatności w przypadku tego zdarzenia. W przypadku przechwycenia jest to wartość paymentIntegratorTransactionId z odpowiedzi na wywołanie capture, a w przypadku zwrotu środków jest to wartość paymentIntegratorRefundId z odpowiedzi na wywołanie refund.

Długość tego pola jest zmienna, ponieważ odzwierciedla ono identyfikator zdarzenia podany przez integratora. Jeśli integrator nie podał wartości dla odpowiedniego zdarzenia, to pole będzie zawierać tę samą wartość co pole eventRequestId.

W przypadku zdarzeń zwrotu środków, obciążenia zwrotnego i cofnięcia obciążenia zwrotnego będzie to requestId, które integrator płatności wysłał z powiadomieniem o zdarzeniu.

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

eventCharge

string (Int64Value format)

WYMAGANE: w kodzie waluty zdefiniowanym przez wyciąg. Jeśli ta wartość jest ujemna, oznacza to wartość pieniężną przekazywaną z Google do integratora płatności. Jeśli jest to wartość dodatnia, oznacza to środki należne Google od integratora płatności.

Na przykład transakcje przechwytywania będą zawsze dodatnie, a transakcje zwrotu środków – zawsze ujemne. Zdarzenia związane ze zwrotem środków i cofnięciem obciążenia zwrotnego zawsze będą miały wartość dodatnią. Zdarzenia obciążenia zwrotnego będą zawsze miały wartość ujemną.

Ta wartość jest podana w częściach milionowych.

eventFee

string (Int64Value format)

WYMAGANE: w kodzie waluty zdefiniowanym przez wyciąg. Jeśli ta wartość jest ujemna, oznacza to wartość pieniężną przekazywaną z Google do integratora płatności. Jeśli jest to wartość dodatnia, oznacza to środki należne Google od integratora płatności.

Jeśli na przykład umowa stanowi, że Google zapłaci integratorowi płatności 1% transactionCharge i zwróci ten 1% w przypadku zwrotu środków za transakcję, opłata za pobranie środków będzie ujemna, a opłata za zwrot środków będzie dodatnia.

Ta wartość jest podana w częściach milionowych.

presentmentChargeAmount

string (Int64Value format)

OPCJONALNIE: kwota transakcji w walucie prezentacji (czyli walucie transakcji) przed wymianą walut. To pole ma takie samo oznaczenie znaku jak pole eventCharge.

Ta wartość jest podana w częściach milionowych.

presentmentCurrencyCode

string

OPCJONALNY: trzyliterowy kod waluty w formacie ISO 4217 określający walutę prezentacji (transakcji).

exchangeRate
(deprecated)

string (Int64Value format)

WYCOFANE: kurs wymiany użyty do przeliczenia kwoty prezentowanej na kwotę rozliczenia (faktury).

Ta wartość jest podana w mikropunktach bazowych (1 punkt bazowy = 0,0001 = 0,01%). Aby uzyskać kurs wymiany, podziel tę wartość przez 10^10.

nanoExchangeRate

string (Int64Value format)

OPCJONALNIE: kurs wymiany użyty do przeliczenia kwoty prezentowanej na kwotę rozliczenia (faktury) wyrażoną w nanopunktach bazowych.

Ta wartość jest podana w nanopunktach bazowych (1 punkt bazowy = 0,0001 = 0,01%). Aby uzyskać kurs wymiany, podziel tę wartość przez 10^13.

Wypełnione będą zarówno to pole, jak i pole exchangeRate. Są to równoważne kursy wymiany wyrażone z różną precyzją. W przyszłych wersjach parametr exchangeRate zostanie usunięty na rzecz parametru nanoExchangeRate.