コンテンツにスキップ
アカウントを作成
または
サインイン
Stripe ドキュメントのロゴ
/
AI に質問する
アカウントを作成
サインイン
始める
支払い
財務の自動化
プラットフォームおよびマーケットプレイス
資金管理
開発者向けのツール
始める
支払い
財務の自動化
始める
支払い
財務の自動化
プラットフォームおよびマーケットプレイス
資金管理
概要
Stripe Payments について
構築済みのシステムをアップグレード
支払いの分析
オンライン決済
概要ユースケースを見つけるManaged Payments
Payment Links を使用する
決済ページを構築
    概要
    クイックスタート
    デザインをカスタマイズする
    追加情報を収集する
    税金を徴収する
    決済フローを動的に更新
    商品カタログを管理する
    サブスクリプション
    決済手段を管理
    顧客が現地通貨で支払いできるようにする
    割引、アップセル、オプション品目を追加する
    将来の支払いを設定する
    支払い中に支払い詳細を保存する
    Manually approve payments on your server
    支払い後
      注文のフルフィルメント
      領収書と支払い済みの請求書を送信する
      リダイレクトの動作をカスタマイズ
      放棄されたカートを回復する
      コンバージョンファネルを分析
    Elements with Checkout Sessions API ベータ版の変更ログ
    従来の Checkout からの移行
    Checkout を移行して Prices を使用
高度なシステムを構築
アプリ内実装を構築
決済手段
決済手段を追加
決済手段を管理
Link による購入の迅速化
支払いインターフェイス
Payment Links
Checkout
Web Elements
アプリ内 Elements
決済シナリオ
カスタムの決済フロー
柔軟なアクワイアリング
オーケストレーション
店頭支払い
端末
他の Stripe プロダクト
Financial Connections
仮想通貨
Climate
ホーム支払いBuild a checkout pageAfter the payment

リダイレクトの動作をカスタマイズする

顧客の注文情報が記載された確認ページを表示します。

ページをコピー

オンラインフォームを使用する Checkout の実装がある場合、顧客が支払いを完了した後に Stripe がリダイレクトするかどうかと、その方法をカスタマイズできます。Stripe が常に顧客をリダイレクトするか、一部の支払い方法でのみリダイレクトするか、リダイレクトを完全に無効にするかを指定できます。

リダイレクトを設定するには、return_url パラメーターで戻り先ページを指定します。

または、以下を実行してください。

  • 決済手段で必要な場合にのみ顧客をリダイレクトします (たとえば、引き落としベースの手段に対する銀行のオーソリページ)。
  • 戻り先ページを使用せず、リダイレクトベースの支払い方法を無効にします。

顧客を戻り先ページにリダイレクトする

Checkout セッションの作成時に、戻り先ページの URL を return_url パラメーターで指定します。URL には {CHECKOUT_SESSION_ID} テンプレート変数を含めます。Checkout は顧客をリダイレクトする際に、この変数を Checkout セッション ID に置き換えます。戻り先ページを表示する際、URL の Checkout セッション ID を使用して Checkout セッションのステータスを取得します。

server.js
app.get('/session_status', async (req, res) => { const session = await stripe.checkout.sessions.retrieve(req.query.session_id); const customer = await stripe.customers.retrieve(session.customer); res.send({ status: session.status, payment_status: session.payment_status, customer_email: customer.email }); });

セッションステータスに応じて、結果を次のように処理します。

  • complete: 支払いが成功しました。Checkout セッションの情報を使用して成功ページを表示します。
  • open: 支払いが失敗またはキャンセルされました。顧客がやり直せるように Checkout を再度マウントします。
client.js
const session = await fetch(`/session_status?session_id=${session_id}`) if (session.status == 'open') { // Remount embedded Checkout else if (session.status == 'complete') { // Show success page // Optionally use session.payment_status or session.customer_email // to customize the success page }

リダイレクトベースの支払い方法

決済の進行中、決済手段によっては、発行会社/銀行のオーソリページなどの中間ページに顧客がリダイレクトされる場合があります。そのページでの操作を完了した顧客は、Stripe によって戻り先ページにリダイレクトされます。

リダイレクトベースの支払い方法の場合にのみリダイレクトする

リダイレクトを必要としない支払いの後には顧客のリダイレクトを行わない場合は、redirect_on_completion を if_required に設定します。これで、リダイレクトベースの支払い方法で購入する顧客のみがリダイレクトされます。

カード決済の場合、Checkout はリダイレクトではなく、デフォルトの成功ステータスを表示します。自社の成功ステータスを使用するには、onComplete コールバックを渡して Checkout インスタンスを破棄し、カスタムの成功ステータスを表示します。

onComplete は、Checkout セッションが正常に完了したとき、または checkout.session.completed Webhook イベントが送信されたときに呼び出されます。

return.js
const stripe = Stripe(
'pk_test_TYooMQauvdEDq54NiTphI7jx'
); initialize(); async function initialize() { const fetchClientSecret = async () => { const response = await fetch("/create-checkout-session", { method: "POST", }); const { clientSecret } = await response.json(); return clientSecret; }; // Example `onComplete` callback const handleComplete = async function() { // Destroy Checkout instance checkout.destroy() // Retrieve details from server (which loads Checkout Session) const details = await retrievePurchaseDetails(); // Show custom purchase summary showPurchaseSummary(details); } const checkout = await stripe.initEmbeddedCheckout({ fetchClientSecret, onComplete: handleComplete }); checkout.mount('#checkout'); }

リダイレクトベースの支払い方法を無効にする

戻り先ページを作成しない場合は、redirect_on_completion を never に設定して Checkout セッションを作成します。

これにより、リダイレクトベースの支払い方法が無効になります。

  • 動的な支払い方法を使用する場合、ダッシュボードでは引き続き支払い方法を管理できますが、リダイレクトを必要とする支払い方法は対象外になります。
  • payment_method_types を使用して支払い方法を手動で指定する場合、リダイレクトベースの支払い方法を含めることはできません。

redirect_on_completion: never を設定すると、return_url の要件が解除されます。これらのセッションでは、Checkout は、リダイレクトを行うことなく、デフォルトの成功ステータスを表示します。onComplete コールバックを渡して Checkout インスタンスを破棄し、カスタムの成功ステータスを表示すると、自社の成功ステータスを使用することができます。

onComplete は、Checkout セッションが正常に完了したとき、または checkout.session.completed Webhook イベントが送信されたときに呼び出されます。

return.js
const stripe = Stripe(
'pk_test_TYooMQauvdEDq54NiTphI7jx'
); initialize(); async function initialize() { const fetchClientSecret = async () => { const response = await fetch("/create-checkout-session", { method: "POST", }); const { clientSecret } = await response.json(); return clientSecret; }; // Example `onComplete` callback const handleComplete = async function() { // Destroy Checkout instance checkout.destroy() // Retrieve details from server (which loads Checkout Session) const details = await retrievePurchaseDetails(); // Show custom purchase summary showPurchaseSummary(details); } const checkout = await stripe.initEmbeddedCheckout({ fetchClientSecret, onComplete: handleComplete }); checkout.mount('#checkout'); }
このページはお役に立ちましたか。
はいいいえ
お困りのことがございましたら 、サポートにお問い合わせください。
早期アクセスプログラムにご参加ください。
変更ログをご覧ください。
ご不明な点がございましたら、お問い合わせください。
LLM ですか?llms.txt を読んでください。
Powered by Markdoc