- HTTP-запрос
- Текст запроса
- Ответный текст
- Сводная выписка по переводу средств
- Период выставления счетов
- Инструкции по переводу средств
- Событие
Возвращает подробную информацию о транзакции, указанную в выписке по платежу.
Это API с постраничной навигацией. Количество событий транзакций на странице можно указать с помощью numberOfEvents . Если параметр не указан, на странице будет возвращено максимум 1000 событий. Каждый запрос к этому API вернет значение nextEventOffset , указывающее на следующее событие транзакции в выписке, а также totalEvents указывающее общее количество транзакций в выписке. Если текущая полученная страница содержит последние транзакции выписки, nextEventOffset в ответе отсутствовать.
Значение statementId — это requestId из запроса remittanceStatementNotificationRequest
Если при обработке запроса конечная точка столкнется с ошибкой, ответ от этой конечной точки будет иметь тип .ErrorResponse
Ответы на этот запрос могут быть пустыми, если этот метод не возвращает HTTP 200. Тело ответа пустое в ситуациях, когда с четким описанием может помочь злоумышленнику понять идентификатор учетной записи платежного интегратора других интеграторов. В таких ситуациях, когда ключ подписи не совпадает, идентификатор платежного интегратора не найден или ключ шифрования неизвестен, этот метод вернет HTTP 404 с пустым телом. Если подпись запроса может быть проверена, в теле ответа будет возвращена дополнительная информация об ошибке.ErrorResponse
Пример запроса выглядит так:
{
"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 | ОБЯЗАТЕЛЬНО : Это идентификатор учетной записи платежного интегратора, который определяет договорные ограничения, связанные с данным заявлением. |
statementId | ОБЯЗАТЕЛЬНО : Идентификатор запроса уведомления о выписке. |
eventOffset | НЕОБЯЗАТЕЛЬНО : Возвращать события, начиная с этого смещения. Если было возвращено одно событие, следует установить значение |
numberOfEvents | НЕОБЯЗАТЕЛЬНО : Количество событий для отображения на странице. Если не указано или больше 1000, будет установлено значение 1000. |
Ответный текст
Объект ответа для метода детализации платежного поручения.
В случае успеха тело ответа содержит данные следующей структуры:
| JSON-представление |
|---|
{ "responseHeader": { object ( |
| Поля | |
|---|---|
responseHeader | ОБЯЗАТЕЛЬНО : Единый заголовок для всех ответов. |
remittanceStatementSummary | ОБЯЗАТЕЛЬНО : Краткое изложение данного платежного поручения. |
eventOffset | ОБЯЗАТЕЛЬНО : Смещение события в этом ответе. |
nextEventOffset | НЕОБЯЗАТЕЛЬНО : Смещение следующего события, которое необходимо вернуть. Если не указано, то для этого запроса больше нет событий для получения. |
totalEvents | ОБЯЗАТЕЛЬНО : Общее количество событий в этом заявлении. |
totalWithholdingTaxes | ОБЯЗАТЕЛЬНО : Сумма всех налогов, удержанных по данной декларации. Это значение указано в микросекундах . |
captureEvents[] | ОБЯЗАТЕЛЬНО : Набор событий захвата. |
refundEvents[] | ОБЯЗАТЕЛЬНО : Набор событий возврата средств. |
reverseRefundEvents[] | ДОПОЛНИТЕЛЬНО : Набор событий обратного возврата средств. |
chargebackEvents[] | ДОПОЛНИТЕЛЬНО : Набор событий возврата платежа. |
reverseChargebackEvents[] | ДОПОЛНИТЕЛЬНО : Набор событий обратного платежа. |
adjustmentEvents[] | ДОПОЛНИТЕЛЬНО : Набор событий корректировки. События корректировки могут быть добавлены по усмотрению Google для устранения расхождений в выставленных счетах, например, если в ряде предыдущих транзакций были занижены суммы комиссионных, может быть использована корректировка для возмещения убытков интегратору. |
Сводная выписка по переводу средств
Сводная информация о платежном поручении.
| JSON-представление |
|---|
{ "statementDate": string, "billingPeriod": { object ( |
| Поля | |
|---|---|
statementDate | ОБЯЗАТЕЛЬНО : Дата (в Америке/Лос-Анджелесе), когда было создано это заявление. |
billingPeriod | ОБЯЗАТЕЛЬНО : Расчетный период, за который подается данная выписка. |
dateDue | НЕОБЯЗАТЕЛЬНО : Дата, когда должен быть произведен платеж. Она отображается в миллисекундах от начала эпохи. Это дата (и поэтому она всегда начинается с первой миллисекунды дня в часовом поясе, используемом для выставления счетов). Этот параметр сохраняется до тех пор, пока |
currencyCode | ОБЯЗАТЕЛЬНО : 3-буквенный код валюты ISO 4217. |
totalDueByIntegrator | ОБЯЗАТЕЛЬНО : Это значение указывается в микросекундах в валюте |
remittanceInstructions | ОБЯЗАТЕЛЬНО : Подробная информация о способе осуществления платежа. |
Период выставления счетов
Расчетный период, указанный в данном отчете.
| JSON-представление |
|---|
{ "startDate": string, "endDate": string } |
| Поля | |
|---|---|
startDate | ОБЯЗАТЕЛЬНО : Начальная дата расчетного периода. Она представлена в миллисекундах от начала эпохи. Это дата (и, следовательно, всегда будет начинаться с первой миллисекунды дня в расчетном часовом поясе). Это первая миллисекунда дня расчетного периода, 00:00:00.000 |
endDate | ОБЯЗАТЕЛЬНО : Дата окончания расчетного периода. Она отображается в миллисекундах от начала эпохи. Это последняя миллисекунда последнего дня расчетного периода, 23:59:59.999 |
Инструкции по переводу средств
Структура, содержащая информацию о способе оплаты данного уведомления о переводе средств.
| JSON-представление |
|---|
{ "memoLineId": string } |
| Поля | |
|---|---|
memoLineId | ОБЯЗАТЕЛЬНО : Идентификатор, который обязательно должен быть указан в строке примечания для идентификации платежа. |
Событие
Структура, представляющая собой отдельное событие, включенное в выписку о платеже.
| JSON-представление |
|---|
{ "eventRequestId": string, "paymentIntegratorEventId": string, "eventCharge": string, "eventFee": string, "presentmentChargeAmount": string, "presentmentCurrencyCode": string, "exchangeRate": string, "nanoExchangeRate": string } |
| Поля | |
|---|---|
eventRequestId | ОБЯЗАТЕЛЬНО : Для событий захвата или возврата средств это будет |
paymentIntegratorEventId | ОБЯЗАТЕЛЬНО : Идентификатор платежного интегратора, возвращенного для этого события. Для операции захвата это Это поле имеет переменную длину, и интегратор будет учитывать здесь любой идентификатор, указанный вами для этого события. Если интегратор не предоставил значение для соответствующего события, это поле будет содержать то же значение, что и поле Для случаев обратного возврата средств, отмены платежа и обратного возврата платежа это будет Длина и формат этого поля зависят от исходного поля для каждого идентификатора. Подробную информацию о требованиях к длине и кодировке символов см. в документации к каждому из исходных полей. В частности, обратите внимание, что это поле иногда может содержать идентификаторы, сгенерированные Google, для которых могут действовать иные требования к максимальной длине, чем для идентификаторов, сгенерированных интегратором. |
eventCharge | ОБЯЗАТЕЛЬНО : Код валюты, определенный в операторе. Если это значение отрицательное, то это означает, что денежная сумма перемещается от Google к платежному интегратору. Если это положительное значение, то это деньги, причитающиеся Google от платежного интегратора. Например, транзакции по захвату средств всегда будут положительными, а транзакции по возврату средств — всегда отрицательными. События обратного возврата средств и обратного платежа всегда будут положительными. События платежа всегда будут отрицательными. Это значение указано в микросекундах . |
eventFee | ОБЯЗАТЕЛЬНО : Код валюты, определенный в операторе. Если это значение отрицательное, то это означает, что денежная сумма перемещается от Google к платежному интегратору. Если это положительное значение, то это деньги, причитающиеся Google от платежного интегратора. Например, если в соглашении указано, что Google выплатит интегратору платежных систем 1% от Это значение указано в микросекундах . |
presentmentChargeAmount | НЕОБЯЗАТЕЛЬНО : Сумма транзакции в валюте представления (т.е. транзакции) до проведения валютных операций. Это поле имеет тот же знаковый формат, что и поле Это значение указано в микросекундах . |
presentmentCurrencyCode | ДОПОЛНИТЕЛЬНО : Трехбуквенный код валюты ISO 4217, обозначающий валюту представления (транзакции). |
exchangeRate | УСТАРЕВШИЙ ОБМЕННИК : Обменный курс, используемый для конвертации суммы представления в сумму расчета (счета-фактуры). Это значение выражено в микробазисных пунктах (1 базисный пункт = 0,0001 = 0,01%). То есть, чтобы получить обменный курс, разделите это значение на 10^10. |
nanoExchangeRate | ДОПОЛНИТЕЛЬНО : Обменный курс, используемый для конвертации суммы представления в сумму расчета (счета-фактуры), выраженный в нанобазисных пунктах. Это значение выражено в нанобазисных пунктах (1 базисный пункт = 0,0001 = 0,01%). То есть, чтобы получить обменный курс, разделите это значение на 10^13. И это поле, и поле exchangeRate будут заполнены. Они представляют собой эквивалентные обменные курсы, выраженные с разной точностью. В будущих версиях поле exchangeRate будет удалено в пользу nanoExchangeRate. |