Express Checkout Element で決済を受け付ける
単一の導入を使用して、ワンクリックの支払いボタンで決済を受け付けます。
Express Checkout Element を使用すると、一度の導入で Link、PayPal、Apple Pay、Google Pay、Amazon Pay などのワンクリックの支払いボタンによる決済を受け付けることができます。
顧客が使用するデバイスとブラウザーの組み合わせのサポート状況に応じて、表示される支払いボタンが異なります。互換性のあるデバイスでは、Google Pay と Link が自動的にサポートされます。Apple Pay と PayPal のサポートには追加のステップが必要です。
ベータ
Klarna on the Express Checkout Element is launching a limited beta in mid October. Reach out here to gain access.
Express Checkout Element を使用する際は、Intent の作成前に支払いの詳細を収集することをお勧めします。これまでに Payment Element を導入している場合に、このアプローチを行うにはStripe システムの更新が必要になる場合があります。
はじめに
- ブラウザーに支払い方法を追加します。たとえば、カードを Google Pay アカウントや Safari のウォレットに追加できます。
- アプリケーションは HTTPS 経由で提供します。これは、開発環境と本番環境で必須です。ngrok などのサービスを利用できます。
- テスト環境と本番環境の両方でドメインを登録して確認します。
- PayPal サンドボックスアカウントを作成して、実装をテストします。
支払い方法を有効にする
デフォルトでは、Stripe はお客様の決済手段の設定を使用して、Express Checkout Element ででどの決済手段を有効にするかを決定します。
有効になっている決済手段を手動で上書きするには、payment_
属性を使用して、有効にする決済手段をすべてリストします。
- インテントを作成する前に支払いを回収する場合は、Elementsプロバイダーオプションの
paymentMethodTypes
属性に決済手段のリストを作成します。 - Elements をレンダリングする前にインテントを作成する場合は、インテントの
payment_
属性に決済手段のリストを作成します。method_ types
サポートされている決済手段
支払い方法タイプ card
を使用すると、Apple Pay と Google Pay が自動的に有効になります。Link を使用する場合は、必ず card
支払い方法タイプも渡します。
支払い方法名 | Payment method API パラメーター |
---|---|
Apple Pay | card |
Google Pay | card |
Link | link, card |
PayPal | paypal |
Amazon Pay | amazon_ |
Express Checkout Element を作成してマウントするクライアント側
Express Checkout Element には、HTTPS 接続を介して支払い情報を Stripe に安全に送信する iframe が含まれています。実装を機能させるには、決済ページのアドレスの先頭を http://
ではなく https://
にする必要があります。
顧客の詳細情報を収集してラインアイテムを表示するクライアント側
Express Checkout Element にオプションを渡すために、クリックイベントを処理します。クリックイベントを受信した後、決済ページで操作を無効にしてください。
PaymentIntent を作成するサーバー側
Stripe は PaymentIntent オブジェクトを使用して、顧客から支払いを回収するお客様の意図を示し、プロセス全体を通して請求の実施と支払い状態の変化を追跡します。
サーバーで金額と通貨を指定し、PaymentIntent を作成します。これは、ステップ 3 で stripe.
インスタンスに設定した内容と一致している必要があります。請求金額は、クライアント側ではなく、常に信頼できる環境のサーバー側で指定してください。これにより、悪意のある顧客が金額を恣意的に選択できないようにします。
返される PaymentIntent には client secret が含まれています。これは、PaymentIntent オブジェクト全体を渡すことなく安全に決済プロセスを完了するために、クライアント側で使用されます。client secret をクライアント側に渡す際には、いくつかの方法を使用できます。
Stripe に支払いを送信するクライアント側
stripe.confirmPayment を使用し、Express Checkout Element からの詳細を使って支払いを完了します。
注
Amazon Pay と PayPal の場合、PaymentIntent で確定した金額と買い手が事前承認した金額が一致している必要があります。金額が一致しないと、支払いは拒否されます。
支払いの完了後に Stripe がユーザーをリダイレクトする場所を指定するには、この関数に return_url を指定します。ユーザーは、最初に中間サイトにリダイレクトされてから、return_
にリダイレクトされる場合があります。支払いが正常に完了するとすぐに return_
にリダイレクトされます。
支払いの完了後にリダイレクトを行わない場合は、redirect を if_
に設定します。これで、リダイレクトベースの支払い方法で購入する顧客のみがリダイレクトされます。
実装をテストする
本番環境に移行する前に、各支払い方法の組み込みをテストします。支払い方法のブラウザーとの互換性を判断するには、サポートされるブラウザーをご覧ください。iframe で Express Checkout Element を使用している場合、iframe で allow 属性を payment *
に設定する必要があります。
Stripe について顧客に開示する
Stripe は顧客の Elements とのやり取りに関する情報を収集して、サービスを提供し、不正利用を防止し、サービスを向上します。これには、Cookie と IP アドレスを使用して、1 つの決済フローセッションで顧客に表示する Elements を特定することが含まれます。Stripe がこのような方法でデータを使用するために必要なすべての権利と同意について開示し、これらを取得することはお客様の責任です。詳細については、プライバシーセンターをご覧ください。