클라이언트 참조

이 참조 페이지에서는 웹 애플리케이션에서 Google Pay API를 구현하는 데 사용하는 자바스크립트 클라이언트 메서드를 설명합니다.

생성자

PaymentsClient 객체를 초기화합니다. 구성원 메서드를 호출하기 전에 이 생성자를 호출해야 합니다.

새 PaymentsClient(paymentOptions)

인수

속성 설명
paymentOptions

Google Pay API 구성 데이터의 키-값 쌍이 포함된 객체입니다. 구성 가능한 여러 속성은 PaymentOptions를 참조하세요.

예를 들면 {environment:'PRODUCTION'}입니다.

반환

유형 설명
google.payments.api.PaymentsClient PaymentsClient 객체입니다.

예외 처리

유형 설명
Error

전달된 환경 속성 값은 지원되지 않습니다.

객체 메서드

createButton(options)

웹페이지에 삽입할 최신 Google Pay 브랜드 스타일의 Google Pay 결제 버튼을 생성하는 데 사용되는 편의 메서드입니다.

생성된 HTMLElement는 동적으로 삽입된 CSS와 Google CDN에 호스팅된 SVG 이미지를 포함합니다.

사이트 디자인에 적합한 버튼 색상과 버튼 유형을 선택하는 방법에 대한 자세한 내용은 브랜드 가이드라인을 참조하세요. 반환된 Google Pay 결제 버튼의 크기를 페이지의 유사한 버튼 또는 결제 요소와 일치하도록 변경해야 할 수도 있습니다.

인수

이름 설명
options

버튼 구성에 대한 키-값 쌍이 포함된 객체입니다. 구성 가능한 속성은 ButtonOptions를 참조하세요.

예를 들면 {onClick:onGooglePaymentButtonClicked}입니다.

반환

유형 설명
HTMLElement <div>와 같은 일반 흐름 콘텐츠 컨테이너 내부의 HTML <button>입니다.

예외 처리

유형 설명
Error

필수 속성이 설정되지 않았습니다.

isReadyToPay(isReadyToPayRequest)

isReadyToPay(isReadyToPayRequest) 메서드를 사용하여 사용자가 Google Pay API에서 결제 방법을 반환할 수 있는지 확인합니다.

브라우저에서 Google Pay를 지원하고 사용자가 이미 결제 수단을 저장했거나 추가할 수 있는 경우 isReadyToPaytrue를 반환합니다. 사용자가 이미 Google Pay에 결제 수단을 저장했는지 확인하려면 IsReadyToPayRequest.existingPaymentMethodRequiredtrue로 설정하고 paymentMethodPresent가 해결된 Promise에서 true를 반환하는지 확인합니다. 자세한 내용은 IsReadyToPayResponse를 참조하세요.

PaymentsClientTEST 환경 속성으로 초기화되는 경우 paymentMethodPresent은 항상 true를 반환합니다.

인수

이름 설명
isReadyToPayRequest 판매자가 지원하는 결제 수단이 포함된 객체입니다. 구성 가능한 다양한 속성에 대한 자세한 내용은 IsReadyToPayRequest를 참조하세요.

반환

유형 설명
Promise

해결됨: 사용자의 결제 능력에 대한 정보가 포함된 객체입니다. 자세한 내용은 IsReadyToPayResponse를 참조하세요.

거부됨: 거부 이유에 대한 자세한 내용이 포함된 오류 객체입니다. 자세한 내용은 PaymentsError를 참조하세요.

오류

statusCode 설명
DEVELOPER_ERROR
  • 전달된 IsReadyToPayRequest 객체의 형식이 잘못되었습니다. 사용자의 결제 능력을 판단하기 위한 최소 필수 매개변수가 누락되었거나 잘못된 매개변수 또는 값이 포함되었습니다.
  • 요청이 결제 에이전트 또는 브라우저가 처리하지 않기로 선택한 보안 컨텍스트에서 시작되었습니다. 안전하지 않은 브라우저 컨텍스트로 인한 오류가 가장 흔합니다.

loadPaymentData(paymentDataRequest)

이 메서드는 결제 수단 선택 및 선택형 매개변수 구성이 가능한 Google Pay 결제 명세서를 표시합니다.

