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

注

このページはまだ日本語ではご利用いただけません。より多くの言語で文書が閲覧できるように現在取り組んでいます。準備が整い次第、翻訳版を提供いたしますので、もう少しお待ちください。

ダッシュボードに支払い方法を移行する

ダッシュボードでさまざまな Checkout 支払い方法を有効にします。

ページをコピー

実装を変更して、ダッシュボードから支払い方法の設定を取得することで、Stripe では、チェックアウトの際に選択された通貨や、最高取引金額などの支払い方法の制限に応じて対応する支払い方法がすべて表示されます。また Stripe では、顧客の場所や使用通貨に基づいて、その顧客に最も関連性が高い支払い方法も提示されます。

決済フローページでは、顧客の地域で購入完了率が向上すると認識されている支払い方法を優先的に表示し、優先度の支払い方法はオーバーフローメニューの下に隠れた状態となります。決済フローでは、顧客の地域と通貨で一般に使用される複数の支払い方法が表示されます。ただし顧客は、オーバーフローメニューから別の支払い方法を選択することもできます。

組み込みを更新する

payment_method_types を指定する既存の Stripe Checkout の実装である場合、このパラメータを削除して、支払い方法の設定をダッシュボードに移行する必要があります。実装からパラメーターを削除すると、カードやウォレットなどの一部の支払い方法は自動的に有効になります。currency パラメーターにより、購入セッションの際に顧客に提示する支払い方法が制限されます。

警告

組み込みをアップグレードすると、銀行のリダイレクトなど、組み込みのデフォルト以外の支払い方法が当初は無効になります。Checkout の組み込みに支払い方法を追加した場合は、ダッシュボードの支払い方法設定ページに移動して、その支払い方法を有効に戻す必要があります。

