コンテンツにスキップ
アカウントを作成
または
サインイン
Stripe ドキュメントのロゴ
/
AI に質問する
アカウントを作成
サインイン
始める
支払い
売上
プラットフォームおよびマーケットプレイス
資金管理
開発者向けリソース
概要
Stripe Payments について
構築済みのシステムをアップグレード
支払いの分析
オンライン決済
概要ユースケースを見つけるManaged Payments
Payment Links を使用する
決済ページを構築
高度なシステムを構築
アプリ内実装を構築
決済手段
決済手段を追加
    概要
    支払い方法の導入オプション
    ダッシュボードで支払い方法を管理
    決済手段のタイプ
    カード
    Stripe 残高で支払う
    仮想通貨
    銀行口座引き落とし
    銀行へのリダイレクト
    銀行振込
    クレジットトランスファー (Sources)
    後払い
    リアルタイム決済
      Pay by Bank
      PayNow
      PayTo
      Pix
      PromptPay
      Swish
        決済を受け付ける
    店舗支払い
    ウォレット
    国ごとに現地の支払い方法を有効化
    カスタムの決済手段
決済手段を管理
Link による購入の迅速化
支払いインターフェイス
Payment Links
Checkout
Web Elements
アプリ内 Elements
決済シナリオ
複数の通貨を扱う
カスタムの決済フロー
柔軟なアクワイアリング
オーケストレーション
店頭支払い
端末
決済にとどまらない機能
会社を設立する
仮想通貨
Financial Connections
Climate
不正利用について
Radar の不正防止
不審請求の申請の管理
本人確認
ホーム支払いAdd payment methodsReal-time paymentsSwish

注

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

Swish 決済招待のみ

スウェーデンで広く普及している支払い方法である Swish を受け付ける方法をご紹介します。

Swish は、スウェーデンで使用されている 1 回限りの使用の支払い方法です。顧客は Swish モバイルアプリとスウェーデンの BankID モバイルアプリを使用して、支払いの認証と承認を行うことができます。

支払いが成功したか失敗したかに関する即時通知を受け取ります。

必要な通知

Swish の規則に準拠するには、顧客が Swish 支払いを承認する前に、決済フローの画面に以下のテキストを表示する必要があります。

  • 英語の場合: “Stripe Technology Europe Limited (“Stripe”) has acquired the claim for payment. Therefore your payment will be made to Stripe.”
  • スウェーデン語の場合: “Stripe Technology Europe Limited (“Stripe”) har övertagit fordran på betalning. Din betalning görs därför till Stripe.”
  • 他の言語の場合、上記の翻訳文。

Checkout や Payment Element、Stripe がホストする決済フォームや UI コンポーネントから Swish を導入する場合、Stripe はこの通知を表示します。

Stripe を設定する
サーバー側

アプリケーションから Stripe API にアクセスするには、Stripe の公式ライブラリを使用します。

Command Line
Ruby
Python
PHP
Java
Node
Go
.NET
No results
# Available as a gem sudo gem install stripe
Gemfile
Ruby
Python
PHP
Java
Node
Go
.NET
No results
# If you use bundler, you can add this line to your Gemfile gem 'stripe'

PaymentIntent を作成する
サーバー側

PaymentIntent (支払いインテント) は、顧客から支払いを回収する意図を表すオブジェクトであり、支払いプロセスのライフサイクルの各段階を追跡します。まず、サーバーで PaymentIntent を作成し、回収する金額と通貨を指定します。すでに Payment Intents API を使用した実装がある場合は、swish を PaymentIntent の支払い方法タイプのリストに追加します。

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node
Go
.NET
No results
curl https://api.stripe.com/v1/payment_intents \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d amount=6000 \ -d currency=sek \ -d "payment_method_types[]"=swish \ -d "payment_method_data[type]"=swish \ -d "payment_method_options[swish][reference]"=Order-123

注

Swish アプリケーションで顧客に表示される注文参照情報を設定できます。

レスポンス

{ "id": "pi_12345", "amount": 6000, "client_secret": "pi_12345_secret_abcdef", "currency": "sek", "payment_method": "pm_12345", "payment_method_types": [ "swish" ], "payment_method_options": { "swish": { "reference": "Order-123", }, }, "status": "requires_confirmation" }

