Method: remittanceStatementDetails

송금 명세서에 대한 거래 세부정보를 반환합니다.

페이지로 나눈 API입니다. 페이지당 거래 이벤트 수는 numberOfEvents로 지정할 수 있습니다. 지정하지 않으면 페이지당 최대 1, 000개의 이벤트가 반환됩니다. 이 API에 대한 각 요청은 문에서 다음 거래 이벤트를 가리키는 nextEventOffset를 반환하고 문의 총 거래 수를 지정하는 totalEvents를 반환합니다. 현재 검색된 페이지에 문의 마지막 트랜잭션이 포함된 경우 nextEventOffset는 응답에 표시되지 않습니다.

statementId 값은 remittanceStatementNotificationRequestrequestId입니다.

요청을 처리하는 동안 엔드포인트에서 오류가 발생하면 이 엔드포인트의 응답은 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

필수: 명령문 알림의 요청 ID입니다.

eventOffset

integer

선택사항: 이 오프셋에서 시작하는 이벤트를 반환합니다. 반환된 경우 nextEventOffset로 설정해야 하고 첫 번째 요청인 경우 지정되지 않은 상태로 두어야 합니다. eventOffset가 0이면 첫 번째 이벤트부터 이벤트가 반환됩니다. 2인 경우 세 번째 이벤트부터 이벤트가 반환됩니다. 지정하지 않으면 eventOffset이 0으로 간주됩니다.

numberOfEvents

integer

선택사항: 페이지당 표시할 이벤트 수입니다. 지정되지 않거나 1,000보다 크면 1,000이 됩니다.

응답 본문

송금 명세서 세부정보 메서드의 응답 객체입니다.

성공할 경우 응답 본문에 다음 구조의 데이터가 포함됩니다.

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의 재량에 따라 조정 이벤트를 추가할 수 있습니다. 예를 들어, 이전 거래에 대해 수수료가 적게 계산되었다면 통합업체 전체가 되도록 조정을 사용할 수 있습니다.

RemittanceStatementSummary

송금 명세서에 대한 요약 객체입니다.

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 3자리 통화 코드입니다.

totalDueByIntegrator

string (Int64Value format)

필수: 이 값은 currencyCode 통화의 마이크로 단위입니다. 이 값은 항상 양수입니다.

remittanceInstructions

object (RemittanceInstructions)

필수: 결제 방법에 대한 세부정보

BillingPeriod

이 명세서의 결제 기간입니다.

JSON 표현
{
  "startDate": string,
  "endDate": string
}
필드
startDate

string (int64 format)

필수: 결제 기간의 시작일입니다. 에포크로부터의 밀리초로 표시됩니다. 날짜입니다 (따라서 항상 청구 시간대에서 하루 중 첫 번째 밀리초에 시작됨).

결제 기간의 첫 번째 밀리초(00:00:00.000)입니다.

endDate

string (int64 format)

필수: 결제 기간의 종료일입니다. 에포크로부터의 밀리초로 표시됩니다.

결제 기간의 마지막 날의 마지막 밀리초(23:59:59.999)입니다.

RemittanceInstructions

송금 알림 결제 방법에 대한 정보를 보유한 집입니다.

JSON 표현
{
  "memoLineId": string
}
필드
memoLineId

string

필수: 송금 식별을 위해 결제 관련 메모 행에 필수로 입력해야 하는 식별자입니다.

이벤트

송금 명세서에 포함된 단일 이벤트를 나타내는 구조입니다.

JSON 표현
{
  "eventRequestId": string,
  "paymentIntegratorEventId": string,
  "eventCharge": string,
  "eventFee": string,
  "presentmentChargeAmount": string,
  "presentmentCurrencyCode": string,
  "exchangeRate": string,
  "nanoExchangeRate": string
}
필드
eventRequestId

string

필수: 캡처 또는 환불 이벤트의 경우 Google에서 요청과 함께 전송하는 requestId입니다. 환불 취소, 지불 거절, 지불 거절 철회 이벤트의 경우 결제 통합업체가 해당 이벤트에 관한 알림과 함께 전송하는 requestId입니다. 조정의 경우 Google에서 조정 이벤트에 할당한 고유 ID입니다.

