コンテンツにスキップ
アカウントを作成またはサインイン
Stripe ドキュメントのロゴ
/
AI に質問する
アカウントを作成サインイン
導入方法
決済管理
売上管理
プラットフォームとマーケットプレイス
資金管理
開発者向けリソース
API & SDKヘルプ
概要
Stripe Payments について
構築済みのシステムをアップグレード
決済分析
オンライン決済
概要ユースケースを見つけるManaged Payments を使用する
Payment Links を使用する
事前構築済みの決済ページを使用する
Elements を使用したカスタム統合の構築
アプリ内実装を構築
    概要
    Payment Sheet
    Payment Element
    Address Element
    アプリ内購入のリンク
    設定で決済手段を管理する
    Confirmation Tokens に移行
    アメリカとカナダのカード
対面決済
Terminal
決済手段
決済手段を追加
決済手段を管理
Link による購入の迅速化
決済シナリオ
複数の通貨を扱う
カスタムの決済フロー
柔軟なアクワイアリング
オーケストレーション
決済以外の機能
会社を設立する
暗号資産
エージェント型コマース
Financial Connections
Climate
不正利用について
Radar の不正防止
不審請求の申請の管理
本人確認
アメリカ
日本語
ホーム決済管理Build an in-app integration

Confirmation Tokens に移行

PaymentMethod の代わりに ConfirmationToken を使用して決済を処理する

このガイドでは、モバイル統合でレガシーの PaymentMethod から ConfirmationToken に移行する方法を説明します。

PaymentMethod の代わりに ConfirmationToken オブジェクトを使用して、以下を実行できます。

  • サーバー側のコードをシンプルに: インテントを確定するときに、mandate_data を手動で作成したり、return_url と shipping を渡したりする必要はありません。
  • データの処理: 配送先情報とその他の決済コンテキストが自動的に含まれます。
機能PaymentMethod (レガシー)ConfirmationToken
支払いの確定
将来の使用を設定する手動自動
配送先情報手動自動
同意書データ手動自動
戻り URL手動自動
サーバー側のセキュリティコードの再収集

はじめに

このガイドは、レガシーの PaymentMethod を使用した既存のモバイル統合があることを前提としています。新しい統合を構築する場合は、デフォルトで ConfirmationTokens を使用する 決済の受け付け ガイドに従ってください。

クライアントコードを更新する
クライアント側

決済の詳細にアクセスして使用するには、confirmationToken を受信するコールバックを渡します。

let intentConfig = PaymentSheet.IntentConfiguration( mode: .payment(amount: 1099, currency: "USD") ) { paymentMethod, shouldSavePaymentMethod, intentCreationCallback in // Make a request to your server, passing paymentMethod.stripeId ) { confirmationToken, intentCreationCallback in // Make a request to your server to create a PaymentIntent and return its client secret. // Optionally pass confirmationToken.stripeId if doing server-side confirmation. let myServerResponse: Result<String, Error> = ... switch myServerResponse { case .success(let clientSecret): intentCreationCallback(.success(clientSecret)) case .failure(let error): intentCreationCallback(.failure(error)) } }

サーバーコードを更新する
サーバー側

支払いを受け付けるときに、PaymentIntent または SetupIntent を確認する場所を選択できます。

  • クライアントサイドでの確認: サーバーが未確認の Intent を作成し、その client_secret をアプリに返します。その後、モバイル SDK が Intent を直接 Stripe に確認します。

  • サーバーサイドでの確認: アプリが ConfirmationToken をサーバーに送信すると、サーバー側で confirm: true を設定して、Intent の作成と確認を 1 回の API 呼び出しで行います。確認処理はすべてサーバー上で行われ、Stripe API を呼び出す際に支払いフローをより細かく制御できます。

payment_method、return_url、mandate_data、shipping を除外して、PaymentIntent または SetupIntent を作成します。モバイル SDK は、ConfirmationToken を使用してクライアント側で確定を処理します。

app.post('/create-intent', async (req, res) => { try { const args = { amount: 1099, currency: 'usd', automatic_payment_methods: {enabled: true}, // No longer needed - ConfirmationToken provides these automatically payment_method: req.body.paymentMethodId, return_url: 'your-app://stripe-redirect', mandate_data: { customer_acceptance: { type: "online", online: { ip_address: req.ip, user_agent: req.get("user-agent"), }, }, }, shipping: { name: 'Jenny Rosen', address: { line1: '1234 Main Street', city: 'San Francisco', state: 'CA', postal_code: '94111', country: 'US', }, }, }; const intent = await stripe.paymentIntents.create(args); res.json({ client_secret: intent.client_secret }); } catch (err) { res.status(err.statusCode).json({ error: err.message }); } });

確定時に PaymentIntent または SetupIntent に直接指定されるパラメーター (shipping など) は、ConfirmationToken の対応するプロパティを上書きします。

注

以前に PaymentMethod オブジェクトを検査していた場合、ConfirmationToken の paymentMethodPreview プロパティを使用して決済手段の詳細にアクセスできるようになりました。

参照情報

  • 決済を受け付ける
  • サーバーで決済を確定
  • ConfirmationToken API リファレンス
このページはお役に立ちましたか。
はいいいえ
  • お困りのことがございましたら 、サポートにお問い合わせください。
  • 変更ログをご覧ください。
  • ご不明な点がございましたら、お問い合わせください。
  • LLM ですか?llms.txt を読んでください。
  • Powered by Markdoc