コンテンツにスキップ
アカウント作成/サインイン
Stripe ドキュメントのロゴ
/
AI に質問する
アカウントを作成サインイン
導入方法
決済管理
売上管理
プラットフォームとマーケットプレイス
資金管理
開発者向けリソース
API & SDKヘルプ
概要
Stripe Payments について
構築済みのシステムをアップグレード
決済分析
オンライン決済
概要ユースケースを見つけるManaged Payments を使用する
Payment Links を使用する
事前構築済みの決済ページを使用する
Elements を使用したカスタム統合の構築
アプリ内実装を構築
対面決済
Terminal
    概要
    対面支払いを受け付ける
    利用可能な国
    導入方法の設計
    リーダーを選択
    導入方法の設計
    クイックスタート
    サンプルアプリケーション
    テスト
    Terminal の設定
    実装方法を設定する
    Connect での複数の売り手への支払い
    リーダーに接続する
    決済の受け付け
    カード支払いを回収
    追加の決済手段
    オフライン決済を受け付ける
    通信販売/電話販売の決済
    地域的な考慮事項
    購入時
    チップを回収する
    将来の使用に備えて支払い情報を収集して保存する
      請求せずに直接保存する
      決済後の保存
    柔軟なオーソリ
    決済後
    返金の取引
    領収書の提供
    Checkout のカスタマイズ
    カートの表示
    画面上の入力を収集
    スワイプで取得されたデータを収集
    NFC 機器のタップによって取得したデータを収集
    Apps on Devices
    リーダーを管理
    リーダーの注文、返品、交換
    リーダーの登録
    場所とゾーンの管理
    リーダーの設定
    リーダーを監視する
    リファレンス
    API リファレンス
    モバイルリーダー
    スマートリーダー
    Tap to Pay 対応リーダー
    SDK 移行ガイド
    デプロイのチェックリスト
    Stripe Terminal リーダー製品シート
決済手段
決済手段を追加
決済手段を管理
Link による購入の迅速化
決済シナリオ
複数の通貨を扱う
カスタムの決済フロー
柔軟なアクワイアリング
オーケストレーション
決済以外の機能
会社を設立する
暗号資産
エージェント型コマース
Financial Connections
Climate
不正利用について
Radar の不正防止
不審請求の申請の管理
本人確認
アメリカ
日本語
ホーム決済管理TerminalCollect and save payment details for future use

メモ

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

請求せずに直接保存

提示されたカードの詳細を収集して、オンライン利用のために保存します。

SetupIntents を使用して、カードに請求することなくカードまたはモバイルウォレットの詳細を収集できます。SetupIntent で card_present の PaymentMethod を直接保存することはできませんが、ほとんどの場合、同じカードを表す再利用可能な generated_card の PaymentMethod を作成できます。顧客の視点からは、これらは同じ決済手段に捉えられます。

警告

generated_card PaymentMethod を使用して行われた支払いはすべて、カード非提示 (CNP) 取引であり、カード提示取引で利用できる機能 (ライアビリティシフトや 料金体系など) はこれらの支払いには適用されません。

SetupIntents を使用して、Visa、Mastercard、American Express、Discover、およびブランド提携している Interac、eftpos、girocard のカード詳細を収集することができます。ただし、ブランド提携している Interac カードはリーダーに挿入する必要があります。つまり、タッチ決済ではサポートされていません。

SetupIntents は単一ブランドの Interac、eftpos、girocard をサポートしていません。

SetupIntents を使用してStripe Terminal でカードを保存するには、次のようにする必要があります。

  1. Customer オブジェクトを作成または取得します。
  2. プロセスを追跡する SetupIntent (支払い方法設定インテント) オブジェクトを作成します。
  3. 顧客の同意を得たら、決済手段を収集し、Stripe に詳細を送信します。

メモ

この機能の顧客の同意モデルを変更し、レガシーの customer_consent_collected パラメーターの代わりに allow_redisplay パラメーターを必須にしました。実装で customer_consent_collected を使用している場合は、allow_redisplay を使用するように実装を更新する必要があります。この更新は、2025 年 3 月 31 日に React Native 以外のユーザーには必須になり、React Native ユーザーには 2025 年 9 月 30 日に必須になりました。ガイダンスについては、変更ログエントリーをご覧ください。

