Method: remittanceStatementNotification

Уведомляет интегратора о новом отчете о денежном переводе.

Уведомления о заявлениях появляются каждый раз, когда создается новое заявление, в котором указаны деньги, которые Google заплатит интегратору, или деньги, которые интегратор должен Google.

Если интегратор возвращает успех, то предполагается, что выписка принята и будет оплачена.

requestId также является идентификатором оператора (используется в другом месте). Комбинация requestId в заголовке и paymentIntegratorAccountId является ключом идемпотентности и уникально идентифицирует этот оператор.

Если конечная точка обнаруживает ошибку при обработке запроса, тело ответа от этой конечной точки должно иметь тип ErrorResponse .

Пример запроса выглядит так:


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

Пример ответа выглядит так:


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

HTTP-запрос

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

Тело запроса

Тело запроса содержит данные следующей структуры:

JSON-представление
{
  "requestHeader": {
    object (RequestHeader)
  },
  "paymentIntegratorAccountId": string,
  "remittanceStatementSummary": {
    object (RemittanceStatementSummary)
  }
}
Поля
requestHeader

object ( RequestHeader )

ОБЯЗАТЕЛЬНО : общий заголовок для всех запросов.

paymentIntegratorAccountId

string

ОБЯЗАТЕЛЬНО : это идентификатор учетной записи платежного интегратора, который определяет договорные ограничения, связанные с этим заявлением.

remittanceStatementSummary

object ( RemittanceStatementSummary )

ОБЯЗАТЕЛЬНО : Краткое изложение данного заявления о денежном переводе.

Тело ответа

Объект ответа для метода уведомления о выписке о денежном переводе.

В случае успеха тело ответа содержит данные следующей структуры:

JSON-представление
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "paymentIntegratorStatementId": string,
  "result": enum (StatementNotificationResultCode)
}
Поля
responseHeader

object ( ResponseHeader )

ОБЯЗАТЕЛЬНО : общий заголовок для всех ответов.

paymentIntegratorStatementId

string

ОБЯЗАТЕЛЬНО : Идентификатор, под которым интегратор знает это утверждение. Это сгенерировано интегратором.

result

enum ( StatementNotificationResultCode )

ОБЯЗАТЕЛЬНО : результат этого уведомления.

Заявление о денежном переводеСводка

Сводный объект о выписке о денежном переводе.

JSON-представление
{
  "statementDate": string,
  "billingPeriod": {
    object (BillingPeriod)
  },
  "dateDue": string,
  "currencyCode": string,
  "totalDueByIntegrator": string,
  "remittanceInstructions": {
    object (RemittanceInstructions)
  }
}
Поля
statementDate

string ( int64 format)

ОБЯЗАТЕЛЬНО : Дата (в Америке/Лос-Анджелесе) создания этого заявления.

billingPeriod

object ( BillingPeriod )

ОБЯЗАТЕЛЬНО : расчетный период, охватываемый данным заявлением.

dateDue

string ( int64 format)

НЕОБЯЗАТЕЛЬНО : дата, когда должен быть произведен денежный перевод. Это представлено в миллисекундах от эпохи. Это дата (и поэтому она всегда начинается с первой миллисекунды дня в часовом поясе для выставления счетов).

Это значение устанавливается до тех пор, пока значение totalDueByIntegrator больше 0.

currencyCode

string

ТРЕБУЕТСЯ : трехбуквенный код валюты ISO 4217.

totalDueByIntegrator

string ( Int64Value format)

ОБЯЗАТЕЛЬНО : это значение указывается в микромах в валюте currencyCode . Это значение всегда положительное.

remittanceInstructions

object ( RemittanceInstructions )

ОБЯЗАТЕЛЬНО : Подробная информация о том, как перевести платеж.

Биллинговый период

Расчетный период настоящего заявления.

JSON-представление
{
  "startDate": string,
  "endDate": string
}
Поля
startDate

string ( int64 format)

ОБЯЗАТЕЛЬНО : дата начала расчетного периода. Это представлено в миллисекундах от эпохи. Это дата (и поэтому она всегда начинается с первой миллисекунды дня в часовом поясе для выставления счетов).

Это первая миллисекунда дня расчетного периода, 00:00:00.000.

endDate

string ( int64 format)

ОБЯЗАТЕЛЬНО : дата окончания расчетного периода. Это представлено в миллисекундах от эпохи.

Это последняя миллисекунда последнего дня расчетного периода, 23:59:59,999.

Инструкции по денежному переводу

Структура, содержащая информацию о том, как оплатить это уведомление о денежном переводе.

JSON-представление
{
  "memoLineId": string
}
Поля
memoLineId

string

ОБЯЗАТЕЛЬНО : Идентификатор, который обязательно должен быть указан в строке памятки для платежа для идентификации денежного перевода.

StatementNotificationResultCode

Коды результатов для уведомления о выписке.

Перечисления
UNKNOWN_RESULT Никогда не устанавливайте это значение по умолчанию!
ACCEPTED Интегратор принял это заявление.