client secret を取得する

PaymentIntent には、client secret が含まれています。これは、支払いプロセスを安全に完了するためにクライアント側で使用されます。client secret をクライアント側に渡す際は、いくつかの方法を使用できます。

ブラウザーの fetch 関数を使用して、サーバーのエンドポイントから client secret を取得します。この方法は、クライアント側が 1 ページのアプリケーションで、特に React などの最新のフロントエンドフレームワークで構築されている場合に最適です。client secret を処理するサーバーのエンドポイントを作成します。

main.rb
Ruby
Python
PHP
Java
Node
Go
.NET
No results
get '/secret' do intent = # ... Create or retrieve the PaymentIntent {client_secret: intent.client_secret}.to_json end

その後、クライアント側で JavaScript を使用して client secret を取得します。

(async () => { const response = await fetch('/secret'); const {client_secret: clientSecret} = await response.json(); // Render the form using the clientSecret })();

PaymentIntent を確定する

PaymentIntent を確定するには、ステップ 2 の PaymentIntent の id を使用します。これにより、指定された 支払い方法で顧客が支払うことを宣言します。PaymentIntent が確定されると、支払いが開始されます。return_url は、ユーザーが支払いを完了した後に Stripe がユーザーをリダイレクトする場所を示します。

Payment Intent を確定して、Swish 決済を開始します。顧客が支払いを完了した後にリダイレクトされる return_url を指定します。

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node
Go
.NET
No results
curl https://api.stripe.com/v1/payment_intents/
{{PAYMENT_INTENT_ID}}
/confirm
\ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ --data-urlencode return_url="https://example.com/checkout/complete"

レスポンス

{ "id": "pi_12345", "amount": 6000, "currency": "sek", "payment_method": "pm_12345", "next_action": { "swish_handle_redirect_or_display_qr_code": { "hosted_instructions_url": "https://stripe.com/hiu-pi_123", "qr_code": { "data": "abc123", "image_url_png": "https://qr.stripe.com/qr_123.png", "image_url_svg": "https://qr.stripe.com/qr_123.svg" } }, "type": "swish_handle_redirect_or_display_qr_code" }, "payment_method_types": [ "swish" ], "payment_method_options": { "swish": { "reference": "Order-123", }, }, "status": "requires_action" }

支払いを承認するには、顧客を next_action[swish_handle_redirect_or_display_qr_code][hosted_instructions_url] フィールドの URL にリダイレクトするか、このページを iframe に読み込みます。このページには、Swish アプリにリダイレクトする QR コードとボタンの両方が表示されます。

  • デスクトップユーザーは、Swish アプリを使用して QR コードをスキャンして、支払いを承認することができます。

  • モバイルデバイスのユーザーはボタンをクリックすると Swish アプリにリダイレクトされるので、そこで支払いを承認できます。

注

顧客が 3 分以内に Swish アプリで支払いを承認しない場合、支払いは失敗になり、Payment Intent は requires_payment_method に移行します。

注文のフルフィルメントを実行する
サーバー側

Webhook などを使用して、注文のフルフィルメントを処理します。顧客が支払いを完了すると、PaymentIntent のステータスが succeeded に移行し、payment_intent.succeeded の Webhook イベントを送信します。顧客が支払いを行わない場合、PaymentIntent は、payment_intent.payment_failed の Webhook イベントを送信し、requires_payment_method ステータスに戻ります。

オプション代替のオーソリ方法を使用する

オプション支払い後のイベントを処理する

オプション実装内容をテストする

オプションキャンセル

失敗した支払い

Swish は複数のデータポイントを使用して、取引を拒否する状況を判断します (たとえば、顧客の銀行口座に十分な残高がない場合や、顧客がアプリでキャンセルをクリックした場合など)。

このケースでは、PaymentMethod は切り離され、PaymentIntent オブジェクトのステータスは自動的に requires_payment_method に移行します。

支払いが拒否された場合を除き、Swish の PaymentIntent (支払いインテント) が requires_action ステータスである場合、顧客は 3 分以内に支払いを完了する必要があります。3 分経過してもアクションが行われない場合、PaymentMethod (支払い方法) の関連付けが解除され、PaymentIntent オブジェクトのステータスは自動的に requires_payment_method に移行します。

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