Method: remittanceStatementDetails

Возвращает подробную информацию о транзакции, указанную в выписке по платежу.

Это API с постраничной навигацией. Количество событий транзакций на странице можно указать с помощью numberOfEvents . Если параметр не указан, на странице будет возвращено максимум 1000 событий. Каждый запрос к этому API вернет значение nextEventOffset , указывающее на следующее событие транзакции в выписке, а также totalEvents указывающее общее количество транзакций в выписке. Если текущая полученная страница содержит последние транзакции выписки, nextEventOffset в ответе отсутствовать.

Значение statementId — это requestId из запроса remittanceStatementNotificationRequest

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

Ответы на этот запрос могут быть пустыми, если этот метод не возвращает HTTP 200. Тело ответа пустое в ситуациях, когда ErrorResponse с четким описанием может помочь злоумышленнику понять идентификатор учетной записи платежного интегратора других интеграторов. В таких ситуациях, когда ключ подписи не совпадает, идентификатор платежного интегратора не найден или ключ шифрования неизвестен, этот метод вернет HTTP 404 с пустым телом. Если подпись запроса может быть проверена, в теле ответа будет возвращена дополнительная информация об ошибке.

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


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

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


{
  "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-запрос

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

Текст запроса

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

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

object ( RequestHeader )

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

paymentIntegratorAccountId

string

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

statementId

string

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

eventOffset

integer

НЕОБЯЗАТЕЛЬНО : Возвращать события, начиная с этого смещения. Если было возвращено одно событие, следует установить значение nextEventOffset , а если это первый запрос, оставить его неуказанным. Если eventOffset равен нулю, события будут возвращаться, начиная с первого события. Если значение равно двум, события будут возвращаться, начиная с третьего события. Если значение не указано, eventOffset будет считаться равным нулю.

numberOfEvents

integer

НЕОБЯЗАТЕЛЬНО : Количество событий для отображения на странице. Если не указано или больше 1000, будет установлено значение 1000.

Ответный текст

Объект ответа для метода детализации платежного поручения.

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

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)
    }
  ]
}
Поля
responseHeader

object ( ResponseHeader )

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

remittanceStatementSummary

object ( RemittanceStatementSummary )

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

eventOffset

integer

ОБЯЗАТЕЛЬНО : Смещение события в этом ответе.

nextEventOffset

integer

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

totalEvents

integer

ОБЯЗАТЕЛЬНО : Общее количество событий в этом заявлении.

totalWithholdingTaxes

string ( Int64Value format)

ОБЯЗАТЕЛЬНО : Сумма всех налогов, удержанных по данной декларации.

Это значение указано в микросекундах .

captureEvents[]

object ( Event )

ОБЯЗАТЕЛЬНО : Набор событий захвата.

refundEvents[]

object ( Event )

ОБЯЗАТЕЛЬНО : Набор событий возврата средств.

reverseRefundEvents[]

object ( Event )

ДОПОЛНИТЕЛЬНО : Набор событий обратного возврата средств.

chargebackEvents[]

object ( Event )

ДОПОЛНИТЕЛЬНО : Набор событий возврата платежа.

reverseChargebackEvents[]

object ( Event )

ДОПОЛНИТЕЛЬНО : Набор событий обратного платежа.

adjustmentEvents[]

object ( Event )

ДОПОЛНИТЕЛЬНО : Набор событий корректировки. События корректировки могут быть добавлены по усмотрению Google для устранения расхождений в выставленных счетах, например, если в ряде предыдущих транзакций были занижены суммы комиссионных, может быть использована корректировка для возмещения убытков интегратору.

Сводная выписка по переводу средств

Сводная информация о платежном поручении.

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

ОБЯЗАТЕЛЬНО : 3-буквенный код валюты 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

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

Событие

Структура, представляющая собой отдельное событие, включенное в выписку о платеже.

JSON-представление
{
  "eventRequestId": string,
  "paymentIntegratorEventId": string,
  "eventCharge": string,
  "eventFee": string,
  "presentmentChargeAmount": string,
  "presentmentCurrencyCode": string,
  "exchangeRate": string,
  "nanoExchangeRate": string
}
Поля
eventRequestId

string

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

paymentIntegratorEventId

string

ОБЯЗАТЕЛЬНО : Идентификатор платежного интегратора, возвращенного для этого события. Для операции захвата это paymentIntegratorTransactionId из ответа на вызов capture , для операции возврата это paymentIntegratorRefundId из ответа на вызов refund .

Это поле имеет переменную длину, и интегратор будет учитывать здесь любой идентификатор, указанный вами для этого события. Если интегратор не предоставил значение для соответствующего события, это поле будет содержать то же значение, что и поле eventRequestId .

Для случаев обратного возврата средств, отмены платежа и обратного возврата платежа это будет requestId , который платежный интегратор отправил вместе с уведомлением о событии.

Длина и формат этого поля зависят от исходного поля для каждого идентификатора. Подробную информацию о требованиях к длине и кодировке символов см. в документации к каждому из исходных полей. В частности, обратите внимание, что это поле иногда может содержать идентификаторы, сгенерированные Google, для которых могут действовать иные требования к максимальной длине, чем для идентификаторов, сгенерированных интегратором.

eventCharge

string ( Int64Value format)

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

Например, транзакции по захвату средств всегда будут положительными, а транзакции по возврату средств — всегда отрицательными. События обратного возврата средств и обратного платежа всегда будут положительными. События платежа всегда будут отрицательными.

Это значение указано в микросекундах .

eventFee

string ( Int64Value format)

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

Например, если в соглашении указано, что Google выплатит интегратору платежных систем 1% от transactionCharge и вернет эти 1% при возврате средств, то комиссия за обработку платежа будет отрицательной, а комиссия за возврат средств — положительной.

Это значение указано в микросекундах .

presentmentChargeAmount

string ( Int64Value format)

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

Это значение указано в микросекундах .

presentmentCurrencyCode

string

ДОПОЛНИТЕЛЬНО : Трехбуквенный код валюты ISO 4217, обозначающий валюту представления (транзакции).

exchangeRate
(deprecated)

string ( Int64Value format)

УСТАРЕВШИЙ ОБМЕННИК : Обменный курс, используемый для конвертации суммы представления в сумму расчета (счета-фактуры).

Это значение выражено в микробазисных пунктах (1 базисный пункт = 0,0001 = 0,01%). То есть, чтобы получить обменный курс, разделите это значение на 10^10.

nanoExchangeRate

string ( Int64Value format)

ДОПОЛНИТЕЛЬНО : Обменный курс, используемый для конвертации суммы представления в сумму расчета (счета-фактуры), выраженный в нанобазисных пунктах.

Это значение выражено в нанобазисных пунктах (1 базисный пункт = 0,0001 = 0,01%). То есть, чтобы получить обменный курс, разделите это значение на 10^13.

И это поле, и поле exchangeRate будут заполнены. Они представляют собой эквивалентные обменные курсы, выраженные с разной точностью. В будущих версиях поле exchangeRate будет удалено в пользу nanoExchangeRate.