이 메서드는 브라우저에서 클릭 이벤트 결과로 나타나는 활성화 동작을 처리하는 동안 호출되어야 합니다. 전달된 요청 매개변수에 지정된 결제 수단 또는 기타 필수 데이터를 선택할 수 있도록 팝업 창을 사용자에게 표시할 수 있습니다.

인수

이름 설명
paymentDataRequest 전체 Google Pay API 구성의 키-값 쌍이 포함된 객체입니다. 구성 가능한 속성은 PaymentDataRequest를 참조하세요.

반환

유형 설명
Promise

해결됨: 요청된 쇼핑객 데이터가 포함된 객체입니다. 자세한 내용은 PaymentData를 참조하세요.

거부됨: 오류 코드 및 거부 이유에 대한 자세한 내용이 포함된 객체입니다. 자세한 내용은 PaymentsError를 참조하세요.

오류

statusCode 설명
CANCELED
  • 현재 브라우저 또는 로그인한 Google 사용자가 지원되지 않습니다.
  • 쇼핑객이 결제를 승인하지 않고 Google Pay 결제 명세서를 닫았습니다.
  • 요청이 결제 에이전트 또는 브라우저가 처리하지 않기로 선택한 보안 컨텍스트에서 시작되었습니다. 안전하지 않은 브라우저 컨텍스트로 인한 오류가 가장 흔합니다.
  • Google Pay 결제 명세서가 이미 표시된 상태에서 이 메서드가 호출되었습니다.
  • 전달된 PaymentDataRequest 객체가 Google Pay 결제 명세서에서 거부되었습니다. 이 오류는 일반적으로 게이트웨이의 PaymentMethodTokenizationSpecification 매개변수가 누락되거나 불완전한 경우 또는 매개변수 값이 잘못된 경우에 발생합니다.
DEVELOPER_ERROR 전달된 PaymentDataRequest 객체의 형식이 잘못되어 최소 필수 매개변수가 누락되었거나 잘못된 매개변수 또는 값이 포함되었습니다.

prefetchPaymentData(paymentDataRequest)

PaymentDataRequest 구성을 프리페치하여 나중에 사용자 상호작용 시 loadPaymentData 실행 시간을 개선합니다. 반환되는 값은 없습니다.

프리페치 최적화는 현재 Android용 Chrome에서 사용 가능하며 다른 브라우저 및 플랫폼에서도 곧 지원될 예정입니다.

인수

이름 설명
paymentDataRequest 전체 Google Pay API 구성의 키-값 쌍이 포함된 객체입니다. 구성 가능한 속성은 PaymentDataRequest를 참조하세요. transactionInfo 속성의 변경사항은 캐시된 프리페치 값에 영향을 주지 않습니다.

onPaymentAuthorized(paymentData)

이 메서드는 결제 명세서에서 결제가 승인되면 호출됩니다.

인수

이름 설명
paymentData 요청된 쇼핑객 데이터가 포함된 객체입니다. 자세한 내용은 PaymentData를 참조하세요.

반환

유형 설명
Promise

해결됨: 결제 거래 결과에 대한 정보가 포함된 객체입니다. 자세한 내용은 PaymentAuthorizationResult를 참조하세요.

거부됨: 결제 명세서에 렌더링되는 오류 인텐트와 메시지가 포함된 오류 객체입니다. 자세한 내용은 PaymentDataError를 참조하세요.

onPaymentDataChanged(intermediatePaymentData)

이 메서드는 배송지 주소, 배송 옵션 등 결제 명세서의 결제 데이터 변경사항을 처리합니다.

인수

이름 설명
intermediatePaymentData 결제 명세서에서 선택한 주소 및 배송 옵션이 포함된 객체입니다. 자세한 내용은 IntermediatePaymentData를 참조하세요.

반환

유형 설명
Promise

해결됨: 새로운 거래 정보, 배송 옵션, 결제 데이터 오류에 대한 정보가 포함된 객체입니다. 자세한 내용은 PaymentDataRequestUpdate를 참조하세요.

거부됨: 결제 명세서에 렌더링되는 오류 인텐트와 메시지가 포함된 오류 객체입니다. 자세한 내용은 PaymentDataError를 참조하세요.