Method: remittanceStatementNotification

Powiadamia integratora nowego wyciągu.

Powiadomienia o wyciągach pojawiają się za każdym razem, gdy powstaje nowe zestawienie reprezentujące pieniądze, które Google zapłaci integratorowi, lub pieniądze, które integrator zapłaci Google.

Jeśli integrator zwróci wynik, zakłada się, że zestawienie zostało zaakceptowane i zostanie ono opłacone.

requestId jest też identyfikatorem wyciągu (używanym w innym miejscu). Kombinacja tagu requestId w nagłówku i paymentIntegratorAccountId to klucz idempotentności, który jednoznacznie identyfikuje tę instrukcję.

Jeśli podczas przetwarzania żądania punkt końcowy napotka błąd, treść odpowiedzi tego punktu końcowego powinna być typu ErrorResponse.

Przykładowe żądanie wygląda tak:


{
  "requestHeader": {
    "protocolVersion": {
      "major": 1,
      "minor": 0,
      "revision": 0
    },
    "requestId": "0123434-statement-abc",
    "requestTimestamp": "1502632800000"
  },
  "paymentIntegratorAccountId": "InvisiCashUSA_USD",
  "remittanceStatementSummary": {
    "statementDate": "1502607600000",
    "billingPeriod": {
      "startDate": "1502434800000",
      "endDate": "1502521199000"
    },
    "dateDue": "1503212400000",
    "currencyCode": "INR",
    "totalDueByIntegrator": "1076000000",
    "remittanceInstructions": {
      "memoLineId": "stmt-1AB-pp0-invisi"
    }
  }
}

Przykładowa odpowiedź:


{
  "responseHeader": {
    "responseTimestamp": "1502632802000"
  },
  "paymentIntegratorStatementId": "334a",
  "result": "ACCEPTED"
}

Żądanie HTTP

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

Treść żądania

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

Zapis JSON
{
  "requestHeader": {
    object (RequestHeader)
  },
  "paymentIntegratorAccountId": string,
  "remittanceStatementSummary": {
    object (RemittanceStatementSummary)
  }
}
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.

remittanceStatementSummary

object (RemittanceStatementSummary)

WYMAGANE: podsumowanie tej deklaracji.

Treść odpowiedzi

Obiekt odpowiedzi na metodę powiadamiania o przelewach.

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

Zapis JSON
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "paymentIntegratorStatementId": string,
  "result": enum (StatementNotificationResultCode)
}
Pola
responseHeader

object (ResponseHeader)

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

paymentIntegratorStatementId

string

WYMAGANE: integrator rozróżnia te stwierdzenia. Został wygenerowany przez integratora.

result

enum (StatementNotificationResultCode)

WYMAGANE: wynik tego powiadomienia.

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.

Kod wyniku powiadomienia

Kody wyników z powiadomieniami o wyciągach.

Wartości w polu enum
UNKNOWN_RESULT Nie ustawiaj nigdy tej wartości domyślnej!
ACCEPTED Integrator zaakceptował to oświadczenie.