- HTTP 요청
- 요청 본문
- 응답 본문
- PaymentLookupCriteria
- ArnCriteria
- GoogleTransactionReferenceNumberCriteria
- CaptureRequestCriteria
- RequestOriginator
- GetDisputeInquiryReportResultCode
- 구매 보고서
- 고객 계정
- 주문
- 주소
- 항목
- 세금
- 결제
- 환불
- PaymentCardDetails
- 인증 결과
결제와 관련하여 발생할 수 있는 이의 제기에 관해 고객과의 지원 대화를 나눌 수 있도록 돕는 보고서를 받습니다.
요청을 처리하는 중에 엔드포인트에서 오류가 발생하면 이 엔드포인트의 응답은
유형입니다.ErrorResponse
이 메서드가 HTTP 200을 반환하지 않으면 이 쿼리에 대한 응답이 비어 있을 수 있습니다. 공격자가 다른 통합자의 결제 통합업체 계정 식별자를 이해하는 데 도움이 되도록 명확한 설명이 포함된
를 사용할 수 있는 상황에서는 응답 본문이 비어 있습니다. 서명 키가 일치하지 않거나 결제 통합업체 식별자를 찾을 수 없거나 암호화 키를 알 수 없는 경우 이 메서드는 본문이 비어 있는 HTTP 404를 반환합니다. 요청 서명을 인증할 수 있으면 오류와 관련된 추가 정보가 응답 본문에 반환됩니다.ErrorResponse
요청의 예는 다음과 같습니다.
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 1,
"revision": 0
},
"requestId": "HsKv5pvtQKTtz7rdcw1YqE",
"requestTimestamp": "1519996751331"
},
"paymentIntegratorAccountId": "InvisiCashUSA",
"paymentLookupCriteria": {
"googleTransactionReferenceNumberCriteria": {
"googleTransactionReferenceNumber": "714545417102363157911822",
"authorizationCode": "111111"
}
},
"existingGoogleClaimId": "138431383281",
"requestOriginator": {
"organizationId": "ISSUER_256",
"organizationDescription": "Community Bank of Some City",
"agentId": "982749"
}
}
응답 예시는 다음과 같습니다.
{
"responseHeader": {
"responseTimestamp": "1519996752221"
},
"result": "SUCCESS",
"googleClaimId": "138431383281",
"report": {
"customerAccount": {
"customerEmail": "example@gmail.com",
"customerName" : "Example Customer"
},
"order": {
"timestamp": "1517992525972",
"orderId": "SOP.8976-1234-1234-123456..99",
"currencyCode": "USD",
"subTotalAmount": "206990000",
"totalAmount": "212990000",
"shippingAddress": {
"name": "Example Customer",
"addressLine": ["123 Main St"],
"localityName": "Springfield",
"administrativeAreaName": "CO",
"postalCodeNumber": "80309",
"countryCode": "US"
},
"taxes": [
{
"description": "Colorado Sales Tax",
"amount": "6000000"
}
],
"items": [
{
"description": "Super cool gizmo",
"merchant": "HTC",
"googleProductName": "Google Store",
"quantity": "2",
"totalPrice": "198000000"
},
{
"description": "Gizmo charger",
"merchant": "HTC",
"googleProductName": "Google Store",
"quantity": "1",
"totalPrice": "8990000"
}
]
},
"payment": {
"billingAddress" : {
"name": "Example Customer",
"addressLine": ["123 Main St"],
"localityName": "Springfield",
"administrativeAreaName": "CO",
"postalCodeNumber": "80309",
"countryCode": "US"
},
"amount": "100000000",
"refunds": [
{
"amount": "9250000",
"initiatedTimestamp": "1518811245384"
}
],
"cardDetails": {
"authResult": "APPROVED"
}
}
}
}
HTTP 요청
POST https://vgw.googleapis.com/secure-serving/gsp/v1/getDisputeInquiryReport/:PIAID
요청 본문
요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.
JSON 표현 |
---|
{ "requestHeader": { object ( |
필드 | |
---|---|
requestHeader |
필수: 모든 요청의 공통 헤더입니다. |
paymentIntegratorAccountId |
필수: 이 상호작용의 호출자 및 관련 계약 제약 조건을 식별하는 결제 통합업체 계정 식별자입니다. |
paymentLookupCriteria |
필수: 이 문의를 조회할 결제를 나타내는 기준입니다. |
existingGoogleClaimId |
선택사항: 이 고객 이의 제기 소유권 주장을 고유하게 식별하는 이 필드가 없으면 새로운 소유권 주장 ID가 생성됩니다. 호출자가 동일한 고객 이의 제기의 연속인 경우 이전 여기에 채워지거나 생성된 소유권 주장 ID는 응답의 이전 |
requestOriginator |
필수: 이 요청을 발생시킨 조직 또는 조직 하위 그룹에 대한 정보입니다. |
응답 본문
getDisputeInquiryReport
메서드의 응답 페이로드
성공할 경우 응답 본문에 다음 구조의 데이터가 포함됩니다.
JSON 표현 |
---|
{ "responseHeader": { object ( |
필드 | |
---|---|
responseHeader |
필수: 모든 응답의 공통 헤더입니다. |
result |
필수: 이 호출의 결과입니다. |
googleClaimId |
선택사항: 이 고객 이의 제기를 고유하게 식별하는 Google 생성 문자열입니다. 요청에 |
report |
선택사항: 요청에서 확인된 결제 이의 제기와 관련된 세부정보입니다. |
PaymentLookupCriteria
결제를 고유하게 조회할 수 있는 기준의 컨테이너입니다. 회원 입력란은 하나 (하나만) 채워야 합니다.
JSON 표현 |
---|
{ // Union field |
필드 | |
---|---|
통합 필드
|
|
arnCriteria |
선택사항: 획득자 참조 번호 (ARN)를 기반으로 조회를 수행합니다. |
googleTransactionReferenceNumberCriteria |
선택사항: Google 거래 참조 번호를 기반으로 조회합니다. |
captureRequestCriteria |
선택사항: 캡처 요청 ID를 기준으로 조회를 수행합니다. |
ArnCriteria
획득자 참조 번호 (ARN)를 기반으로 한 결제 조회 기준입니다.
JSON 표현 |
---|
{ "acquirerReferenceNumber": string, "authorizationCode": string } |
필드 | |
---|---|
acquirerReferenceNumber |
필수: 결제를 고유하게 식별하는 획득자 참조 번호 (ARN)입니다. 23자리 숫자여야 합니다. |
authorizationCode |
필수: 거래의 승인 코드입니다. |
GoogleTransactionReferenceNumberCriteria
Google에서 생성한 거래 참조 번호를 기반으로 하는 결제 조회 기준입니다.
JSON 표현 |
---|
{ "googleTransactionReferenceNumber": string, "authorizationCode": string } |
필드 | |
---|---|
googleTransactionReferenceNumber |
필수: 결제를 고유하게 식별하는 Google에서 생성된 거래 참조 번호입니다. |
authorizationCode |
필수: 거래의 승인 코드입니다. |
캡처 요청 기준
원래 캡처 요청에 따른 결제 조회 기준입니다.
JSON 표현 |
---|
{ "captureRequestId": string } |
필드 | |
---|---|
captureRequestId |
필수: 이 거래의 고유 식별자입니다. 이는 조회 중인 |
RequestOriginator
이 요청이 시작된 조직 또는 조직의 하위 그룹(선택사항) 직원에 대한 정보입니다. 이를 통해 Google은 문제 또는 악용 사례를 파악하고 paymentIntegratorAccountId
보다 세분화된 수준에서 제어를 구현할 수 있습니다. 호출자가 여러 외부 클라이언트의 요청을 가져오는 중개자인 경우 특히 유용합니다.
JSON 표현 |
---|
{ "organizationId": string, "organizationDescription": string, "agentId": string } |
필드 | |
---|---|
organizationId |
필수: 요청이 시작된 회사, 조직 또는 조직 그룹의 식별자입니다. 이 |
organizationDescription |
필수: 사람이 읽을 수 있는 조직 이름 또는 설명으로, Google 직원과 조직 통합업체 간의 커뮤니케이션을 원활하게 하는 데 사용됩니다. |
agentId |
선택사항: 이 요청이 시작된 |
이의 제기 관련 문의 결과 가져오기
getDisputeInquiryReport
메서드 호출의 결과입니다.
열거형 | |
---|---|
UNKNOWN_RESULT |
이 기본값을 설정하면 안 됩니다. |
SUCCESS |
결제 내역이 확인되고 보고서가 제공됩니다. |
PAYMENT_NOT_FOUND |
요청하신 결제 내역을 찾을 수 없습니다. |
PAYMENT_TOO_OLD |
요청하신 지급 내역을 찾았지만 해당 지급 기간에 따라 보고서가 제공되지 않았습니다. |
ORDER_CANNOT_BE_RETURNED |
요청하신 결제는 존재하지만 반품할 수 없는 주문에 속해 있습니다. 소유자 요청에 따라 주문이 삭제된 경우가 그 이유일 수 있습니다. |
NO_ADDITIONAL_DETAILS |
요청한 결제 내역을 찾았지만 보고서를 사용할 수 없습니다. |
구매 보고서
요청된 결제와 관련된 구매의 세부정보가 포함된 보고서
JSON 표현 |
---|
{ "customerAccount": { object ( |
필드 | |
---|---|
customerAccount |
필수: 고객 및 고객 계정에 관한 정보입니다. |
order |
필수: 결제가 이루어진 주문에 관한 정보입니다. |
payment |
선택사항: 결제와 관련된 정보입니다. 참고: 하나의 주문에서 여러 번 결제할 수 있지만, 여기에는 원래 요청에서 식별된 결제에 대한 정보만 포함됩니다. 일부 주문 유형에서는 사용할 수 없습니다. |
고객 계정
고객 계정 정보
JSON 표현 |
---|
{ "customerEmail": string, "customerName": string } |
필드 | |
---|---|
customerEmail |
필수: 고객의 Google 계정과 연결된 이메일 주소입니다. |
customerName |
필수: 고객의 이름입니다. |
주문
주문에 관한 정보입니다.
JSON 표현 |
---|
{ "timestamp": string, "orderId": string, "currencyCode": string, "subTotalAmount": string, "totalAmount": string, "shippingAddress": { object ( |
필드 | |
---|---|
timestamp |
선택사항: 주문이 이루어진 시점의 타임스탬프로, 에포크 이후 경과된 시간이 밀리초로 표시됩니다. 일부 주문 유형에서는 사용할 수 없습니다. |
orderId |
선택사항: 이 주문을 고유하게 식별하는 문자열입니다. 일부 주문 유형에서는 사용할 수 없습니다. |
currencyCode |
선택사항: 이 주문의 모든 금액에 대한 ISO 4217 3자리 통화 코드입니다. 일부 주문 유형에서는 사용할 수 없습니다. |
subTotalAmount |
선택사항: 세전 주문의 총금액으로, |
totalAmount |
선택사항: 세금을 포함한 이 주문의 총 금액으로, |
shippingAddress |
선택사항: 이 주문에 포함된 실제 상품의 배송지 주소입니다. |
items[] |
필수: 이 주문에 포함된 상품의 목록입니다. |
taxes[] |
필수: 이 주문에 포함된 상품의 목록입니다. 이 목록은 비어 있을 수 있습니다. |
주소
주소에 대한 정보를 보유하는 구조입니다.
JSON 표현 |
---|
{ "name": string, "addressLine": [ string ], "localityName": string, "administrativeAreaName": string, "postalCodeNumber": string, "countryCode": string } |
필드 | |
---|---|
name |
선택사항: 고객의 전체 이름입니다. |
addressLine[] |
선택사항: 구조화되지 않은 주소 텍스트를 포함합니다. |
localityName |
선택사항: 내용이 명확하지 않지만 주소의 시/군/구 부분을 나타냅니다. 지역이 잘 정의되지 않거나 이 구조에 잘 맞지 않는 지역 (예: 일본 및 중국)에서는 localityName을 비워두고 addressLine을 사용하세요. 예: 미국의 도시, IT 지역, 영국의 도시 |
administrativeAreaName |
선택사항: 이 국가의 최상위 행정 구역'(예: 미국 주, 이탈리아 지역, CN 지방, 일본 현)' |
postalCodeNumber |
선택사항: postalCodeNumber 값은 이름과 달리 주로 영숫자입니다. 예: '94043', 'SW1W', 'SW1W 9TQ' |
countryCode |
선택사항: 고객 주소 국가 코드입니다(ISO-3166-1 Alpha-2여야 함). |
항목
주문에 포함된 상품에 관한 정보입니다.
JSON 표현 |
---|
{ "description": string, "merchant": string, "quantity": string, "totalPrice": string, "googleProductName": string } |
필드 | |
---|---|
description |
선택사항: 구매한 상품의 설명입니다. 일부 주문 유형에서는 사용할 수 없습니다. |
merchant |
필수사항: 상품의 판매자, 아티스트 또는 제조업체입니다. |
quantity |
선택사항: 이 상품의 주문된 수량입니다. 제품에 정수 수량을 적용할 수 없는 경우 이 필드는 생략됩니다 (예: 측정되는 제품에 분수 수량이 있을 수 있음). |
totalPrice |
선택사항: 이 항목의 총가격으로, |
googleProductName |
필수: 상품의 Google 제품 서비스 이름입니다. |
세금
이 주문에 적용되는 세금에 관한 정보입니다.
JSON 표현 |
---|
{ "description": string, "amount": string } |
필드 | |
---|---|
description |
필수: 세금에 대한 설명입니다. |
amount |
필수: |
지급
결제에 관한 정보입니다.
JSON 표현 |
---|
{ "billingAddress": { object ( |
필드 | |
---|---|
billingAddress |
필수: 이 청구서 수신 주소의 주소입니다. |
amount |
필수: |
refunds[] |
필수: 이 결제와 관련된 환불 목록입니다. 이 목록은 비어 있을 수 있습니다. |
통합 필드
|
|
cardDetails |
선택사항: 신용카드 및 체크카드와 관련된 결제 세부정보입니다. |
환불
결제 환불 관련 정보입니다.
JSON 표현 |
---|
{ "amount": string, "initiatedTimestamp": string } |
필드 | |
---|---|
amount |
필수: 환불 금액( |
initiatedTimestamp |
필수: 환불이 시작된 시점의 타임스탬프로, 에포크 이후 경과된 시간을 밀리초로 나타냅니다. |
결제 카드 세부정보
신용카드 및 체크카드와 관련된 결제 세부정보입니다.
JSON 표현 |
---|
{
"authResult": enum ( |
필드 | |
---|---|
authResult |
필수: 결제 인증 결과입니다. |
인증 결과
결제 승인 결과
열거형 | |
---|---|
UNKNOWN_RESULT |
이 기본값을 설정하면 안 됩니다. |
APPROVED |
인증이 승인되었습니다. |
DENIED |
인증이 거부되었습니다. |
NOT_ATTEMPTED |
인증을 시도하지 않았습니다. |