韓国で PAYCO による支払いを受け付ける
PAYCO を導入すると、韓国在住の顧客は、この現地で人気があるこの支払い方法を使用して支払えるようになります。
顧客は支払いを行うと、現地の提携決済代行業者にリダイレクトされ、認証と支払いの承認を求められます。顧客が支払いを承認すると、Stripe は顧客をお客様のサイトにリダイレクトします。
Payment Intents API を使用して、韓国の顧客から現地のカードと支払い方法による決済を受け付けます。
PaymentIntent を作成するサーバー側
PaymentIntent は、顧客から支払いを回収する意図を表すオブジェクトであり、支払いプロセスを追跡します。payco
を使用して決済を受け付ける PaymentIntent
を作成するには、回収する金額を入力し、通貨として krw
、payment_method_types リストで payco
を指定します。PaymentIntent
の作成時に渡す決済手段タイプのリストを保持している場合は、それに payco
を追加します。
client secret を取得する
PaymentIntent には、client secret が含まれています。これは、支払いプロセスを安全に完了するためにクライアント側で使用されます。client secret をクライアント側に渡す際は、いくつかの方法を使用できます。
顧客が利用規約を理解していることを確認するクライアント側
Stripe の決済代行業者パートナーは、顧客に決済代行業者の ID を理解し、その利用規約を理解することを要求しています。決済ページには、次の文言とリンクを含める必要があります。
注
送信すると、次の手順を完了するためにリダイレクトされます。この取引は、NICEPAY の利用規約に従って、NICEPAY を通じて処理されます。
現地の代行業者にリダイレクトするクライアント側
顧客が PAYCO での支払いをクリックしたときに、Stripe.js を使用してその支払いを Stripe に送信します。Stripe.js は、決済フローを構築するための基本的な JavaScript ライブラリです。このライブラリにより、以下で説明するリダイレクトなどの複雑な処理が自動的に行われ、他の決済手段にも対応できるように実装を拡張できます。Stripe.js スクリプトを決済ページに含めるには、HTML ファイルの head
にこのスクリプトを追加します。
<head> <title>Checkout</title> <script src="https://js.stripe.com/basil/stripe.js"></script> </head>
決済ページで以下の JavaScript を使用して、Stripe.js のインスタンスを作成します。
// Set your publishable key. Remember to change this to your live publishable key in production! // See your keys here: https://dashboard.stripe.com/apikeys const stripe = Stripe(
);'pk_test_TYooMQauvdEDq54NiTphI7jx'
PaymentIntent
の Client Secret を使用して stripe.
を呼び出し、地域の決済代行業者の決済フローページへのリダイレクトを処理します。このページで、顧客はカード発行会社を選択し、支払いを承認します。return_
を追加して、決済完了後に顧客をリダイレクトする場所を指定します。
const form = document.getElementById('payment-form'); form.addEventListener('submit', async function(event) { event.preventDefault(); // Set the clientSecret of the PaymentIntent const { error } = await stripe.confirmPayment({ clientSecret: clientSecret, confirmParams: { payment_method_data: { type: 'payco', }, // Return URL where the customer should be redirected after the authorization return_url: `${window.location.href}`, }, }); if (error) { // Inform the customer that there was an error. const errorElement = document.getElementById('error-message'); errorElement.textContent = result.error.message; } });
return_
は、支払いの結果を表示する、貴社のウェブサイトのページに相当します。PaymentIntent
のステータスを確認して、何を表示するべきか判断できます。ステータスを確認するために、Stripe がリダイレクトする return_
には次の URL クエリパラメーターが含まれています。また、独自のクエリパラメーターを return_
に追加することもできます。設定したパラメーターは、リダイレクトプロセス全体にわたって保持されます。
パラメータ | 説明 |
---|---|
payment_ | PaymentIntent の一意の ID。 |
payment_ | PaymentIntent オブジェクトの Client Secret。 |
Test integration with PAYCO
PAYCO の実装をテストするには、テスト API キーを使用して、リダイレクトページを表示します。リダイレクトページで支払いを認証することによって、支払い成功のケースをテストできます。PaymentIntent は requires_
から succeeded
に移行します。顧客が認証に失敗するケースをテストするには、テスト API キーを使用してリダイレクトページを表示します。リダイレクトページでテスト支払いの失敗をクリックします。PaymentIntent は、requires_
から requires_
に移行します。