리디렉션 기능이 있는 전자 지갑

PayPal, Klarna, Skrill 등 리디렉션 기능이 있는 전자 지갑은 사용자를 결제 시스템 웹사이트로 리디렉션하여 결제를 승인하고 확인한 후 판매자의 웹사이트로 돌아갑니다. 이 방법은 판매자가 사용자 결제 데이터에 액세스할 수 없으므로 결제 보안이 보장됩니다.

아래 지침은 일례로 PayPal을 사용하여 리디렉션이 있는 전자 지갑을 통해 결제를 수락하는 헤드리스 체크아웃 구성에 대해 설명합니다.

  1. PayPal 결제 후 사용자가 리디렉션되는 결제 상태 페이지를 생성합니다. 예: https://example.com/return-page.html.

  2. 결제 UI의 HTML 마크업에 psdk-status 구성 요소를 추가하여 결제 상태를 표시합니다.

:

Copy
Full screen
Small screen
@if (showStatus) {
  <psdk-status></psdk-status>
}
  1. PayPal 양식을 표시할 페이지를 생성합니다. 예: https://example.com/form-page.html.

  2. 결제 수단 ID와 상태 페이지 URL을 지정하여 결제 UI를 초기화합니다.

:

Copy
Full screen
Small screen
await headlessCheckout.form.init({
  paymentMethodId: 24, // PayPal payment ID
  returnUrl: 'https://example.com/return-page.html',
});
  1. PayPal을 통해 결제하기 위해 사용자를 외부 페이지로 리디렉션하는 redirect 이벤트 처리를 추가합니다. 구매를 완료하면 사용자가 결제 상태 페이지(https://example.com/return-page.html)로 리디렉션됩니다.

:

Copy
Full screen
Small screen
headlessCheckout.form.onNextAction((nextAction) => {
  switch (nextAction.type) {
    case 'redirect':
      this.handleRedirectAction(nextAction);
  }
});

private handleRedirectAction(redirectAction: RedirectAction): void {
  const url = this.buildRedirectUrl(redirectAction);
  window.location.href = url; // redirect to PayPal page
}

private buildRedirectUrl(redirectAction: RedirectAction): string {
  const url = new URL(redirectAction.data.redirect.redirectUrl);
  const params = Object.entries(redirectAction.data.redirect.data);
  params.forEach((entry) => {
    const [key, value] = entry;
    url.searchParams.append(key, value);
  });
  return url.toString();
}
구현 예제
GitHub에 있는 자세한 예제를 참조하세요.
이 기사가 도움이 되었나요?
감사합니다!
개선해야 할 점이 있을까요? 메시지
유감입니다
이 기사가 도움이 안 된 이유를 설명해 주세요. 메시지
의견을 보내 주셔서 감사드립니다!
메시지를 검토한 후 사용자 경험 향상에 사용하겠습니다.
마지막 업데이트: 2025년 3월 5일

오자 또는 기타 텍스트 오류를 찾으셨나요? 텍스트를 선택하고 컨트롤+엔터를 누르세요.

문제 보고
콘텐츠를 항상 검토합니다. 여러분의 피드백은 콘텐츠를 개선에 도움이 됩니다.
후속 조치를 위해 이메일을 제공해 주세요
의견을 보내 주셔서 감사드립니다!