paymentIntegratorEventId

string

필수: 이 이벤트에 대해 반환된 결제 통합업체의 ID입니다. 캡처의 경우 capture 호출에 관한 응답의 paymentIntegratorTransactionId이고 환불의 경우 refund 호출에 관한 응답에서 얻은 paymentIntegratorRefundId입니다.

이 필드의 길이는 가변적이며 통합업체로서 이 이벤트에 대해 제공하는 ID가 여기에 반영됩니다. 통합업체가 해당 이벤트에 대한 값을 제공하지 않은 경우 이 필드에는 eventRequestId 필드와 동일한 값이 포함됩니다.

환불 취소, 지불 거절, 지불 거절 철회 이벤트의 경우 결제 통합업체가 이벤트 알림과 함께 전송한 requestId입니다.

이 필드의 길이와 형식은 각 ID의 소스 필드에 따라 다릅니다. 길이 및 문자 집합 요구사항에 대한 자세한 내용은 각 소스 필드의 문서를 참조하세요. 특히 이 필드에는 Google에서 생성한 ID가 포함될 수 있으며 이 ID는 통합업체에서 생성한 ID와 최대 길이 요구사항이 다를 수 있습니다.

eventCharge

string (Int64Value format)

필수: 문에 정의된 통화 코드입니다. 이 값이 음수이면 Google에서 결제 통합업체로 이동하는 금전적 가치를 나타냅니다. 긍정적이라면 결제 통합업체가 Google로 지급한 금액입니다.

예를 들어 캡처 거래는 항상 양수이고 환불 거래는 항상 음수입니다. 환불 취소 및 지불 거절 철회 이벤트는 항상 양수입니다. 지불 거절 이벤트는 항상 마이너스입니다.

이 값은 마이크로에 있습니다.

eventFee

string (Int64Value format)

필수: 문에 정의된 통화 코드입니다. 이 값이 음수이면 Google에서 결제 통합업체로 이동하는 금전적 가치를 나타냅니다. 긍정적이라면 결제 통합업체가 Google로 지급한 금액입니다.

예를 들어 계약에 Google이 transactionCharge의 1% 를 결제 통합업체에 지불하고 해당 거래의 환불 시 1% 를 철회하겠다고 명시한 경우 캡처 수수료는 마이너스가 되고 환불 시 환불 수수료는 양수입니다.

이 값은 마이크로에 있습니다.

presentmentChargeAmount

string (Int64Value format)

선택사항: 환율 이전의 선물 통화 (거래 통화)로 표시된 거래 금액입니다. 이 필드는 eventCharge 필드와 동일한 기호 규칙을 따릅니다.

이 값은 마이크로에 있습니다.

presentmentCurrencyCode

string

선택사항: 선물 (거래) 통화를 표시하는 3자리 ISO 4217 통화 코드입니다.

exchangeRate

string (Int64Value format)

선택사항: 선물 금액을 결산금 (인보이스) 금액으로 변환하는 데 사용되는 환율입니다.

이 값은 마이크로 베이스포인트입니다 (1베이스포인트 = .0001 = 0 .01%). 즉, 환율을 확인하려면 이 필드를 10^10으로 나눕니다.

nanoExchangeRate

string (Int64Value format)

선택사항: 선물 금액을 결산금 (인보이스) 금액으로 변환하는 데 사용되는 환율로, 나노 베이스 포인트로 표시됩니다.

이 값은 nano 베이스포인트 (1포인트 = 0 .0001 = 0 .01%)입니다. 즉, 환율을 확인하려면 이 필드를 10^13으로 나눕니다.

이 필드와 ExchangeRate가 모두 채워집니다. 이들 환율은 각기 다른 정밀도로 표현된 환율입니다. 향후 버전에서는 exchangeRate가 삭제되고 nanoExchangeRate로 대체됩니다.