server.rb
Ruby
Stripe::Checkout::Session.create({ line_items: [ { price_data: { currency: 'eur', product_data: {name: 'T-shirt'}, unit_amount: 2000, }, quantity: 1, }, ], mode: 'payment', # Remove the payment_method_types parameter to manage payment methods in the Dashboard payment_method_types: ['card'], success_url: 'https://example.com/success', })

ダッシュボードで使用可能な支払い方法を表示する

支払い方法の設定を表示すると、現在受け付けている支払い方法を確認できます。このリストには、カードなど、デフォルトで有効になっている支払い方法が記載されています。これらの支払い方法の費用は、カードと同じかそれより少なく、すぐに売上として処理されます。

Payment methods

By default, Stripe enables cards and other common payment methods. You can turn individual payment methods on or off in the Stripe Dashboard. In Checkout, Stripe evaluates the currency and any restrictions, then dynamically presents the supported payment methods to the customer.

To see how your payment methods appear to customers, enter a transaction ID or set an order amount and currency in the Dashboard.

You can enable Apple Pay and Google Pay in your payment methods settings. By default, Apple Pay is enabled and Google Pay is disabled. However, in some cases Stripe filters them out even when they’re enabled. We filter Google Pay if you enable automatic tax without collecting a shipping address.

Checkout’s Stripe-hosted pages don’t need integration changes to enable Apple Pay or Google Pay. Stripe handles these payments the same way as other card payments.

組み込みで支払い方法を追加または削除する

ダッシュボードの支払い方法設定ページでは、使用可能な支払い方法を確認して、組み込みで使用する新しい支払い方法を有効化できます。

一部の支払い方法は、有効にするを選択するだけでオンにできます。ただし、オンにするために追加の手順が必要な支払い方法もあります。そのようなケースでは、設定や規約を確認するというボタンが表示されます。

ビジネスに適した支払い方法を確認するには、支払い方法ガイドをご覧ください。

(推奨) 遅延通知型の支払い方法を処理する

導入する支払い方法の種類によっては、支払いの確認までに 2 〜 14 日の遅延が発生する場合があります。Checkout のシステムを利用して注文を自動的にフルフィルメントするために Webhook を設定した場合、遅延通知型の支払い方法を初めて追加する際にコードを更新する必要があります。

注意

This step is only required if you plan to use any of the following payment methods: Bacs Direct Debit, Bank transfers, Boleto, Canadian pre-authorized debits, Konbini, OXXO, Pay by Bank, SEPA Direct Debit, SOFORT, or ACH Direct Debit.

遅延通知型の支払い方法で支払いを受け取る場合、売上はすぐには利用可能になりません。売上の処理までに数日かかることがあるため、売上がアカウントで利用可能になるまで注文のフルフィルメントを保留する必要があります。支払いが成功すると、基本となる PaymentIntent のステータスが processing から succeeded に変わります。

以下の Checkout イベントを処理する必要があります。

イベント名説明次のステップ
checkout.session.completed顧客が Checkout フォームを送信して、デビット支払いのオーソリを正常に完了しました。支払いが成功するか、失敗するかの結果を待ちます。
checkout.session.async_payment_succeeded顧客の支払いが成功しました。顧客の購入商品またはサービスのフルフィルメントを行います。
checkout.session.async_payment_failed何らかの理由により支払いが拒否されたか、失敗しました。Contact the customer through email and request that they place a new order.

これらのイベントすべてに Checkout Session (Checkout セッション) オブジェクトが含まれます。

イベントハンドラーを更新して、注文のフルフィルメントを実行します。

Ruby
# Set your secret key. Remember to switch to your live secret key in production. # See your keys here: https://dashboard.stripe.com/apikeys Stripe.api_key =
'sk_test_BQokikJOvBiI2HlWgH4olfQ2'
# You can find your endpoint's secret in the output of the `stripe listen` # command you ran earlier endpoint_secret = 'whsec_...' post '/webhook' do event = nil # Verify webhook signature and extract the event # See https://stripe.com/docs/webhooks#verify-events for more information. begin sig_header = request.env['HTTP_STRIPE_SIGNATURE'] payload = request.body.read event = Stripe::Webhook.construct_event(payload, sig_header, endpoint_secret) rescue JSON::ParserError => e # Invalid payload return status 400 rescue Stripe::SignatureVerificationError => e # Invalid signature return status 400 end case event['type'] if event['type'] == 'checkout.session.completed' checkout_session = event['data']['object'] fulfill_order(checkout_session) end when 'checkout.session.completed' checkout_session = event['data']['object'] # Save an order in your database, marked as 'awaiting payment' create_order(checkout_session) # Check if the order is already paid (for example, from a card payment) # # A delayed notification payment will have an `unpaid` status, as # you're still waiting for funds to be transferred from the customer's # account. if checkout_session.payment_status == 'paid' fulfill_order(checkout_session) end when 'checkout.session.async_payment_succeeded' checkout_session = event['data']['object'] # Fulfill the purchase... fulfill_order(checkout_session) when 'checkout.session.async_payment_failed' session = event['data']['object'] # Send an email to the customer asking them to retry their order email_customer_about_failed_payment(checkout_session) end status 200 end def fulfill_order(checkout_session) # TODO: fill in with your own logic puts "Fulfilling order for #{checkout_session.inspect}" end def create_order(checkout_session) # TODO: fill in with your own logic puts "Creating order for #{checkout_session.inspect}" end def email_customer_about_failed_payment(checkout_session) # TODO: fill in with your own logic puts "Emailing customer about payment failure for: #{checkout_session.inspect}" end

テスト

stripe listen の実行が続いていることを確認します。前のステップで行ったように、テストユーザーとして Checkout を実行します。イベントハンドラーが checkout.session.completed イベントを受信し、イベントが正常に処理されています。

これですべてのステップを完了しました。いつでも本番環境に移行する準備ができています。

組み込みをテストする

カード番号シナリオテスト方法
カード支払いは成功し、認証は必要とされません。クレジットカード番号と、任意の有効期限、セキュリティコード、郵便番号を使用してクレジットカードフォームに入力します。
カード支払いには認証が必要です。クレジットカード番号と、任意の有効期限、セキュリティコード、郵便番号を使用してクレジットカードフォームに入力します。
カードは、insufficient_funds などの拒否コードで拒否されます。クレジットカード番号と、任意の有効期限、セキュリティコード、郵便番号を使用してクレジットカードフォームに入力します。
UnionPay カードは、13 ~ 19 桁の可変長です。クレジットカード番号と、任意の有効期限、セキュリティコード、郵便番号を使用してクレジットカードフォームに入力します。

実装内容をテストするためのその他の情報については、テストをご覧ください。

このページはお役に立ちましたか。
はいいいえ
お困りのことがございましたら 、サポートにお問い合わせください。
早期アクセスプログラムにご参加ください。
変更ログをご覧ください。
ご不明な点がございましたら、お問い合わせください。
LLM ですか?llms.txt を読んでください。
Powered by Markdoc