メモ

SDK のバージョン 5.0.0 では、収集する統合ステップと確定する統合ステップが 1 つの processSetupIntent ステップに統合されました。

顧客を作成または取得する

Stripe で保存したカードに請求するには、カードを Customer に関連付ける必要があります。

確定前に、SetupIntent に顧客を含めると、入力した Customer オブジェクトに、生成されたカードの決済手段が自動的に関連付けられます。

以下のコードをサーバーに含めて、新しい Customer を作成します。

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl -X POST https://api.stripe.com/v1/customers \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"

SetupIntent を作成する

メモ

SetupIntent を作成する際に顧客 ID を指定すると、セットアップに成功したときに Customer にカード決済手段がアタッチされます。顧客 ID を提供しない場合は、別の呼び出しで決済手段をアタッチする必要があります。

SetupIntent は、将来の支払いに備えて顧客の決済手段を設定する意図を示すオブジェクトです。SetupIntent は、この設定プロセスの各ステップを追跡します。Terminal の場合、このプロセスにはカード保有者の同意の収集と記録が含まれます。

SDK リファレンス

  • SetupIntentParameters (Android)

SetupIntent を作成して、customer、onBehalfOf (Connect の場合のみ)、usage の各パラメーターを指定できます。

PaymentActivity.kt
Kotlin
Java
No results
val params = SetupIntentParameters.Builder() .setCustomer(
"{{CUSTOMER_ID}}"
) .build() Terminal.getInstance().createSetupIntent( params, object : SetupIntentCallback { override fun onSuccess(setupIntent: SetupIntent) { // Placeholder for handling successful operation } override fun onFailure(e: TerminalException) { // Placeholder for handling exception } } )

決済の開始に必要な情報をアプリですぐに利用できない場合は、サーバーで SetupIntent を作成できます。クライアントシークレットを使用して retrieveSetupIntent を呼び出し、取得した SetupIntent を使用して processSetupIntent を呼び出します。

保存するために決済手段を収集する

SDK リファレンス

  • retrieveSetupIntent (Android)
  • processSetupIntent (Android)

SetupIntent を作成したら、SDK を使用して決済手段を収集し、顧客の同意を得ます。allowRedisplay を always または limited にして、顧客の決済フローで決済手段が表示される頻度を指定します。

メモ

顧客からの同意を、文書またはアプリケーションのチェックボックスを使用して収集します。ご登録の地域で適用されるすべての法律、規則、および規制に準拠する必要があります。

SetupIntent を処理 するには、リーダーに接続されていることを確認してください。アプリが processSetupIntent を呼び出した後、接続されたリーダーはカードを待機します。

PaymentActivity.kt
Kotlin
Java
No results
val config = CollectSetupIntentConfiguration.Builder() .build() val cancelable = Terminal.getInstance().processSetupIntent( setupIntent, AllowRedisplay.ALWAYS, config, object : SetupIntentCallback { override fun onSuccess(setupIntent: SetupIntent) { // Placeholder for handling successful operation } override fun onFailure(e: TerminalException) { // Placeholder for handling exception } } )

この方法では、接続されたカードリーダーを使用して支払い方法の暗号化データを収集し、その暗号化データを SetupIntent に関連付けます。

注意

支払い方法の収集はローカルで行われ、次のステップまで SetupIntent オブジェクトのオーソリや更新は必要ありません。

収集をキャンセルする

プログラムによるキャンセル

SDK から返される Cancelable オブジェクトを使用して、決済手段の収集をキャンセルできます。

顧客によるキャンセル

CustomerCancellation はデフォルトで有効になっているため、スマートリーダーユーザーにはキャンセルボタンが表示されます。キャンセルボタンをタップすると、アクティブな取引がキャンセルされます。取引でこの動作を切り替えるには、setCustomerCancellation を使用します。

PaymentActivity.kt
Kotlin
Java
No results
Terminal.getInstance().collectSetupIntentPaymentMethod( setupIntent, AllowRedisplay.ALWAYS, SetupIntentConfiguration.Builder() .build(), object : SetupIntentCallback { override fun onSuccess(setupIntent: SetupIntent) { // Placeholder for handling successful operation } override fun onFailure(e: TerminalException) { // Placeholder for handling exception } } )

Stripe に決済手段の詳細を送信する

前回の processSetupIntent の呼び出しは、 確定 を処理するため、それ以上のアクションは必要ありません。

設定が成功すると、SetupIntent の status プロパティの succeeded 値が SetupAttempt.payment_method_details.card_present.generated_card とともに返されます。これは、オンライン決済に利用できる再利用可能な card の決済手段です。

メモ

SetupIntent.payment_method は、物理的に存在するカードのトークン化を表す card_present PaymentMethod であり、オンラインでは請求できません。今後の支払いでは、代わりに生成されたカードが使用されます。顧客側から見ると、同じ決済手段です。

generated_card の決済手段が、SetupIntent の作成時に指定した顧客に自動的に関連付けられます。SetupIntent の latest_attempt プロパティを展開することで、generated_card の決済手段を取得できます。必ず generated_card の値を確認してください。生成されたカードを使用できない決済手段では、この値が空になるためです。

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl -G https://api.stripe.com/v1/setup_intents/
{{SETUP_INTENT_ID}}
\ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "expand[]"=latest_attempt

別の方法として、顧客に関連付けられている支払い方法のリストを取得することで、関連付けられた支払い方法を入手することもできます。

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl -G https://api.stripe.com/v1/customers/
{{CUSTOMER_ID}}
/payment_methods
\ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d type=card

SetupIntent の作成時に顧客を指定しなかった場合は、別個のコールで generated_card を Customer オブジェクトに関連付けることができます。

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/payment_methods/
{{PAYMENT_METHOD_ID}}
/attach
\ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d customer=
"{{CUSTOMER_ID}}"

設定に失敗したら、返されたエラーを調べて原因を特定します。たとえば、顧客から同意を収集できなかったり、Stripe に顧客の同意を通知できなったりした場合、エラーが発生します。

モバイルウォレットに関する考慮事項

保存されたモバイルウォレットは、将来のサブスクリプションや、顧客の代理として開始するその他の支払いなど、off_session の支払いにのみ使用できます。デジタルウォレットによる決済手段を保存する際、generated_card には使用上の特定の考慮事項を示す allow_redisplay=limited が設定されます。

モバイルウォレットに請求する際は、PaymentIntent の確定時に必ず off_session=true を渡します。顧客が決済フローを実施している場合は、代わりに Apple Pay と Google Pay の連携を使用して、決済手段の提示を再度求めます。

法令遵守

You’re responsible for your compliance with all applicable laws, regulations, and network rules when saving a customer’s payment details. For example, the European Data Protection Board has issued guidance regarding saving payment details. These requirements generally apply if you want to save your customer’s payment method for future use. This applies in situations such as presenting a customer’s payment method to them in the checkout flow for a future purchase, or charging them when they’re not actively using your website or app, placing a MOTO order, or in your store.

Add terms to your checkout flow that state how you plan to save payment method details and allow customers to opt in. If you plan to charge the customer while they’re not actively checking out, make sure (at a minimum) that your terms also cover the following:

  • 指定された取引で顧客の代理として単独の支払いまたは一連の支払いを開始することをお客様に許可するという、顧客からお客様への同意
  • 予期される支払い時期と支払い頻度 (たとえば、請求が予定されている分割払いまたはサブスクリプションの決済なのか、あるいは予定されていないトップアップなのか)。
  • 決済金額の決定方法。
  • サブスクリプションサービスに使用される支払い方法を設定する場合は、キャンセルに関するポリシー。

これらの規約に関する顧客の書面による同意の記録を必ず保管してください。

When you save a payment method, you can only use it for the specific purpose that you included in your terms. If you want to charge customers when they’re not actively checking out and also save the customer’s payment method to present to them as a saved payment method for future purchases, you must explicitly collect consent from the customer. One way to do so is with a “Save my payment method for future use” checkbox.

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