- HTTP 요청
- 요청 본문
- 응답 본문
- UpiDetails
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- TokenizedInstrumentDetails
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- AsynchronousCaptureResultCode
고객 계정과 통합업체 간의 송금 작업 시작을 트리거합니다. 통합자는 요청을 확인하고 캡처를 완료하기 위해 발생해야 하는 모든 작업 (예: 사용자로부터 PIN 수집)을 수행해야 합니다. 통합자는 CaptureResultNotification API를 호출하여 Google에 캡처의 최종 결과를 알립니다.
헤더 내의 requestId와 paymentIntegratorAccountId의 조합은 멱등성 키이며 이 트랜잭션을 고유하게 식별합니다. 이 거래의 모든 변형 (환불)은 captureRequestId 필드에 requestId 값을 채웁니다.
요청을 처리하는 동안 엔드포인트에서 오류가 발생하면 이 엔드포인트의 응답 본문은 유형이어야 합니다.ErrorResponse
요청의 예는 다음과 같습니다.
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 1,
"revision": 0
},
"requestId": "bWVyY2hhbnQgdHJhbnNhY3Rpb24gaWQ",
"requestTimestamp": "1502220196077"
},
"paymentIntegratorAccountId": "InvisiCashIN_INR",
"upiDetails": {
"vpa": "foo@icici"
},
"transactionDescription": "Google - Music",
"currencyCode": "INR",
"amount": "728000000"
}
응답 예는 다음과 같습니다.
{
"responseHeader": {
"responseTimestamp": "1481900013178"
},
"result": "ACKNOWLEDGED",
"paymentIntegratorTransactionId": "aW50ZWdyYXRvciB0cmFuc2FjdGlvbiBpZA"
}
HTTP 요청
POST https://www.integratorhost.example.com/v1/asynchronousCapture
요청 본문
요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.
| JSON 표현 |
|---|
{ "requestHeader": { object ( |
| 필드 | |
|---|---|
requestHeader |
필수: 모든 요청의 공통 헤더입니다. |
paymentIntegratorAccountId |
필수: 이 거래와 관련된 계약상의 제약 조건을 식별하는 결제 통합업체 계정 식별자입니다. |
transactionDescription |
필수: 고객의 명세서에 기재할 수 있는 거래에 대한 설명입니다. |
currencyCode |
필수: 3자리 ISO 4217 통화 코드 |
amount |
필수: 구매 금액(마이크로 단위)입니다. |
통합 필드
|
|
upiDetails |
선택사항: UPI 결제 수단별 결제 세부정보입니다. |
tokenizedInstrumentDetails |
선택사항: 토큰화된 결제 수단과 관련된 결제 세부정보입니다. |
응답 본문
캡처 메서드의 응답 객체입니다.
성공할 경우 응답 본문에 다음 구조의 데이터가 포함됩니다.
| JSON 표현 |
|---|
{ "responseHeader": { object ( |
| 필드 | |
|---|---|
responseHeader |
REQUIRED: 모든 응답의 공통 헤더입니다. |
paymentIntegratorTransactionId |
필수: 이 식별자는 통합업체에만 해당되며 통합업체에 의해 생성됩니다. 이 ID는 통합업체가 이 트랜잭션을 아는 식별자입니다. 편의를 위해 송금 세부정보에 이 식별자가 포함되어 있습니다. |
result |
필수: 비동기 캡처 호출의 결과입니다. |
UpiDetails
캡처할 UPI 계좌의 세부정보입니다.
| JSON 표현 |
|---|
{ "vpa": string } |
| 필드 | |
|---|---|
vpa |
필수: UPI 프로토콜을 사용하여 이체하는 데 사용되는 사용자의 가상 수취인 주소 (VPA)입니다. 예: foo@icici |
TokenizedInstrumentDetails
캡처할 계정의 세부정보입니다.
| JSON 표현 |
|---|
{ "googlePaymentToken": string } |
| 필드 | |
|---|---|
googlePaymentToken |
필수: 두 회사가 서로 구매를 위해 계정을 식별하는 데 사용하는 토큰입니다. |
AsynchronousCaptureResultCode
비동기 캡처의 결과 코드입니다.
| 열거형 | |
|---|---|
UNKNOWN_RESULT |
이 기본값을 설정하면 안 됩니다. |
ACKNOWLEDGED |
캡처가 요청되었으며 통합업체는 캡처의 성공 또는 거부 여부를 판단하기 위해 추가 단계를 수행할 것입니다. 통합업체가 캡처 결과를 알게 되면 captureResultNotification API를 호출하여 Google에 결과를 알립니다. |
ACCOUNT_CLOSED |
통합업체에 보관된 사용자 계정이 해지되었습니다. 이 값을 반환하면 사용자의 결제 수단이 Google에서 종료됩니다. 사용자는 연결 흐름을 다시 거쳐 새 결제 수단을 추가해야 합니다. |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER |
통합업체와 연결된 사용자 계정이 폐쇄되었으며 계정이 탈취된 것으로 의심됩니다. 이 값을 반환하면 사용자의 결제 수단이 Google에서 종료됩니다. 사용자는 연결 흐름을 다시 거쳐 새 결제 수단을 추가해야 합니다. |
ACCOUNT_ON_HOLD |
계정이 보류 중입니다. |
ACCOUNT_CLOSED_FRAUD |
통합업체에 보류된 사용자 계정이 사기로 인해 해지되었습니다. 이 값을 반환하면 사용자의 결제 수단이 Google에서 종료됩니다. 사용자는 연결 흐름을 다시 거쳐 새 결제 수단을 추가해야 합니다. |